Sha256: b86318a672c58892998d09ac0155e4855a8ea5e632ebae6c368baf8e19ed0b78

Contents?: true

Size: 646 Bytes

Versions: 6

Compression:

Stored size: 646 Bytes

Contents

module Treetop
  module Compiler    
    class AnythingSymbol < AtomicExpression
      def compile(address, builder, parent_expression = nil)
        super
        builder.if__ "index < input_length" do
          builder << 'next_character = index + input[index..-1].match(/\A(.)/um).end(1)'
          assign_result "instantiate_node(#{node_class_name},input, index...next_character)"
          extend_result_with_inline_module
          builder << "@index = next_character"
        end
        builder.else_ do
          builder << 'terminal_parse_failure("any character")'
          assign_result 'nil'
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 3 rubygems

Version Path
skylinecms-3.1.0 vendor/digitpaint/personify/vendor/treetop/lib/treetop/compiler/node_classes/anything_symbol.rb
personify-1.0.0 vendor/treetop/lib/treetop/compiler/node_classes/anything_symbol.rb
westarete-skylinecms-3.0.8.20100329 vendor/digitpaint/personify/vendor/treetop/lib/treetop/compiler/node_classes/anything_symbol.rb
westarete-skylinecms-3.0.8.20100330 vendor/digitpaint/personify/vendor/treetop/lib/treetop/compiler/node_classes/anything_symbol.rb
skylinecms-3.0.8 vendor/digitpaint/personify/vendor/treetop/lib/treetop/compiler/node_classes/anything_symbol.rb
skylinecms-3.0.7 vendor/digitpaint/personify/vendor/treetop/lib/treetop/compiler/node_classes/anything_symbol.rb