class Iface::ValueSet
Represents a generic set of NAME=value pairs
Constants
- VAR_HANDLERS
Public Class Methods
new(io)
click to toggle source
# File lib/iface/value_set.rb, line 8 def initialize(io) @vars = {} io.each_line do |line| edited_line = line.sub(/#.*$/, '').strip next if edited_line.empty? pair = Pair.create(edited_line, value_set: self) @vars[pair.name] = pair end end
Public Instance Methods
[](name)
click to toggle source
# File lib/iface/value_set.rb, line 18 def [](name) @vars[name.upcase]&.value end
[]=(name, value)
click to toggle source
# File lib/iface/value_set.rb, line 22 def []=(name, value) key = name.upcase if @vars.key?(key) @vars[key].value = value else @vars[key] = Pair.create(key, value, value_set: self) end end
fetch_raw(name)
click to toggle source
# File lib/iface/value_set.rb, line 31 def fetch_raw(name) @vars[name.upcase]&.raw_value end
key?(name)
click to toggle source
# File lib/iface/value_set.rb, line 35 def key?(name) @vars.key?(name.upcase) end
Also aliased as: has_key?
to_s()
click to toggle source
# File lib/iface/value_set.rb, line 40 def to_s "#{@vars.values.map(&:to_s).join("\n")}\n" end