Class: Expressir::Liquid::Declarations::TypeDrop

Inherits:
Expressir::Liquid::DeclarationDrop show all
Includes:
IdentifierDrop
Defined in:
lib/expressir/liquid/declarations/type_drop.rb

Instance Method Summary collapse

Methods included from IdentifierDrop

#id, #initialize_identifier, #remark_items, #remarks, #source

Methods inherited from ModelElementDrop

#_class, #file, #source

Constructor Details

#initialize(model) ⇒ TypeDrop

Returns a new instance of TypeDrop.



9
10
11
12
13
# File 'lib/expressir/liquid/declarations/type_drop.rb', line 9

def initialize(model)
  @model = model
  initialize_identifier(@model)
  super
end

Instance Method Details

#informal_propositionsObject



27
28
29
30
31
32
33
# File 'lib/expressir/liquid/declarations/type_drop.rb', line 27

def informal_propositions
  return [] unless @model.informal_propositions

  @model.informal_propositions.map do |item|
    ::Expressir::Liquid::Declarations::RemarkItemDrop.new(item)
  end
end

#underlying_typeObject



15
16
17
# File 'lib/expressir/liquid/declarations/type_drop.rb', line 15

def underlying_type
  drop_klass_by_model(@model.underlying_type)
end

#where_rulesObject



19
20
21
22
23
24
25
# File 'lib/expressir/liquid/declarations/type_drop.rb', line 19

def where_rules
  return [] unless @model.where_rules

  @model.where_rules.map do |item|
    ::Expressir::Liquid::Declarations::WhereRuleDrop.new(item)
  end
end