Sha256: fa782a20373707673c5cb29d0c71fb84cf69da90ec9e3559e40d25a735d34e44

Contents?: true

Size: 723 Bytes

Versions: 3

Compression:

Stored size: 723 Bytes

Contents

require_relative 'edge'

module Rley # This module is used as a namespace
  module GFG # This module is used as a namespace
    # Specialization of an edge in a grammar flow graph
    # that is taken as a consequence of a scan rule.
    # Responsibilities:
    # - To know the successor vertex
    class ScanEdge < Edge
      # The terminal symbol expected from the input stream
      attr_reader :terminal
      
      def initialize(thePredecessor, theSuccessor, aTerminal)
        super(thePredecessor, theSuccessor)
        @terminal = aTerminal
      end
      
      def to_s()
        " -#{terminal}-> #{successor.label}"
      end

    end # class
  end # module
end # module

# End of file

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rley-0.3.04 lib/rley/gfg/scan_edge.rb
rley-0.3.01 lib/rley/gfg/scan_edge.rb
rley-0.3.00 lib/rley/gfg/scan_edge.rb