Class: Avm::Entries::Entry

Inherits:
Object
  • Object
show all
Defined in:
lib/avm/entries/entry.rb

Instance Method Summary collapse

Instance Method Details

#auto_valueObject



12
13
14
# File 'lib/avm/entries/entry.rb', line 12

def auto_value
  ::Avm::Entries::AutoValues::Entry.new(parent, suffix).value
end

#full_pathObject



16
17
18
# File 'lib/avm/entries/entry.rb', line 16

def full_path
  (parent.path_prefix + suffix_as_array).join('.')
end

#optional_valueObject



20
21
22
# File 'lib/avm/entries/entry.rb', line 20

def optional_value
  context_entry.found? ? context_entry.value : auto_value
end

#readObject



24
25
26
# File 'lib/avm/entries/entry.rb', line 24

def read
  context_entry.value
end

#suffix_as_arrayObject



28
29
30
31
32
33
34
# File 'lib/avm/entries/entry.rb', line 28

def suffix_as_array
  if suffix.is_a?(::Array)
    suffix.dup
  else
    ::EacConfig::PathsHash.parse_entry_key(suffix.to_s)
  end
end

#valueObject



36
37
38
# File 'lib/avm/entries/entry.rb', line 36

def value
  optional_value || read
end

#write(value) ⇒ Object



40
41
42
# File 'lib/avm/entries/entry.rb', line 40

def write(value)
  context_entry.value = value
end