author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Mon, 15 Jun 2015 18:00:44 +0100 | |
changeset 487 | 602215b19135 |
parent 411 | 06b96374dd10 |
child 642 | 77d5fddb6462 |
permissions | -rw-r--r-- |
4 | 1 |
"{ Package: 'stx:goodies/petitparser' }" |
0 | 2 |
|
3 |
PPDelegateParser subclass:#PPTrimmingParser |
|
4 |
instanceVariableNames:'trimmer' |
|
5 |
classVariableNames:'' |
|
6 |
poolDictionaries:'' |
|
7 |
category:'PetitParser-Parsers' |
|
8 |
! |
|
9 |
||
10 |
||
11 |
!PPTrimmingParser class methodsFor:'instance creation'! |
|
12 |
||
13 |
on: aParser trimmer: aTrimParser |
|
14 |
^ self new |
|
15 |
setParser: aParser; |
|
16 |
setTrimmer: aTrimParser; |
|
17 |
yourself |
|
18 |
! ! |
|
19 |
||
411
06b96374dd10
Removed PPTrimmingParser>>trim
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
377
diff
changeset
|
20 |
|
0 | 21 |
!PPTrimmingParser methodsFor:'initialization'! |
22 |
||
23 |
setTrimmer: aParser |
|
24 |
trimmer := aParser |
|
25 |
! ! |
|
26 |
||
27 |
!PPTrimmingParser methodsFor:'parsing'! |
|
28 |
||
377
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
29 |
parseOn: aPPContext |
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
30 |
| memento element | |
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
31 |
memento := aPPContext remember. |
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
32 |
[ (trimmer parseOn: aPPContext) isPetitFailure ] |
0 | 33 |
whileFalse. |
377
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
34 |
element := parser parseOn: aPPContext. |
0 | 35 |
element isPetitFailure ifTrue: [ |
377
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
36 |
aPPContext restore: memento. |
0 | 37 |
^ element ]. |
377
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
38 |
[ (trimmer parseOn: aPPContext) isPetitFailure ] |
0 | 39 |
whileFalse. |
40 |
^ element |
|
41 |
! ! |
|
42 |
||
43 |
!PPTrimmingParser class methodsFor:'documentation'! |
|
44 |
||
39 | 45 |
version |
46 |
^ '$Header: /cvs/stx/stx/goodies/petitparser/PPTrimmingParser.st,v 1.3 2012-05-04 22:05:38 vrany Exp $' |
|
47 |
! |
|
48 |
||
49 |
version_CVS |
|
50 |
^ '$Header: /cvs/stx/stx/goodies/petitparser/PPTrimmingParser.st,v 1.3 2012-05-04 22:05:38 vrany Exp $' |
|
51 |
! |
|
52 |
||
411
06b96374dd10
Removed PPTrimmingParser>>trim
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
377
diff
changeset
|
53 |
version_HG |
06b96374dd10
Removed PPTrimmingParser>>trim
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
377
diff
changeset
|
54 |
|
06b96374dd10
Removed PPTrimmingParser>>trim
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
377
diff
changeset
|
55 |
^ '$Changeset: <not expanded> $' |
06b96374dd10
Removed PPTrimmingParser>>trim
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
377
diff
changeset
|
56 |
! |
06b96374dd10
Removed PPTrimmingParser>>trim
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
377
diff
changeset
|
57 |
|
0 | 58 |
version_SVN |
39 | 59 |
^ '§Id: PPTrimmingParser.st 2 2010-12-17 18:44:23Z vranyj1 §' |
0 | 60 |
! ! |
377
6112a403a52d
Updated to latest version from Moose repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
61 |