--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/PPCNotCharacterNode.st Thu May 21 14:12:22 2015 +0100
@@ -0,0 +1,40 @@
+"{ Package: 'stx:goodies/petitparser/compiler' }"
+
+"{ NameSpace: Smalltalk }"
+
+PPCCharacterNode subclass:#PPCNotCharacterNode
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'PetitCompiler-Nodes'
+!
+
+!PPCNotCharacterNode methodsFor:'accessing'!
+
+prefix
+ ^ #notChar
+! !
+
+!PPCNotCharacterNode methodsFor:'as yet unclassified'!
+
+accept: visitor
+ ^ visitor visitNotCharacterNode: self
+!
+
+firstCharSet
+ ^ PPCharSetPredicate on: [:e | (e = character) not ]
+!
+
+recognizedSentencesPrim
+ | retval |
+
+ retval := OrderedCollection new.
+ "TODO JK: Works only for ASCII :("
+ 1 to: 255 do: [ :i |
+ (character = (Character codePoint: i)) ifFalse: [
+ retval add: (Character codePoint: i) asString
+ ]
+ ].
+ ^ retval
+! !
+