Class: RGen::MetamodelBuilder::MetamodelDescription

Inherits:
Object
  • Object
show all
Defined in:
lib/rgen/metamodel_builder/metamodel_description.rb

Direct Known Subclasses

AttributeDescription, ReferenceDescription

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(props) ⇒ MetamodelDescription

Returns a new instance of MetamodelDescription.



21
22
23
# File 'lib/rgen/metamodel_builder/metamodel_description.rb', line 21

def initialize(props)
	@props = props.dup
end

Instance Attribute Details

#etypeObject (readonly)

Returns the value of attribute etype.



9
10
11
# File 'lib/rgen/metamodel_builder/metamodel_description.rb', line 9

def etype
  @etype
end

#impl_typeObject (readonly)

Returns the value of attribute impl_type.



9
10
11
# File 'lib/rgen/metamodel_builder/metamodel_description.rb', line 9

def impl_type
  @impl_type
end

Class Method Details

.default_value(prop) ⇒ Object



11
12
13
14
# File 'lib/rgen/metamodel_builder/metamodel_description.rb', line 11

def self.default_value(prop)
	checkProperty(prop)
	defaultValues[prop]
end

.has_default?(prop) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
19
# File 'lib/rgen/metamodel_builder/metamodel_description.rb', line 16

def self.has_default?(prop)
	checkProperty(prop)
	defaultValues.has_key?(prop)
end

Instance Method Details

#annotationsObject



30
31
32
# File 'lib/rgen/metamodel_builder/metamodel_description.rb', line 30

def annotations
    @annotations ||= []
end

#many?Boolean

Returns:

  • (Boolean)


34
35
36
# File 'lib/rgen/metamodel_builder/metamodel_description.rb', line 34

def many?
	value(:upperBound) > 1 || value(:upperBound) == -1
end

#value(prop) ⇒ Object



25
26
27
28
# File 'lib/rgen/metamodel_builder/metamodel_description.rb', line 25

def value(prop)
	self.class.checkProperty(prop)
	@props[prop]
end