"{ Package: 'stx:goodies/petitparser' }"
PPParser subclass:#PPLiteralParser
instanceVariableNames:'literal message'
classVariableNames:''
poolDictionaries:''
category:'PetitParser-Parsers'
!
PPLiteralParser comment:'Abstract literal parser that parses some kind of literal type (to be specified by subclasses).
Instance Variables:
literal <Object> The literal object to be parsed.
message <String> The error message to be generated.
'
!
!PPLiteralParser class methodsFor:'instance creation'!
on: anObject
^ self on: anObject message: anObject printString , ' expected'
!
on: anObject message: aString
^ self new initializeOn: anObject message: aString
! !
!PPLiteralParser methodsFor:'accessing'!
literal
"Answer the parsed literal."
^ literal
!
message
"Answer the failure message."
^ message
! !
!PPLiteralParser methodsFor:'initialization'!
initializeOn: anObject message: aString
literal := anObject.
message := aString
! !
!PPLiteralParser methodsFor:'operators'!
caseInsensitive
"Answer a parser that can parse the receiver case-insensitive."
self subclassResponsibility
! !
!PPLiteralParser methodsFor:'printing'!
printNameOn: aStream
super printNameOn: aStream.
aStream nextPutAll: ', '; print: literal
! !
!PPLiteralParser class methodsFor:'documentation'!
version_SVN
^ '$Id: PPLiteralParser.st,v 1.2 2012-01-13 11:22:50 cg Exp $'
! !