Class: Kapusta::HashLit

Inherits:
Object
  • Object
show all
Defined in:
lib/kapusta/ast.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(entries) ⇒ HashLit

Returns a new instance of HashLit.



108
109
110
111
# File 'lib/kapusta/ast.rb', line 108

def initialize(entries)
  @entries = entries
  @multiline_source = false
end

Instance Attribute Details

#columnObject

Returns the value of attribute column.



106
107
108
# File 'lib/kapusta/ast.rb', line 106

def column
  @column
end

#entriesObject (readonly)

Returns the value of attribute entries.



105
106
107
# File 'lib/kapusta/ast.rb', line 105

def entries
  @entries
end

#lineObject

Returns the value of attribute line.



106
107
108
# File 'lib/kapusta/ast.rb', line 106

def line
  @line
end

#multiline_sourceObject

Returns the value of attribute multiline_source.



106
107
108
# File 'lib/kapusta/ast.rb', line 106

def multiline_source
  @multiline_source
end

Instance Method Details

#all_sym_keys?Boolean

Returns:

  • (Boolean)


121
122
123
# File 'lib/kapusta/ast.rb', line 121

def all_sym_keys?
  pairs.any? && pairs.all? { |key, _| key.is_a?(Symbol) }
end

#inspectObject



113
114
115
# File 'lib/kapusta/ast.rb', line 113

def inspect
  pairs.map { |k, v| "#{k.inspect} #{v.inspect}" }.then { |p| "{#{p.join(' ')}}" }
end

#pairsObject



117
118
119
# File 'lib/kapusta/ast.rb', line 117

def pairs
  @entries.grep(Array)
end