efront 4.3.5 → 4.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/coms/compile/common.js
CHANGED
|
@@ -420,19 +420,6 @@ var snapExpressFoot = function (o) {
|
|
|
420
420
|
}
|
|
421
421
|
return o;
|
|
422
422
|
};
|
|
423
|
-
var mustBeYield = function (o) {
|
|
424
|
-
if (!o.next) return;
|
|
425
|
-
var mustyield = false;
|
|
426
|
-
if (o.next.type === STRAP && !/^(?:instanceof|in|of|from|as)$/.test(o.next.text)
|
|
427
|
-
|| o.next.type === STAMP && /[!~]/.test(o.next.text)
|
|
428
|
-
|| o.next.type === EXPRESS && !/^[\.\[]/.test(o.next.text)
|
|
429
|
-
|| o.next.type & (VALUE | QUOTED | SCOPED)
|
|
430
|
-
) {
|
|
431
|
-
mustyield = true;
|
|
432
|
-
}
|
|
433
|
-
return mustyield;
|
|
434
|
-
|
|
435
|
-
}
|
|
436
423
|
var createScoped = function (parsed, wash) {
|
|
437
424
|
var used = Object.create(null); var vars = Object.create(null), lets = vars;
|
|
438
425
|
var scoped = [], funcbody = scoped, argscope = scoped, thisscope = scoped;
|
|
@@ -1332,14 +1319,40 @@ var canbeTemp = function (body, strip = false) {
|
|
|
1332
1319
|
if (!o) return false;
|
|
1333
1320
|
return o.type === EXPRESS && (strip || !/[\.\[]/.test(o.text)) || o.type === VALUE || o.type === QUOTED && !o.length;
|
|
1334
1321
|
};
|
|
1335
|
-
|
|
1322
|
+
var pickArgument = function (o) {
|
|
1323
|
+
var res = [];
|
|
1324
|
+
var t = o && o.prev, p = o;
|
|
1325
|
+
while (t && (t.type !== STAMP || !/^[,;]$/.test(t.text))) {
|
|
1326
|
+
if (p.isprop) {
|
|
1327
|
+
p = t.prev;
|
|
1328
|
+
if (!p || !p.isprop) break;
|
|
1329
|
+
}
|
|
1330
|
+
res.push(t);
|
|
1331
|
+
p = t;
|
|
1332
|
+
t = t.prev;
|
|
1333
|
+
}
|
|
1334
|
+
while (o && (o.type !== STAMP || !/^[,;]$/.test(o.text))) {
|
|
1335
|
+
res.push(o);
|
|
1336
|
+
var n = o;
|
|
1337
|
+
o = o.next;
|
|
1338
|
+
if (o && o.isprop) {
|
|
1339
|
+
if (!n.isprop) break;
|
|
1340
|
+
}
|
|
1341
|
+
}
|
|
1342
|
+
return res;
|
|
1343
|
+
};
|
|
1336
1344
|
var pickSentence = function (o) {
|
|
1337
1345
|
if (!o) return [];
|
|
1338
1346
|
if (o && o.type & (SPACE | COMMENT) && o.prev) o = o.prev;
|
|
1339
1347
|
if (o && o.type === STAMP && o.prev) o = o.prev;
|
|
1340
1348
|
if (o.type === STRAP && /^(in|instanceof|as|of)$/.test(o.text) && o.prev) o = o.prev;
|
|
1341
1349
|
var h = snapSentenceHead(o);
|
|
1342
|
-
var e =
|
|
1350
|
+
var e = h;
|
|
1351
|
+
do {
|
|
1352
|
+
e = skipAssignment(e);
|
|
1353
|
+
if (!e || e.type !== STAMP || e.text !== ',') break;
|
|
1354
|
+
e = e.next;
|
|
1355
|
+
} while (e);
|
|
1343
1356
|
var q = o.queue;
|
|
1344
1357
|
if (q) {
|
|
1345
1358
|
var qh = q.indexOf(h);
|
|
@@ -1375,6 +1388,7 @@ module.exports = {
|
|
|
1375
1388
|
createScoped,
|
|
1376
1389
|
createExpressList,
|
|
1377
1390
|
snapSentenceHead,
|
|
1391
|
+
pickArgument,
|
|
1378
1392
|
pickSentence,
|
|
1379
1393
|
snapExpressHead,
|
|
1380
1394
|
snapExpressFoot,
|
|
@@ -34,3 +34,6 @@ testPickSentence(`a+b\r\n++c`, 5, "++c")
|
|
|
34
34
|
testPickSentence(`a+b++\r\nc`, 5, "c")
|
|
35
35
|
testPickSentence(`a+b++\r\nc`, 5, "c")
|
|
36
36
|
testPickSentence(`a+b++\r\n+c`, 6, "a + b++\r\n+ c")
|
|
37
|
+
assert(common.createString(common.pickArgument(scanner2(`a={a:1,c:d}`)[2][4])), 'c: d')
|
|
38
|
+
assert(common.createString(common.pickArgument(scanner2(`a=class{a=1\r\nc=d}`)[3][4])), 'c = d')
|
|
39
|
+
assert(common.createString(common.pickArgument(scanner2(`(a=1,c=d)`)[0][4])), 'c = d')
|
package/coms/compile/unstruct.js
CHANGED
|
@@ -1361,7 +1361,7 @@ var patchMark = '';
|
|
|
1361
1361
|
module.exports = function (body, newname, ret) {
|
|
1362
1362
|
strip = body.strip;
|
|
1363
1363
|
var patchMark_ = patchMark;
|
|
1364
|
-
patchMark = body.patchMark;
|
|
1364
|
+
if (body.patchMark) patchMark = body.patchMark;
|
|
1365
1365
|
if (ret) ret = isString(ret) ? ret : newname();
|
|
1366
1366
|
var ret0 = ret_;
|
|
1367
1367
|
var ret1 = null;
|
package/coms/zimoli/HexEditor.js
CHANGED
|
@@ -64,8 +64,8 @@ var filterKey = function (event) {
|
|
|
64
64
|
else if (keyCode > 95 && keyCode < 106) {
|
|
65
65
|
char = keyCode - 96;
|
|
66
66
|
}
|
|
67
|
-
else if (keyCode >
|
|
68
|
-
char = keyCode -
|
|
67
|
+
else if (keyCode > 47 && keyCode < 58) {
|
|
68
|
+
char = keyCode - 48;
|
|
69
69
|
}
|
|
70
70
|
else {
|
|
71
71
|
return;
|