class Iface::ValueSet::Pair
Represents a NAME=value pair
This serves as the default class for a NAME key. Use `::create` to instantiate a specialization of this class, if available.
Attributes
name[R]
value[RW]
Public Class Methods
create(name_or_line, value = nil, value_set:)
click to toggle source
# File lib/iface/value_set/pair.rb, line 13 def self.create(name_or_line, value = nil, value_set:) # get name and value if value name = name_or_line.to_s.upcase else match = name_or_line.match(/(^[A-Z0-9_]+?)="?(.*?)"?$/) raise ArgumentError, "Expected pattern NAME=value; got #{name_or_line.inspect}" unless match name = match[1] value = match[2]&.sub(/^"/, '')&.sub(/"$/, '') end # find matching class and instantiate VAR_HANDLERS.fetch(name, self).new(name, value, value_set) end
Public Instance Methods
raw_value()
click to toggle source
# File lib/iface/value_set/pair.rb, line 34 def raw_value @value end
to_s()
click to toggle source
# File lib/iface/value_set/pair.rb, line 38 def to_s "#{name}=\"#{value}\"" end