js2 0.3.18 → 0.3.19
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +3 -0
- data/lib/js2/browser.js +3 -1
- data/lib/js2/js2.js +28 -3
- metadata +6 -6
data/CHANGELOG
CHANGED
data/lib/js2/browser.js
CHANGED
@@ -19,7 +19,7 @@ function mainFunction (arg) {
|
|
19
19
|
|
20
20
|
var JS2 = root.JS2 = mainFunction;
|
21
21
|
var js2 = root.js2 = JS2;
|
22
|
-
js2.VERSION = "0.3.
|
22
|
+
js2.VERSION = "0.3.19";
|
23
23
|
|
24
24
|
JS2.ROOT = JS2;
|
25
25
|
|
@@ -269,6 +269,7 @@ JS2.Array.prototype.any = function() {
|
|
269
269
|
return this.length > 0;
|
270
270
|
};
|
271
271
|
|
272
|
+
|
272
273
|
JS2.Class.extend('JSML', function(KLASS, OO){
|
273
274
|
OO.addStaticMember("process",function (txt) {
|
274
275
|
return new KLASS(txt);
|
@@ -469,6 +470,7 @@ JS2.Class.extend('JSMLElement', function(KLASS, OO){
|
|
469
470
|
});
|
470
471
|
});
|
471
472
|
|
473
|
+
|
472
474
|
JS2.TEMPLATES = { jsml: JS2.JSML };
|
473
475
|
|
474
476
|
|
data/lib/js2/js2.js
CHANGED
@@ -14,7 +14,7 @@ function mainFunction (arg) {
|
|
14
14
|
|
15
15
|
var JS2 = root.JS2 = mainFunction;
|
16
16
|
var js2 = root.js2 = JS2;
|
17
|
-
js2.VERSION = "0.3.
|
17
|
+
js2.VERSION = "0.3.19";
|
18
18
|
|
19
19
|
JS2.ROOT = JS2;
|
20
20
|
|
@@ -601,7 +601,7 @@ function mainFunction (arg) {
|
|
601
601
|
}
|
602
602
|
};
|
603
603
|
|
604
|
-
var KEYWORDS = { 'var': null, 'class': null, 'function': null, 'in': null, 'with': null, 'curry': null, 'static': null, 'module':null };
|
604
|
+
var KEYWORDS = { 'var': null, 'class': null, 'function': null, 'in': null, 'with': null, 'curry': null, 'static': null, 'module':null, 'private':null };
|
605
605
|
var IDS = JS2.Lexer.IDS;
|
606
606
|
IDS['NODE'] = -1;
|
607
607
|
|
@@ -778,9 +778,26 @@ function mainFunction (arg) {
|
|
778
778
|
if (this.tokens.isBalancedCurly(this) && token[0] == '}') {
|
779
779
|
this.closed = true;
|
780
780
|
}
|
781
|
-
}
|
781
|
+
}
|
782
|
+
});
|
783
|
+
|
784
|
+
var Private = Content.extend({
|
785
|
+
name: 'Private',
|
786
|
+
handOff: function(token) {
|
787
|
+
if (this.started) this.closed = true;
|
788
|
+
switch (token[0]) {
|
789
|
+
case '{': this.started = true; return Block;
|
790
|
+
}
|
791
|
+
},
|
792
|
+
|
793
|
+
toString: function() {
|
794
|
+
var v = this.validate(/(private)(\s+)/);
|
795
|
+
var last = v.last;
|
796
|
+
return "// private closure\n" + last.replace(/^\{/, '').replace(/\}$/, '');
|
797
|
+
}
|
782
798
|
});
|
783
799
|
|
800
|
+
|
784
801
|
var KlassBlock = Block.extend({
|
785
802
|
name: 'KlassBlock',
|
786
803
|
handOff: function(token) {
|
@@ -789,6 +806,7 @@ function mainFunction (arg) {
|
|
789
806
|
case 'function': return Method;
|
790
807
|
case 'static': return StaticMember;
|
791
808
|
case 'include': return Include;
|
809
|
+
case 'private': return Private;
|
792
810
|
}
|
793
811
|
},
|
794
812
|
|
@@ -1124,6 +1142,7 @@ JS2.Array.prototype.any = function() {
|
|
1124
1142
|
return this.length > 0;
|
1125
1143
|
};
|
1126
1144
|
|
1145
|
+
|
1127
1146
|
JS2.Class.extend('FileSystem', function(KLASS, OO){
|
1128
1147
|
OO.addMember("initialize",function (adapter) {
|
1129
1148
|
this.adapter = adapter;
|
@@ -1233,6 +1252,7 @@ JS2.Class.extend('FileSystem', function(KLASS, OO){
|
|
1233
1252
|
});
|
1234
1253
|
});
|
1235
1254
|
|
1255
|
+
|
1236
1256
|
JS2.Class.extend('Updater', function(KLASS, OO){
|
1237
1257
|
OO.addMember("initialize",function (fs, inDir, outDir, recursive) {
|
1238
1258
|
this.recursive = recursive;
|
@@ -1278,6 +1298,7 @@ JS2.Class.extend('Updater', function(KLASS, OO){
|
|
1278
1298
|
});
|
1279
1299
|
});
|
1280
1300
|
|
1301
|
+
|
1281
1302
|
JS2.Class.extend('Config', function(KLASS, OO){
|
1282
1303
|
OO.addMember("CLI_REGEX",/^-(r|i|f|n|v|m)(=(\w+))?$/);
|
1283
1304
|
OO.addMember("optsLookup",{
|
@@ -1349,6 +1370,7 @@ JS2.Class.extend('Config', function(KLASS, OO){
|
|
1349
1370
|
|
1350
1371
|
});
|
1351
1372
|
|
1373
|
+
|
1352
1374
|
JS2.Class.extend('Commander', function(KLASS, OO){
|
1353
1375
|
OO.addMember("BANNER","js2 <command> [options] <arguments>\n" +
|
1354
1376
|
"VERSION: " + JS2.VERSION + "\n" +
|
@@ -1435,6 +1457,7 @@ JS2.Class.extend('Commander', function(KLASS, OO){
|
|
1435
1457
|
});
|
1436
1458
|
|
1437
1459
|
|
1460
|
+
|
1438
1461
|
JS2.Class.extend('BrowserDecorator', function(KLASS, OO){
|
1439
1462
|
OO.addMember("file",function (code) {
|
1440
1463
|
return code;
|
@@ -1479,6 +1502,7 @@ JS2.Class.extend('RingoDecorator', function(KLASS, OO){
|
|
1479
1502
|
|
1480
1503
|
JS2.DECORATOR = JS2.DECORATOR || new JS2.BrowserDecorator();
|
1481
1504
|
|
1505
|
+
|
1482
1506
|
JS2.Class.extend('JSML', function(KLASS, OO){
|
1483
1507
|
OO.addStaticMember("process",function (txt) {
|
1484
1508
|
return new KLASS(txt);
|
@@ -1678,6 +1702,7 @@ JS2.Class.extend('JSMLElement', function(KLASS, OO){
|
|
1678
1702
|
return (out.length ? ' ' : '') + out.join(' ');
|
1679
1703
|
});
|
1680
1704
|
});
|
1705
|
+
|
1681
1706
|
JS2.TEMPLATES = { jsml: JS2.JSML };
|
1682
1707
|
|
1683
1708
|
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: js2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.3.
|
5
|
+
version: 0.3.19
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Jeff Su
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-
|
13
|
+
date: 2011-07-02 00:00:00 +08:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -36,11 +36,11 @@ extra_rdoc_files: []
|
|
36
36
|
files:
|
37
37
|
- bin/js2
|
38
38
|
- bin/js2-ruby
|
39
|
-
- lib/js2.rb
|
40
|
-
- lib/js2/context.rb
|
41
|
-
- lib/js2/rack.rb
|
42
39
|
- lib/js2/command.rb
|
40
|
+
- lib/js2/context.rb
|
43
41
|
- lib/js2/fs.rb
|
42
|
+
- lib/js2/rack.rb
|
43
|
+
- lib/js2.rb
|
44
44
|
- lib/js2/browser.js
|
45
45
|
- lib/js2/js2.js
|
46
46
|
- CHANGELOG
|
@@ -68,7 +68,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
68
68
|
requirements: []
|
69
69
|
|
70
70
|
rubyforge_project:
|
71
|
-
rubygems_version: 1.
|
71
|
+
rubygems_version: 1.6.2
|
72
72
|
signing_key:
|
73
73
|
specification_version: 3
|
74
74
|
summary: Javascript Sugar
|