Spaces:
Running
Running
JS code generation | |
emitInlineOn: aStream level: level generator: aCodeGen | |
"Emit C code for this method onto the given stream. All calls to inlined methods should already have been expanded." | |
self removeUnusedTemps. | |
sharedLabel ifNotNil:[ | |
aStream crtab: level-1; nextPutAll: sharedLabel; nextPutAll:':'. | |
aStream crtab: level. | |
aStream nextPutAll: '/* '; nextPutAll: selector; nextPutAll: ' */'. | |
aStream crtab: level. | |
]. | |
aStream nextPutAll:'{'; cr. | |
locals do: [ :var | | |
aStream tab: level+1. | |
aStream nextPutAll: (declarations at: var ifAbsent: [ 'sqInt ', var]), ';'; cr. | |
]. | |
parseTree emitJSCodeOn: aStream level: level+1 generator: aCodeGen. | |
aStream tab: level; nextPutAll: '}'; cr. |