Class: Eatr::Schema::Field

Inherits:
Object
  • Object
show all
Defined in:
lib/eatr/schema.rb

Instance Method Summary collapse

Constructor Details

#initialize(field_attributes) ⇒ Field

Returns a new instance of Field.



4
5
6
# File 'lib/eatr/schema.rb', line 4

def initialize(field_attributes)
  @field_attributes = field_attributes
end

Instance Method Details

#childrenObject



36
37
38
# File 'lib/eatr/schema.rb', line 36

def children
  Array[*@field_attributes['children']].map { |f| Field.new(f) }
end

#node?Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/eatr/schema.rb', line 28

def node?
  @field_attributes.has_key?('node')
end

#required?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'lib/eatr/schema.rb', line 32

def required?
  @field_attributes.fetch('required', true)
end

#typeObject



24
25
26
# File 'lib/eatr/schema.rb', line 24

def type
  @field_attributes['type'].to_s.downcase
end

#valueObject



40
41
42
43
# File 'lib/eatr/schema.rb', line 40

def value
  @field_attributes['value'] ||
    @field_attributes['default']
end