Class: KlassTableAttributeDrop

Inherits:
Liquid::Drop
  • Object
show all
Defined in:
lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb

Constant Summary collapse

LOWER_VALUE_MAPPINGS =
{
  "C" => "0",
  "M" => "1",
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(attr) ⇒ KlassTableAttributeDrop

rubocop:disable Lint/MissingSuper



9
10
11
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 9

def initialize(attr) # rubocop:disable Lint/MissingSuper
  @attr = attr
end

Instance Method Details

#associationObject



44
45
46
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 44

def association
  @attr[:association]
end

#cardinalityObject



33
34
35
36
37
38
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 33

def cardinality
  min = @attr[:cardinality]["min"]
  min = min.nil? ? nil : LOWER_VALUE_MAPPINGS[min]

  "#{min}..#{@attr[:cardinality]['max']}"
end

#definitionObject



40
41
42
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 40

def definition
  @attr[:definition]
end

#gen_nameObject



64
65
66
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 64

def gen_name
  @attr[:gen_name]
end

#has_association?Boolean

Returns:

  • (Boolean)


48
49
50
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 48

def has_association?
  !!@attr[:association]
end

#idObject



13
14
15
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 13

def id
  @attr[:id]
end

#is_derivedObject



29
30
31
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 29

def is_derived
  @attr[:is_derived]
end

#nameObject



17
18
19
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 17

def name
  @attr[:name]
end

#name_nsObject



56
57
58
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 56

def name_ns
  @attr[:name_ns]
end

#typeObject



21
22
23
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 21

def type
  @attr[:type]
end

#type_nsObject



60
61
62
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 60

def type_ns
  @attr[:type_ns]
end

#upper_klassObject



52
53
54
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 52

def upper_klass
  @attr[:upper_klass]
end

#xmi_idObject



25
26
27
# File 'lib/metanorma/plugin/lutaml/liquid_drops/klass_table_attribute_drop.rb', line 25

def xmi_id
  @attr[:xmi_id]
end