author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Mon, 24 Nov 2014 00:09:23 +0000 | |
changeset 421 | 7e08b31e0dae |
parent 377 | 6112a403a52d |
child 459 | 4751c407bb40 |
permissions | -rw-r--r-- |
4 | 1 |
"{ Package: 'stx:goodies/petitparser' }" |
0 | 2 |
|
3 |
PPLiteralParser subclass:#PPLiteralObjectParser |
|
4 |
instanceVariableNames:'' |
|
5 |
classVariableNames:'' |
|
6 |
poolDictionaries:'' |
|
7 |
category:'PetitParser-Parsers' |
|
8 |
! |
|
9 |
||
10 |
||
11 |
!PPLiteralObjectParser methodsFor:'operators'! |
|
12 |
||
13 |
caseInsensitive |
|
14 |
"Answer a parser that can parse the receiver case-insensitive." |
|
17 | 15 |
|
0 | 16 |
literal asUppercase = literal asLowercase ifTrue: [ ^ self ]. |
17 |
^ PPPredicateObjectParser on: [ :value | literal sameAs: value ] message: message |
|
170 | 18 |
! |
19 |
||
20 |
negate |
|
21 |
^ (PPPredicateObjectParser expect: literal message: message) negate |
|
0 | 22 |
! ! |
23 |
||
24 |
!PPLiteralObjectParser methodsFor:'parsing'! |
|
25 |
||
377
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
170
diff
changeset
|
26 |
parseOn: aPPContext |
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
170
diff
changeset
|
27 |
^ (aPPContext stream atEnd not and: [ literal = aPPContext stream uncheckedPeek ]) |
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
170
diff
changeset
|
28 |
ifFalse: [ PPFailure message: message context: aPPContext ] |
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
170
diff
changeset
|
29 |
ifTrue: [ aPPContext stream next ] |
0 | 30 |
! ! |
31 |
||
32 |
!PPLiteralObjectParser class methodsFor:'documentation'! |
|
33 |
||
17 | 34 |
version |
170 | 35 |
^ '$Header: /cvs/stx/stx/goodies/petitparser/PPLiteralObjectParser.st,v 1.4 2014-03-04 14:33:00 cg Exp $' |
17 | 36 |
! |
37 |
||
38 |
version_CVS |
|
170 | 39 |
^ '$Header: /cvs/stx/stx/goodies/petitparser/PPLiteralObjectParser.st,v 1.4 2014-03-04 14:33:00 cg Exp $' |
17 | 40 |
! |
41 |
||
0 | 42 |
version_SVN |
170 | 43 |
^ '$Id: PPLiteralObjectParser.st,v 1.4 2014-03-04 14:33:00 cg Exp $' |
0 | 44 |
! ! |
170 | 45 |