compiler/PPCInliningVisitor.st
changeset 515 b5316ef15274
parent 502 1e45d3c96ec5
child 516 3b81c9e53352
child 524 f6f68d32de73
--- a/compiler/PPCInliningVisitor.st	Fri Jul 24 15:06:54 2015 +0100
+++ b/compiler/PPCInliningVisitor.st	Mon Aug 17 12:13:16 2015 +0100
@@ -38,10 +38,16 @@
 !
 
 visitActionNode: node
-    node child markForInline.
+    "Only mark unnamed sequence nodes for inlining.
+     Named nodes should not be inlined as they should make a method.
+     There's little point in inlining non-sequence nodes, so don't
+     enforce inlining on those. Some (JK :-) may prefer them non-inlined
+     (for debugging purposes)"
+    (node child isSequenceNode and:[node child name isNil]) ifTrue: [ node child markForInline ].
     ^ super visitActionNode: node.
 
     "Created: / 13-05-2015 / 16:25:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 31-07-2015 / 08:20:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 visitCharSetPredicateNode: node
@@ -97,10 +103,13 @@
 !
 
 visitTokenConsumeNode: node
-    super visitTokenConsumeNode: node.
+    "super visitTokenConsumeNode: node."
+
     node name isNil ifTrue: [ 
-        self markForInline: node
+        self flag: 'temporarily disabled'.
+        "self markForInline: node"
     ].
+
     ^ node
 !
 
@@ -119,8 +128,12 @@
 !
 
 visitTokenizingParserNode: node
-    self visit: node tokenizer.
+    "skip tokens"
+    "skip whitespace"
+    "self visit: node whitespace."
+
     self visit: node parser.
+    
     ^ node
 ! !