Sha256: 747ddbfb3759ebbf295c1f24942a567e6d0b98f67cef18e148f3b051aad649e7

Contents?: true

Size: 868 Bytes

Versions: 3

Compression:

Stored size: 868 Bytes

Contents

require_relative 'vertex'

module Rley # This module is used as a namespace
  module GFG # This module is used as a namespace
    # Represents a specialized vertex in a grammar flow graph 
    # that is associated to a given non-terminal symbol and
    # that may have in-degree or out-degree > 1
    # Responsibilities (in addition to inherited ones):
    # - Know its related non-terminal symbol
    class NonTerminalVertex < Vertex
        attr_reader :non_terminal
      
      def initialize(aNonTerminal)
        super()
        @non_terminal = aNonTerminal
      end
      
protected

      # Validation method for adding an outgoing edge to the vertex.
      # A start vertex may accept an indegree and outdegree greater than one
      def check_add_edge(anEdge)
        return anEdge
      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/non_terminal_vertex.rb
rley-0.3.01 lib/rley/gfg/non_terminal_vertex.rb
rley-0.3.00 lib/rley/gfg/non_terminal_vertex.rb