Class: Language::Atom::Str

Inherits:
Language::Atom show all
Defined in:
lib/language/atom/str.rb

Instance Method Summary collapse

Methods inherited from Language::Atom

#<<, #>>, #absent, #aka, #any, #ignore, #inspect, #maybe, #repeat, #str, #then, #|

Constructor Details

#initialize(string:) ⇒ Str

Returns a new instance of Str.



6
7
8
# File 'lib/language/atom/str.rb', line 6

def initialize(string:)
  @string = string
end

Instance Method Details

#parse(parser) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/language/atom/str.rb', line 10

def parse(parser)
  unless parser.next?(@string)
    raise Parser::Str::NotFound.new(parser, @string)
  end

  parser.consume(@string.size)
end

#to_sObject



18
19
20
# File 'lib/language/atom/str.rb', line 18

def to_s
  "str(#{@string.inspect})"
end