comparison cbackend.js @ 32:64f1d516fbfd

Tiny bit of work on closures
author Mike Pavone <pavone@retrodev.com>
date Sat, 07 Jul 2012 17:03:01 -0700
parents 668f533e5284
children a10f1b049193
comparison
equal deleted inserted replaced
31:668f533e5284 32:64f1d516fbfd
66 } 66 }
67 var pre = ''; 67 var pre = '';
68 if (info.type == 'self') { 68 if (info.type == 'self') {
69 pre = this.symbols.selfVar() + '->'; 69 pre = this.symbols.selfVar() + '->';
70 } else if(info.type == 'parent') { 70 } else if(info.type == 'parent') {
71 pre = this.symbols.selfVar(); 71 pre = this.symbols.selfVar() + '->';
72 for (var i = 0; i < funinfo.depth; ++i) { 72 for (var i = 0; i < info.depth; ++i) {
73 pre += '->parent'; 73 pre += 'parent->';
74 }
75 } else if(info.type == 'upvar') {
76 pre = 'env->';
77 for (var i = 1; i < info.depth; ++i) {
78 pre += 'parent->';
74 } 79 }
75 } else if (info.type == 'toplevel') { 80 } else if (info.type == 'toplevel') {
76 pre = 'modules.'; 81 pre = 'modules.';
77 modules[name] = false; 82 modules[name] = false;
78 } 83 }