Class: Rley::Syntax::Terminal

Inherits:
GrmSymbol show all
Defined in:
lib/rley/syntax/terminal.rb

Overview

A terminal symbol represents a class of words in the language defined the grammar.

Direct Known Subclasses

Literal, VerbatimSymbol

Instance Attribute Summary

Attributes inherited from GrmSymbol

#generative, #name

Instance Method Summary collapse

Methods inherited from GrmSymbol

#generative?, #to_s

Constructor Details

#initialize(aName) ⇒ Terminal

Constructor.

Parameters:

  • aName (String)

    The name of the grammar symbol.



11
12
13
14
# File 'lib/rley/syntax/terminal.rb', line 11

def initialize(aName)
  super(aName)
  self.generative = true
end

Instance Method Details

#nullable?false

the empty string. As terminal symbol corresponds to a input token it is by definition non-nullable.

Returns:

  • (false)

    Return true if the symbol derives



24
25
26
# File 'lib/rley/syntax/terminal.rb', line 24

def nullable?() 
  false
end

#terminal?Boolean

Return true iff the symbol is a terminal

Returns:

  • (Boolean)


17
18
19
# File 'lib/rley/syntax/terminal.rb', line 17

def terminal?()
  return true
end