compiler/PPCCodeBlock.st
changeset 481 34ee0d3c72e7
parent 479 6316a98b7150
child 494 5cdfa83d6027
equal deleted inserted replaced
480:5b0254cca4db 481:34ee0d3c72e7
    42         buffer nextPutAll: aStringOrBlockOrRBParseNode
    42         buffer nextPutAll: aStringOrBlockOrRBParseNode
    43     ] ifFalse:[
    43     ] ifFalse:[
    44         (aStringOrBlockOrRBParseNode isKindOf: RBProgramNode) ifTrue:[ 
    44         (aStringOrBlockOrRBParseNode isKindOf: RBProgramNode) ifTrue:[ 
    45             aStringOrBlockOrRBParseNode isSequence ifTrue:[
    45             aStringOrBlockOrRBParseNode isSequence ifTrue:[
    46                 aStringOrBlockOrRBParseNode temporaries do:[:e |  
    46                 aStringOrBlockOrRBParseNode temporaries do:[:e |  
    47                     self allocateTemporaryVariableNamed: e name.      
    47                     (temporaries includes: e name) ifFalse:[ 
       
    48                         temporaries add: e name
       
    49                     ].
    48                 ].
    50                 ].
    49                 aStringOrBlockOrRBParseNode statements do:[:e|
    51                 aStringOrBlockOrRBParseNode statements do:[:e|
    50                     buffer nextPutAll: e formattedCode; nextPut: $..  
    52                     buffer nextPutAll: e formattedCode; nextPut: $..  
    51                     self nl; codeIndent.
    53                     self nl; codeIndent.
    52                 ].
    54                 ].
    59             aStringOrBlockOrRBParseNode value
    61             aStringOrBlockOrRBParseNode value
    60         ].
    62         ].
    61     ].
    63     ].
    62 
    64 
    63     "Created: / 01-06-2015 / 21:07:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    65     "Created: / 01-06-2015 / 21:07:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    64     "Modified: / 02-06-2015 / 00:06:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    66     "Modified: / 03-06-2015 / 05:52:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    65 !
    67 !
    66 
    68 
    67 codeIndent
    69 codeIndent
    68     self codeIndent:indentation
    70     self codeIndent:indentation
    69 
    71