Renamed #codeStoreValueOf:intoVariable: to #codeAssignParsedValueOf:to:
to use same naming as #codeAssign:to:
--- a/compiler/PPCCodeGenerator.st Mon Jun 15 17:12:54 2015 +0100
+++ b/compiler/PPCCodeGenerator.st Mon Jun 15 17:47:38 2015 +0100
@@ -113,7 +113,9 @@
compileTokenWhitespace: node
compiler add: 'context atWs ifFalse: ['.
compiler indent.
- compiler codeStoreValueOf: [ self visit: node whitespace ] intoVariable: #whatever.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node whitespace ]
+ to:#whatever.
compiler add: 'context setWs.'.
compiler dedent.
compiler add: '].'.
@@ -234,7 +236,9 @@
].
].
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler codeIf: 'error' then: [
compiler codeReturn: 'failure'.
] else: [
@@ -250,7 +254,9 @@
mementoVar := compiler allocateTemporaryVariableNamed: 'memento'.
compiler smartRemember: node child to: mementoVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler smartRestore: node child from: mementoVar.
compiler codeReturn.
@@ -329,7 +335,9 @@
[ :children :index |
self addGuard: (children at: index) ifTrue: [
compiler add: 'self clearError.'.
- compiler codeStoreValueOf: [self visit: (children at: index)] intoVariable: elementVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:(children at:index) ]
+ to:elementVar.
compiler add: 'error ifFalse: [ '.
compiler codeReturn: elementVar.
compiler add: ' ].'.
@@ -349,7 +357,9 @@
[ :children :index |
index <= children size ifTrue:[
compiler add: 'self clearError.'.
- compiler codeStoreValueOf: [self visit: (children at: index)] intoVariable: elementVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:(children at:index) ]
+ to:elementVar.
compiler add: 'error ifFalse: [ '.
compiler codeReturn: elementVar.
compiler add: ' ].'.
@@ -371,7 +381,9 @@
visitEndOfInputNode: node
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler add: 'context atEnd ifTrue: ['.
compiler codeReturn.
compiler add: '] ifFalse: ['.
@@ -383,7 +395,9 @@
visitForwardNode: node
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler codeReturn.
!
@@ -429,7 +443,9 @@
node child returnParsedObjectsAsCollection: false.
].
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler codeIf: 'error' then: [
compiler codeReturn: 'failure'.
] else: [
@@ -534,7 +550,7 @@
mementoVar := compiler allocateTemporaryVariableNamed: 'memento'.
compiler smartRemember: node child to: mementoVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: #whatever.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:#whatever.
compiler smartRestore: node child from: mementoVar.
compiler add: '^ error ifFalse: [ self error ] ifTrue: [ self clearError. nil ]'.
@@ -543,7 +559,9 @@
!
visitOptionalNode: node
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler add: 'error ifTrue: [ '.
compiler indent.
compiler add: 'self clearError. '.
@@ -571,7 +589,7 @@
].
"
compiler codeAssign: 'OrderedCollection new.' to: self retvalVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: elementVar.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:elementVar.
compiler add: 'error ifTrue: ['.
compiler codeError: 'at least one occurence expected'.
@@ -580,13 +598,13 @@
(self retvalVar ~~ #whatever) ifTrue:[
compiler add: self retvalVar , ' add: ',elementVar , '.'.
].
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: elementVar.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:elementVar.
compiler add: '[ error ] whileFalse: ['.
compiler indent.
(self retvalVar ~~ #whatever) ifTrue:[
compiler add: self retvalVar , ' add: ',elementVar , '.'.
].
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: elementVar.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:elementVar.
compiler dedent.
compiler add: '].'.
compiler add: 'self clearError.'.
@@ -626,12 +644,14 @@
compiler smartRemember: node to: mementoVar.
].
- compiler codeStoreValueOf: [ self visit: (node children at: 1) ] intoVariable: #whatever.
+ compiler
+ codeAssignParsedValueOf:[ self visit:(node children at:1) ]
+ to:#whatever.
compiler add: 'error ifTrue: [ ^ failure ].'.
2 to: (node children size) do: [ :idx | |child|
child := node children at: idx.
- compiler codeStoreValueOf: [ self visit: child ] intoVariable: #whatever.
+ compiler codeAssignParsedValueOf:[ self visit:child ] to:#whatever.
child acceptsEpsilon ifFalse: [
compiler add: 'error ifTrue: [ '.
@@ -668,14 +688,18 @@
compiler codeAssign: 'Array new: ', node children size asString, '.' to: self retvalVar.
].
- compiler codeStoreValueOf: [ self visit: (node children at: 1)] intoVariable: (elementVars at: 1).
+ compiler
+ codeAssignParsedValueOf:[ self visit:(node children at:1) ]
+ to:(elementVars at:1).
compiler add: 'error ifTrue: [ ^ failure ].'.
node returnParsedObjectsAsCollection ifTrue:[
compiler add: self retvalVar , ' at: 1 put: ', (elementVars at: 1), '.'.
].
2 to: (node children size) do: [ :idx | |child|
child := node children at: idx.
- compiler codeStoreValueOf: [ self visit: child ] intoVariable: (elementVars at: idx).
+ compiler
+ codeAssignParsedValueOf:[ self visit:child ]
+ to:(elementVars at:idx).
child acceptsEpsilon ifFalse: [
compiler add: 'error ifTrue: [ '.
@@ -745,11 +769,11 @@
self addGuard: node child ifTrue: nil ifFalse: [ compiler codeReturn: '#()' ].
compiler codeAssign: 'OrderedCollection new.' to: self retvalVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: elementVar.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:elementVar.
compiler add: '[ error ] whileFalse: ['.
compiler indent.
compiler add: self retvalVar, ' add: ', elementVar, '.'.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: elementVar.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:elementVar.
compiler dedent.
compiler add: '].'.
compiler codeClearError.
@@ -760,7 +784,7 @@
| elementVar |
elementVar := compiler allocateTemporaryVariableNamed: 'element'.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: elementVar.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:elementVar.
compiler add: 'error ifFalse: [ '.
compiler codeReturn: elementVar, ' ', node block asString, '.'.
compiler add: '] ifTrue: ['.
@@ -787,7 +811,7 @@
compiler profileTokenRead: (compiler idFor: node).
compiler codeAssign: 'context position + 1.' to: startVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: #whatever.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:#whatever.
compiler add: 'error ifFalse: [ '.
compiler indent.
compiler codeAssign: 'context position.' to: endVar.
@@ -816,7 +840,7 @@
!
visitTokenWhitespaceNode: node
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: #whatever.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:#whatever.
compiler codeReturn.
!
@@ -829,7 +853,9 @@
compiler smartRemember: node child to: mementoVar.
compiler add: 'context skipSeparators.'.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler add: 'error ifTrue: [ '.
compiler indent.
@@ -869,7 +895,7 @@
].
compiler codeAssign: 'context position + 1.' to: startVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: #whatever.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:#whatever.
(arguments guards and: [(guard := PPCGuard on: node) makesSense]) ifTrue: [
compiler dedent.
--- a/compiler/PPCCompiler.st Mon Jun 15 17:12:54 2015 +0100
+++ b/compiler/PPCCompiler.st Mon Jun 15 17:47:38 2015 +0100
@@ -189,6 +189,25 @@
]
!
+codeAssignParsedValueOf:aBlock to:aString
+ | tmpVarirable method |
+
+ self assert:aBlock isBlock.
+ self assert:aString isNil not.
+ tmpVarirable := returnVariable.
+ returnVariable := aString.
+ method := [
+ aBlock value
+ ] ensure:[ returnVariable := tmpVarirable ].
+ method isInline ifTrue:[
+ self callOnLine:method
+ ] ifFalse:[
+ self codeEvaluateAndAssign:(method call) to:aString.
+ ]
+
+ "Created: / 23-04-2015 / 18:21:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
codeBlock: contents
currentMethod codeBlock: contents
@@ -319,28 +338,6 @@
"Modified: / 01-06-2015 / 21:48:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-codeStoreValueOf: aBlock intoVariable: aString
- | tmpVarirable method |
- self assert: aBlock isBlock.
- self assert: aString isNil not.
-
- tmpVarirable := returnVariable.
- returnVariable := aString.
- method := [
- aBlock value
- ] ensure: [
- returnVariable := tmpVarirable
- ].
-
- method isInline ifTrue: [
- self callOnLine: method
- ] ifFalse: [
- self codeEvaluateAndAssign: (method call) to: aString.
- ]
-
- "Created: / 23-04-2015 / 18:21:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
codeTokenGuard: node ifFalse: codeBlock
| guard id |
guard := PPCTokenGuard on: node.
--- a/compiler/PPCLiteralNode.st Mon Jun 15 17:12:54 2015 +0100
+++ b/compiler/PPCLiteralNode.st Mon Jun 15 17:47:38 2015 +0100
@@ -9,6 +9,7 @@
category:'PetitCompiler-Nodes'
!
+
!PPCLiteralNode methodsFor:'comparing'!
recognizedSentencesPrim
@@ -28,3 +29,10 @@
^ visitor visitLiteralNode: self
! !
+!PPCLiteralNode class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- a/compiler/PPCTokenCodeGenerator.st Mon Jun 15 17:12:54 2015 +0100
+++ b/compiler/PPCTokenCodeGenerator.st Mon Jun 15 17:47:38 2015 +0100
@@ -32,7 +32,9 @@
!PPCTokenCodeGenerator methodsFor:'visiting'!
visitOptionalNode: node
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler codeAssign: 'false.' to: 'error'.
compiler codeReturn.
!
@@ -61,7 +63,7 @@
compiler codeAssign: 'context position + 1.' to: startVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: #whatever.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:#whatever.
compiler add: 'error ifTrue: [ ^ error := false ].'.
compiler codeAssign: 'context position.' to: endVar.
@@ -110,7 +112,9 @@
to: 'currentTokenValue := ', self retvalVar.
compiler addComment: 'Consume Whitespace:'.
- compiler codeStoreValueOf: [ self visit: node whitespace ] intoVariable: #whatever.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node whitespace ]
+ to:#whatever.
compiler nl.
compiler add: '^ true'.
@@ -142,14 +146,16 @@
].
compiler codeAssign: 'context position + 1.' to: startVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: #whatever.
+ compiler codeAssignParsedValueOf:[ self visit:node child ] to:#whatever.
compiler add: 'error ifTrue: [ ^ error := false ].'.
compiler codeAssign: 'context position.' to: endVar.
compiler addComment: 'Consume Whitespace:'.
- compiler codeStoreValueOf: [ self visit: node whitespace ] intoVariable: #whatever.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node whitespace ]
+ to:#whatever.
compiler nl.
--- a/compiler/PPCTokenizingCodeGenerator.st Mon Jun 15 17:12:54 2015 +0100
+++ b/compiler/PPCTokenizingCodeGenerator.st Mon Jun 15 17:47:38 2015 +0100
@@ -74,7 +74,9 @@
compiler smartRemember: node child to: mementoVar.
compiler codeAssign: '{ currentTokenValue . currentTokenType }.' to: currentTokenVar.
- compiler codeStoreValueOf: [ self visit: node child ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node child ]
+ to:self retvalVar.
compiler smartRestore: node child from: mementoVar.
compiler codeAssign: '(', currentTokenVar, ' at: 1).' to: 'currentTokenValue'.
@@ -93,7 +95,7 @@
child acceptsEpsilon ifTrue: [
possibleError := false.
- compiler codeStoreValueOf: [ self visit: child ] intoVariable: self retvalVar.
+ compiler codeAssignParsedValueOf:[ self visit:child ] to:self retvalVar.
compiler codeReturn
] ifFalse: [
child firstSetWithTokens do: [ :first |
@@ -103,7 +105,7 @@
compiler add: '(self ', tokenMethodName asString, ')'.
compiler addOnLine: ' ifTrue: ['.
compiler indent.
- compiler codeStoreValueOf: [ self visit: child ] intoVariable: self retvalVar.
+ compiler codeAssignParsedValueOf:[ self visit:child ] to:self retvalVar.
compiler add: 'error ifFalse: ['.
compiler indent.
compiler codeReturn: self retvalVar.
@@ -146,7 +148,7 @@
compiler add: '(self ', tokenMethodName asString, ')'.
compiler addOnLine: ' ifTrue: ['.
compiler indent.
- compiler codeStoreValueOf: [ self visit: child ] intoVariable: self retvalVar.
+ compiler codeAssignParsedValueOf:[ self visit:child ] to:self retvalVar.
compiler codeReturn: self retvalVar.
compiler dedent.
compiler add: '] ifFalse:['
@@ -202,7 +204,9 @@
self visit: node whitespace.
compiler codeHaltIfShiftPressed.
- compiler codeStoreValueOf: [ self visit: node parser ] intoVariable: self retvalVar.
+ compiler
+ codeAssignParsedValueOf:[ self visit:node parser ]
+ to:self retvalVar.
compiler codeReturn.
!