Class: Kapusta::List

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(items) ⇒ List

Returns a new instance of List.



130
131
132
133
# File 'lib/kapusta/ast.rb', line 130

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

Instance Attribute Details

#columnObject

Returns the value of attribute column.



128
129
130
# File 'lib/kapusta/ast.rb', line 128

def column
  @column
end

#itemsObject (readonly)

Returns the value of attribute items.



127
128
129
# File 'lib/kapusta/ast.rb', line 127

def items
  @items
end

#lineObject

Returns the value of attribute line.



128
129
130
# File 'lib/kapusta/ast.rb', line 128

def line
  @line
end

#multiline_sourceObject

Returns the value of attribute multiline_source.



128
129
130
# File 'lib/kapusta/ast.rb', line 128

def multiline_source
  @multiline_source
end

#sigilObject

Returns the value of attribute sigil.



128
129
130
# File 'lib/kapusta/ast.rb', line 128

def sigil
  @sigil
end

Instance Method Details

#empty?Boolean

Returns:

  • (Boolean)


143
144
145
# File 'lib/kapusta/ast.rb', line 143

def empty?
  @items.empty?
end

#headObject



135
136
137
# File 'lib/kapusta/ast.rb', line 135

def head
  @items.first
end

#inspectObject



147
148
149
# File 'lib/kapusta/ast.rb', line 147

def inspect
  "(#{@items.map(&:inspect).join(' ')})"
end

#restObject



139
140
141
# File 'lib/kapusta/ast.rb', line 139

def rest
  @items[1..] || []
end