annotate scripttags.js @ 104:648659961e0e

Get editor working again
author Mike Pavone <pavone@retrodev.com>
date Thu, 11 Apr 2013 00:12:21 -0700
parents 4d87c38404d6
children da7f585bf626
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
1
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
2 function compileAndRun(src)
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
3 {
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
4 var ast = parser.parse(src);
104
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
5 asyncProcessTopLevelJS(toplevel, function() {
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
6 var js = makeJSProg(ast);
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
7 eval(js);
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
8 });
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
9 /*.toJSModule();
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
10 mainModule = eval(js);
25
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
11 if (mainModule.strue) {
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
12 each(mainModule.strue, function(key, val) {
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
13 if(val instanceof Function) {
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
14 Boolean.prototype[key] = function() {
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
15 return this.valueOf() ? mainModule.strue[key].apply(mainModule.strue, arguments) : mainModule.sfalse[key].apply(mainModule.sfalse, arguments);
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
16 };
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
17 }
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
18 });
4d87c38404d6 List literals, fixes to implicit self property lookup, import statement and editor improvements
Mike Pavone <pavone@retrodev.com>
parents: 9
diff changeset
19 }
104
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
20 mainModule.main();*/
9
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
21 }
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
22
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
23 onReady(function() {
104
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
24 toplevel.onReady( function() {
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
25 var tags = qall('script[type="text/tabletprog"]');
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
26
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
27 for (var i = 0; i < tags.length; ++i) {
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
28 if (tags[i].src) {
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
29 get(tags[i].src, function(req) {
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
30 compileAndRun(req.responseText);
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
31 });
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
32 } else {
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
33 compileAndRun(tags[i].innerHTML);
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
34 }
9
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
35 }
104
648659961e0e Get editor working again
Mike Pavone <pavone@retrodev.com>
parents: 25
diff changeset
36 });
9
37d7f60a8ea1 Allow use of tabletproglang programs in script tags
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
37 });