class TomlRB::InlineTable
Attributes
symbolize_keys[R]
Public Class Methods
new(keyvalue_pairs)
click to toggle source
# File lib/toml-rb/inline_table.rb, line 5 def initialize(keyvalue_pairs) @pairs = keyvalue_pairs @symbolize_keys = false end
Public Instance Methods
accept_visitor(keyvalue)
click to toggle source
# File lib/toml-rb/inline_table.rb, line 30 def accept_visitor(keyvalue) keyvalue.visit_inline_table self end
value(symbolize_keys = false)
click to toggle source
# File lib/toml-rb/inline_table.rb, line 10 def value(symbolize_keys = false) if (@symbolize_keys = symbolize_keys) tuple = ->(kv) { [kv.key.to_sym, visit_value(kv.value)] } else tuple = ->(kv) { [kv.key, visit_value(kv.value)] } end Hash[@pairs.map(&tuple)] end
visit_inline_table(inline_table)
click to toggle source
# File lib/toml-rb/inline_table.rb, line 20 def visit_inline_table(inline_table) result = {} inline_table.value(@symbolize_keys).each do |k, v| result[key k] = visit_value v end result end
Private Instance Methods
key(a_key)
click to toggle source
# File lib/toml-rb/inline_table.rb, line 42 def key(a_key) symbolize_keys ? a_key.to_sym : a_key end
visit_value(a_value)
click to toggle source
# File lib/toml-rb/inline_table.rb, line 36 def visit_value(a_value) return a_value unless a_value.respond_to? :accept_visitor a_value.accept_visitor self end