Module: OpenEHR::RM::TypeName
- Defined in:
- lib/openehr/rm/type_name.rb
Class Method Summary collapse
- .class_for(type_name) ⇒ Object
- .subtype_of?(class_or_instance, type_name) ⇒ Boolean
- .type_name_of(class_or_instance) ⇒ Object
Class Method Details
.class_for(type_name) ⇒ Object
13 14 15 |
# File 'lib/openehr/rm/type_name.rb', line 13 def class_for(type_name) registry[normalize(type_name)] end |
.subtype_of?(class_or_instance, type_name) ⇒ Boolean
17 18 19 20 21 22 23 24 25 26 |
# File 'lib/openehr/rm/type_name.rb', line 17 def subtype_of?(class_or_instance, type_name) expected = normalize(type_name) ancestor = class_of(class_or_instance) while ancestor return true if ancestor.name && type_name_of(ancestor) == expected ancestor = ancestor.superclass end false end |
.type_name_of(class_or_instance) ⇒ Object
9 10 11 |
# File 'lib/openehr/rm/type_name.rb', line 9 def type_name_of(class_or_instance) class_of(class_or_instance).name.split('::').last.underscore.upcase end |