Class: StringToken

Inherits:
Token show all
Defined in:
lib/rpdf2txt-rockit/token.rb

Instance Attribute Summary

Attributes inherited from Token

#name, #regexp, #skip

Attributes included from Indexable

#factory, #index_number

Instance Method Summary collapse

Methods inherited from Token

#==, #create_tree, #derives_epsilon?, #match, #nonkernel_items, #nonterminal?, #parse_options, #terminal?, #value

Methods included from SourceCodeDumpable

as_code, as_method_named, as_module_method_named, #create_new, indent_lines, name_hash, #new_of_my_type, #parameter_named, #to_compact_src, #to_src_in_module, #type_to_src

Constructor Details

#initialize(name, string = name) ⇒ StringToken

Returns a new instance of StringToken.



161
162
163
164
# File 'lib/rpdf2txt-rockit/token.rb', line 161

def initialize(name, string = name)
  @string = string
  super(name, Regexp.escape(string))
end

Instance Method Details

#hashObject



170
171
172
# File 'lib/rpdf2txt-rockit/token.rb', line 170

def hash
  @hashvalue || (@hashvalue = [self.class, @name, @string].hash)
end

#inspectObject



178
179
180
# File 'lib/rpdf2txt-rockit/token.rb', line 178

def inspect
  @string.inspect
end

#to_sObject



174
175
176
# File 'lib/rpdf2txt-rockit/token.rb', line 174

def to_s
  "#{id} #{@string} #{name.inspect} #{hash}"
end

#to_src(assignToName = nil, nameHash = {}) ⇒ Object



166
167
168
# File 'lib/rpdf2txt-rockit/token.rb', line 166

def to_src(assignToName = nil, nameHash = {})
  assign_to(assignToName, new_of_my_type(name, @string))
end