Sha256: 9d29143ee970c82473c1f930b939a3a6ff16207bc31597667df94a47f5f7a583

Contents?: true

Size: 688 Bytes

Versions: 10

Compression:

Stored size: 688 Bytes

Contents

require_relative '../ptree/token_range'

module Rley # This module is used as a namespace
  module SPPF # This module is used as a namespace
    # Abstract class. The generalization for all kinds of nodes
    # occurring in a shared packed parse forest.
    class SPPFNode
    
      # A range of indices for tokens matching this node.
      attr_reader(:range)
      
      def initialize(aRange)
        @range = PTree::TokenRange.new(aRange)
      end
      
      # Return the origin (= lower bound of the range 
      # = position of first token matched by the symbol)
      def origin()
        return range.low
      end  
    end # class
  end # module
end # module
# End of file

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
rley-0.4.01 lib/rley/sppf/sppf_node.rb
rley-0.4.00 lib/rley/sppf/sppf_node.rb
rley-0.3.12 lib/rley/sppf/sppf_node.rb
rley-0.3.11 lib/rley/sppf/sppf_node.rb
rley-0.3.10 lib/rley/sppf/sppf_node.rb
rley-0.3.09 lib/rley/sppf/sppf_node.rb
rley-0.3.08 lib/rley/sppf/sppf_node.rb
rley-0.3.07 lib/rley/sppf/sppf_node.rb
rley-0.3.06 lib/rley/sppf/sppf_node.rb
rley-0.3.05 lib/rley/sppf/sppf_node.rb