• Home
  • Raw
  • Download

Lines Matching full:compiler

30 import { Compiler } from "../compiler";
35 export function compileDoStatement(stmt: ts.DoStatement, compiler: Compiler) {
36 compiler.pushScope(stmt);
37 let pandaGen = compiler.getPandaGen();
39 let loopScope = <LoopScope>compiler.getRecorder().getScopeOfNode(stmt);
54 compiler.pushEnv(loopEnv);
57 compiler.compileStatement(stmt.statement);
59 compiler.compileCondition(stmt.expression, loopEndLabel);
70 compiler.popEnv();
75 compiler.popScope();
78 export function compileWhileStatement(stmt: ts.WhileStatement, compiler: Compiler) {
79 compiler.pushScope(stmt);
80 let pandaGen = compiler.getPandaGen();
82 let loopScope = <LoopScope>compiler.getRecorder().getScopeOfNode(stmt);
96 compiler.pushEnv(loopEnv);
98 compiler.compileCondition(stmt.expression, loopEndLabel);
100 compiler.compileStatement(stmt.statement);
111 compiler.popEnv()
116 compiler.popScope();
119 export function compileForStatement(stmt: ts.ForStatement, compiler: Compiler) {
120 compiler.pushScope(stmt);
121 let pandaGen = compiler.getPandaGen();
124 let loopScope = <LoopScope>compiler.getRecorder().getScopeOfNode(stmt);
148 compiler.pushEnv(loopEnv);
151 declList.declarations.forEach(decl => compiler.compileVariableDeclaration(decl));
157 compiler.compileCondition(stmt.condition, loopEndLabel);
161 compiler.compileStatement(stmt.statement);
176 compiler.loadTarget(stmt, varInfo);
192 compiler.compileExpression(stmt.incrementor);
199 compiler.popEnv();
205 declList.declarations.forEach((decl) => compiler.compileVariableDeclaration(decl));
207 compiler.compileExpression(stmt.initializer);
217 compiler.pushEnv(loopEnv);
221 compiler.compileCondition(stmt.condition, loopEndLabel);
225 compiler.compileStatement(stmt.statement);
230 compiler.compileExpression(stmt.incrementor);
243 compiler.popEnv();
249 compiler.popScope();
252 export function compileForInStatement(stmt: ts.ForInStatement, compiler: Compiler) {
253 compiler.pushScope(stmt);
254 let pandaGen = compiler.getPandaGen();
257 let loopScope = <LoopScope>compiler.getRecorder().getScopeOfNode(stmt);
272 compiler.compileExpression(stmt.expression);
279 compiler.pushEnv(loopEnv);
287 let lref = LReference.generateLReference(compiler, stmt.initializer, false);
291 compiler.compileStatement(stmt.statement);
301 compiler.popEnv();
306 compiler.popScope();