"{ Package: 'stx:goodies/smaCC' }"
"{ NameSpace: SmaCC }"
SmaCCNonTerminalSymbol subclass:#SmaCCStartingSymbol
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'SmaCC-Parser Generator'
!
SmaCCStartingSymbol comment:'SmaCCStartingSymbol is the starting symbol in the grammar. A grammar can only have one starting symbol, but it can have may different starting item sets.'
!
!SmaCCStartingSymbol methodsFor:'accessing'!
asLRItemSet
| itemSet |
itemSet := SmaCCItemSet new.
productions do:
[:each |
itemSet add: (SmaCCLR1Item
symbol: self
rhs: each
follow: ((SmaCCSymbolSet new)
add: self class empty;
yourself))].
^itemSet
!
compileName
^(productions first at: 1) name
! !
!SmaCCStartingSymbol methodsFor:'public'!
isStartingSymbol
^true
! !
!SmaCCStartingSymbol class methodsFor:'documentation'!
version
^ '$Header: /opt/data/cvs/stx/goodies/smaCC/SmaCC__SmaCCStartingSymbol.st,v 1.1 2006-02-09 21:15:53 vranyj1 Exp $'
!
version_SVN
^ '$Id$'
! !