compiler/PEGFsaGenerator.st
changeset 524 f6f68d32de73
parent 515 b5316ef15274
child 525 751532c8f3db
--- a/compiler/PEGFsaGenerator.st	Mon Aug 17 12:13:16 2015 +0100
+++ b/compiler/PEGFsaGenerator.st	Mon Aug 24 15:34:14 2015 +0100
@@ -262,6 +262,18 @@
     ^ self visitPredicateNode: node
 !
 
+visitNilNode: node
+    "not much to do here..."
+    | startState |
+    startState  := PEGFsaState new.
+    
+    ^ PEGFsa new
+        addState: startState;
+        startState: startState;
+        finalState: startState;
+        yourself
+!
+
 visitNode: node
     self error: 'node not supported'
 !
@@ -373,6 +385,10 @@
     ^ self visit: node child
 !
 
+visitTokenWhitespaceNode: node
+    ^ self visit: node child
+!
+
 visitTrimmingTokenCharacterNode: node
     "I do not care about trimming (so far), it should be handled by TokenCodeGenerator"
     ^ self visit: node child
@@ -381,5 +397,23 @@
 visitTrimmingTokenNode: node
     "I do not care about trimming (so far), it should be handled by TokenCodeGenerator"
     ^ self visit: node child
+!
+
+visitUnknownNode: node
+    |  state fsa  |
+    
+    state := PEGFsaParserState new.
+    state name: 'Unknown Parser'.
+    state parser: node parser.
+    
+    fsa := PEGFsa new
+        addState: state;
+        
+        startState: state;
+        finalState: state;
+
+        yourself.
+        
+    ^ fsa
 ! !