author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Mon, 11 May 2015 12:19:13 +0100 | |
changeset 456 | 59a88a51f46a |
parent 427 | a7f5e6de19d2 |
child 642 | 77d5fddb6462 |
permissions | -rw-r--r-- |
4 | 1 |
"{ Package: 'stx:goodies/petitparser' }" |
0 | 2 |
|
427
a7f5e6de19d2
Merged JK's version from Monticello
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
54
diff
changeset
|
3 |
"{ NameSpace: Smalltalk }" |
a7f5e6de19d2
Merged JK's version from Monticello
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
54
diff
changeset
|
4 |
|
0 | 5 |
Object subclass:#PPCharSetPredicate |
6 |
instanceVariableNames:'block classification' |
|
7 |
classVariableNames:'' |
|
8 |
poolDictionaries:'' |
|
9 |
category:'PetitParser-Tools' |
|
10 |
! |
|
11 |
||
12 |
||
13 |
!PPCharSetPredicate class methodsFor:'instance creation'! |
|
14 |
||
15 |
on: aBlock |
|
16 |
^ self basicNew initializeOn: aBlock |
|
17 |
! ! |
|
18 |
||
19 |
!PPCharSetPredicate methodsFor:'evaluating'! |
|
20 |
||
21 |
value: aCharacter |
|
22 |
| index | |
|
23 |
index := aCharacter asInteger. |
|
24 |
index == 0 |
|
25 |
ifTrue: [ ^ block value: aCharacter ]. |
|
26 |
index > 255 |
|
27 |
ifTrue: [ ^ block value: aCharacter ]. |
|
28 |
^ classification at: index |
|
29 |
! ! |
|
30 |
||
31 |
!PPCharSetPredicate methodsFor:'initialization'! |
|
32 |
||
33 |
initializeOn: aBlock |
|
34 |
block := aBlock. |
|
35 |
classification := Array new: 255. |
|
36 |
1 to: classification size do: [ :index | |
|
37 |
classification at: index put: (block |
|
427
a7f5e6de19d2
Merged JK's version from Monticello
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
54
diff
changeset
|
38 |
value: (Character codePoint: index)) ] |
0 | 39 |
! ! |
40 |
||
41 |
!PPCharSetPredicate class methodsFor:'documentation'! |
|
42 |
||
54 | 43 |
version |
44 |
^ '$Header: /cvs/stx/stx/goodies/petitparser/PPCharSetPredicate.st,v 1.3 2012-05-04 22:09:50 vrany Exp $' |
|
45 |
! |
|
46 |
||
47 |
version_CVS |
|
48 |
^ '$Header: /cvs/stx/stx/goodies/petitparser/PPCharSetPredicate.st,v 1.3 2012-05-04 22:09:50 vrany Exp $' |
|
49 |
! |
|
50 |
||
0 | 51 |
version_SVN |
54 | 52 |
^ '§Id: PPCharSetPredicate.st 4 2010-12-18 17:02:23Z kursjan §' |
0 | 53 |
! ! |
427
a7f5e6de19d2
Merged JK's version from Monticello
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
54
diff
changeset
|
54 |