#FEATURE by cg expecco_18_1_0_6496 expecco_18_1_0_6496_v2
authorClaus Gittinger <cg@exept.de>
Mon, 20 Aug 2018 08:12:40 +0200
changeset 4293 829203f940a3
parent 4292 c52d721695b2
child 4294 827e6e3e113c
#FEATURE by cg class: Parser added: #squeakComputedArrayExpressions removed: #squeakComputedArray changed: #primary_squeakComputedArray
Parser.st
--- a/Parser.st	Wed Aug 08 10:29:13 2018 +0200
+++ b/Parser.st	Mon Aug 20 08:12:40 2018 +0200
@@ -5480,6 +5480,7 @@
     selector := aParser selector.
 ! !
 
+
 !Parser methodsFor:'obsolete'!
 
 correctByDeleting
@@ -8499,12 +8500,13 @@
      In squeak, these are written as: { expr1 . expr2 . ... exprN )
      and create a message to construct an Array containing the exprI values"
 
-    |pos pos2 exprList|
+    |pos pos2 exprList line1 node|
 
     pos := tokenPosition.
-
+    line1 := tokenLineNr.
+    
     self nextToken.
-    exprList := self squeakComputedArray.
+    exprList := self squeakComputedArrayExpressions.
     (exprList == #Error) ifTrue:[ ^ #Error ].
 
     tokenType ~~ $} ifTrue:[
@@ -8518,9 +8520,10 @@
     ].
 
     "/ make it an array creation expression ...
-    ^ (self genMakeArrayWith:exprList)
-        startPosition: pos
-          endPosition: pos2
+    node := (self genMakeArrayWith:exprList)
+                startPosition:pos endPosition:pos2.
+    node lineNumber:line1.            
+    ^ node            
 
     "
      Compiler allowSqueakExtensions:true.
@@ -8536,6 +8539,7 @@
 
     "Modified: / 27-07-2011 / 15:56:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 22-08-2012 / 13:20:58 / cg"
+    "Modified: / 19-08-2018 / 11:17:34 / Claus Gittinger"
 !
 
 primary_super
@@ -8708,7 +8712,9 @@
     ^ self qualifiedNameFrom:pos1
 !
 
-squeakComputedArray
+squeakComputedArrayExpressions
+    "parse a squeak array expression's '{' expr... '}' list of exprs."
+
     |expressions elem pos1|
 
     tokenType == $} ifTrue:[
@@ -8716,7 +8722,7 @@
     ].
 
     pos1 := tokenPosition.
-    expressions := OrderedCollection new:20.
+    expressions := OrderedCollection new.
     [
         elem := self expression.
         (elem == #Error) ifTrue:[
@@ -8736,6 +8742,8 @@
         ].
     ] loop.
     "/ not reached
+
+    "Created: / 19-08-2018 / 11:13:42 / Claus Gittinger"
 !
 
 typedArray:typeSymbol