@abaplint/cli 2.101.14 → 2.101.16
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/build/cli.js +354 -229
- package/package.json +5 -5
package/build/cli.js
CHANGED
|
@@ -893,6 +893,7 @@ async function run(arg) {
|
|
|
893
893
|
await reg.parseAsync({ progress, outputPerformance: arg.performanceInformation });
|
|
894
894
|
if (arg.runFix !== true) {
|
|
895
895
|
issues = issues.concat(reg.findIssues({ progress, outputPerformance: arg.performanceInformation }));
|
|
896
|
+
// require('v8').writeHeapSnapshot();
|
|
896
897
|
}
|
|
897
898
|
}
|
|
898
899
|
catch (error) {
|
|
@@ -19371,14 +19372,14 @@ class BuiltIn {
|
|
|
19371
19372
|
ret.push(this.buildConstant("abap_undefined", new basic_1.CharacterType(1, { qualifiedName: "ABAP_BOOL", ddicName: "ABAP_BOOL" }), "'-'"));
|
|
19372
19373
|
ret.push(this.buildConstant("abap_off", new basic_1.CharacterType(1, { qualifiedName: "ABAP_BOOL", ddicName: "ABAP_BOOL" }), "' '"));
|
|
19373
19374
|
ret.push(this.buildConstant("abap_on", new basic_1.CharacterType(1, { qualifiedName: "ABAP_BOOL", ddicName: "ABAP_BOOL" }), "'X'"));
|
|
19374
|
-
ret.push(this.buildConstant("col_background",
|
|
19375
|
-
ret.push(this.buildConstant("col_heading",
|
|
19376
|
-
ret.push(this.buildConstant("col_key",
|
|
19377
|
-
ret.push(this.buildConstant("col_negative",
|
|
19378
|
-
ret.push(this.buildConstant("col_group",
|
|
19379
|
-
ret.push(this.buildConstant("col_normal",
|
|
19380
|
-
ret.push(this.buildConstant("col_positive",
|
|
19381
|
-
ret.push(this.buildConstant("col_total",
|
|
19375
|
+
ret.push(this.buildConstant("col_background", basic_1.IntegerType.get(), "0"));
|
|
19376
|
+
ret.push(this.buildConstant("col_heading", basic_1.IntegerType.get(), "1"));
|
|
19377
|
+
ret.push(this.buildConstant("col_key", basic_1.IntegerType.get(), "4"));
|
|
19378
|
+
ret.push(this.buildConstant("col_negative", basic_1.IntegerType.get(), "6"));
|
|
19379
|
+
ret.push(this.buildConstant("col_group", basic_1.IntegerType.get(), "7"));
|
|
19380
|
+
ret.push(this.buildConstant("col_normal", basic_1.IntegerType.get(), "2"));
|
|
19381
|
+
ret.push(this.buildConstant("col_positive", basic_1.IntegerType.get(), "5"));
|
|
19382
|
+
ret.push(this.buildConstant("col_total", basic_1.IntegerType.get(), "3"));
|
|
19382
19383
|
ret.push(this.buildConstant("space", new basic_1.CharacterType(1, { derivedFromConstant: true }), "' '"));
|
|
19383
19384
|
for (const e of extras) {
|
|
19384
19385
|
const id = new tokens_1.Identifier(new position_1.Position(this.row++, 1), e);
|
|
@@ -19390,50 +19391,50 @@ class BuiltIn {
|
|
|
19390
19391
|
buildSY() {
|
|
19391
19392
|
const components = [];
|
|
19392
19393
|
// NOTE: fields must be in correct sequence for the syntax check
|
|
19393
|
-
components.push({ name: "index", type:
|
|
19394
|
-
components.push({ name: "pagno", type:
|
|
19395
|
-
components.push({ name: "tabix", type:
|
|
19396
|
-
components.push({ name: "tfill", type:
|
|
19397
|
-
components.push({ name: "tlopc", type:
|
|
19398
|
-
components.push({ name: "tmaxl", type:
|
|
19399
|
-
components.push({ name: "toccu", type:
|
|
19400
|
-
components.push({ name: "ttabc", type:
|
|
19401
|
-
components.push({ name: "tstis", type:
|
|
19402
|
-
components.push({ name: "ttabi", type:
|
|
19403
|
-
components.push({ name: "dbcnt", type:
|
|
19404
|
-
components.push({ name: "fdpos", type:
|
|
19405
|
-
components.push({ name: "colno", type:
|
|
19406
|
-
components.push({ name: "linct", type:
|
|
19407
|
-
components.push({ name: "linno", type:
|
|
19408
|
-
components.push({ name: "linsz", type:
|
|
19409
|
-
components.push({ name: "pagct", type:
|
|
19410
|
-
components.push({ name: "macol", type:
|
|
19411
|
-
components.push({ name: "marow", type:
|
|
19412
|
-
components.push({ name: "tleng", type:
|
|
19413
|
-
components.push({ name: "sfoff", type:
|
|
19414
|
-
components.push({ name: "willi", type:
|
|
19415
|
-
components.push({ name: "lilli", type:
|
|
19416
|
-
components.push({ name: "subrc", type:
|
|
19417
|
-
components.push({ name: "fleng", type:
|
|
19418
|
-
components.push({ name: "cucol", type:
|
|
19419
|
-
components.push({ name: "curow", type:
|
|
19420
|
-
components.push({ name: "lsind", type:
|
|
19421
|
-
components.push({ name: "listi", type:
|
|
19422
|
-
components.push({ name: "stepl", type:
|
|
19423
|
-
components.push({ name: "tpagi", type:
|
|
19424
|
-
components.push({ name: "winx1", type:
|
|
19425
|
-
components.push({ name: "winy1", type:
|
|
19426
|
-
components.push({ name: "winx2", type:
|
|
19427
|
-
components.push({ name: "winy2", type:
|
|
19428
|
-
components.push({ name: "winco", type:
|
|
19429
|
-
components.push({ name: "winro", type:
|
|
19430
|
-
components.push({ name: "windi", type:
|
|
19431
|
-
components.push({ name: "srows", type:
|
|
19432
|
-
components.push({ name: "scols", type:
|
|
19433
|
-
components.push({ name: "loopc", type:
|
|
19434
|
-
components.push({ name: "folen", type:
|
|
19435
|
-
components.push({ name: "fodec", type:
|
|
19436
|
-
components.push({ name: "tzone", type:
|
|
19394
|
+
components.push({ name: "index", type: basic_1.IntegerType.get() });
|
|
19395
|
+
components.push({ name: "pagno", type: basic_1.IntegerType.get() });
|
|
19396
|
+
components.push({ name: "tabix", type: basic_1.IntegerType.get() });
|
|
19397
|
+
components.push({ name: "tfill", type: basic_1.IntegerType.get() });
|
|
19398
|
+
components.push({ name: "tlopc", type: basic_1.IntegerType.get() });
|
|
19399
|
+
components.push({ name: "tmaxl", type: basic_1.IntegerType.get() });
|
|
19400
|
+
components.push({ name: "toccu", type: basic_1.IntegerType.get() });
|
|
19401
|
+
components.push({ name: "ttabc", type: basic_1.IntegerType.get() });
|
|
19402
|
+
components.push({ name: "tstis", type: basic_1.IntegerType.get() });
|
|
19403
|
+
components.push({ name: "ttabi", type: basic_1.IntegerType.get() });
|
|
19404
|
+
components.push({ name: "dbcnt", type: basic_1.IntegerType.get() });
|
|
19405
|
+
components.push({ name: "fdpos", type: basic_1.IntegerType.get() });
|
|
19406
|
+
components.push({ name: "colno", type: basic_1.IntegerType.get() });
|
|
19407
|
+
components.push({ name: "linct", type: basic_1.IntegerType.get() });
|
|
19408
|
+
components.push({ name: "linno", type: basic_1.IntegerType.get() });
|
|
19409
|
+
components.push({ name: "linsz", type: basic_1.IntegerType.get() });
|
|
19410
|
+
components.push({ name: "pagct", type: basic_1.IntegerType.get() });
|
|
19411
|
+
components.push({ name: "macol", type: basic_1.IntegerType.get() });
|
|
19412
|
+
components.push({ name: "marow", type: basic_1.IntegerType.get() });
|
|
19413
|
+
components.push({ name: "tleng", type: basic_1.IntegerType.get() });
|
|
19414
|
+
components.push({ name: "sfoff", type: basic_1.IntegerType.get() });
|
|
19415
|
+
components.push({ name: "willi", type: basic_1.IntegerType.get() });
|
|
19416
|
+
components.push({ name: "lilli", type: basic_1.IntegerType.get() });
|
|
19417
|
+
components.push({ name: "subrc", type: basic_1.IntegerType.get() });
|
|
19418
|
+
components.push({ name: "fleng", type: basic_1.IntegerType.get() });
|
|
19419
|
+
components.push({ name: "cucol", type: basic_1.IntegerType.get() });
|
|
19420
|
+
components.push({ name: "curow", type: basic_1.IntegerType.get() });
|
|
19421
|
+
components.push({ name: "lsind", type: basic_1.IntegerType.get() });
|
|
19422
|
+
components.push({ name: "listi", type: basic_1.IntegerType.get() });
|
|
19423
|
+
components.push({ name: "stepl", type: basic_1.IntegerType.get() });
|
|
19424
|
+
components.push({ name: "tpagi", type: basic_1.IntegerType.get() });
|
|
19425
|
+
components.push({ name: "winx1", type: basic_1.IntegerType.get() });
|
|
19426
|
+
components.push({ name: "winy1", type: basic_1.IntegerType.get() });
|
|
19427
|
+
components.push({ name: "winx2", type: basic_1.IntegerType.get() });
|
|
19428
|
+
components.push({ name: "winy2", type: basic_1.IntegerType.get() });
|
|
19429
|
+
components.push({ name: "winco", type: basic_1.IntegerType.get() });
|
|
19430
|
+
components.push({ name: "winro", type: basic_1.IntegerType.get() });
|
|
19431
|
+
components.push({ name: "windi", type: basic_1.IntegerType.get() });
|
|
19432
|
+
components.push({ name: "srows", type: basic_1.IntegerType.get() });
|
|
19433
|
+
components.push({ name: "scols", type: basic_1.IntegerType.get() });
|
|
19434
|
+
components.push({ name: "loopc", type: basic_1.IntegerType.get() });
|
|
19435
|
+
components.push({ name: "folen", type: basic_1.IntegerType.get() });
|
|
19436
|
+
components.push({ name: "fodec", type: basic_1.IntegerType.get() });
|
|
19437
|
+
components.push({ name: "tzone", type: basic_1.IntegerType.get() });
|
|
19437
19438
|
components.push({ name: "dayst", type: new basic_1.CharacterType(1) });
|
|
19438
19439
|
components.push({ name: "ftype", type: new basic_1.CharacterType(1) });
|
|
19439
19440
|
components.push({ name: "appli", type: new basic_1.HexType(2) });
|
|
@@ -19444,7 +19445,7 @@ class BuiltIn {
|
|
|
19444
19445
|
components.push({ name: "ctype", type: new basic_1.CharacterType(1) });
|
|
19445
19446
|
components.push({ name: "input", type: new basic_1.CharacterType(1, { qualifiedName: "sy-input" }) });
|
|
19446
19447
|
components.push({ name: "langu", type: new basic_1.CharacterType(1, { qualifiedName: "sy-langu", conversionExit: "ISOLA" }) });
|
|
19447
|
-
components.push({ name: "modno", type:
|
|
19448
|
+
components.push({ name: "modno", type: basic_1.IntegerType.get() });
|
|
19448
19449
|
components.push({ name: "batch", type: new basic_1.CharacterType(1, { qualifiedName: "sy-batch" }) });
|
|
19449
19450
|
components.push({ name: "binpt", type: new basic_1.CharacterType(1, { qualifiedName: "sy-binpt" }) });
|
|
19450
19451
|
components.push({ name: "calld", type: new basic_1.CharacterType(1, { qualifiedName: "sy-calld" }) });
|
|
@@ -19454,7 +19455,7 @@ class BuiltIn {
|
|
|
19454
19455
|
components.push({ name: "pri40", type: new basic_1.CharacterType(1) });
|
|
19455
19456
|
components.push({ name: "rstrt", type: new basic_1.CharacterType(1) });
|
|
19456
19457
|
components.push({ name: "wtitl", type: new basic_1.CharacterType(1, { qualifiedName: "sy-wtitl" }) });
|
|
19457
|
-
components.push({ name: "cpage", type:
|
|
19458
|
+
components.push({ name: "cpage", type: basic_1.IntegerType.get() });
|
|
19458
19459
|
components.push({ name: "dbnam", type: new basic_1.CharacterType(20, { qualifiedName: "sy-dbnam" }) });
|
|
19459
19460
|
components.push({ name: "mandt", type: new basic_1.CharacterType(3, { qualifiedName: "sy-mandt" }) });
|
|
19460
19461
|
components.push({ name: "prefx", type: new basic_1.CharacterType(3) });
|
|
@@ -19552,8 +19553,8 @@ class BuiltIn {
|
|
|
19552
19553
|
components.push({ name: "oncom", type: new basic_1.CharacterType(1) });
|
|
19553
19554
|
components.push({ name: "vline", type: new basic_1.CharacterType(1, { qualifiedName: "sy-vline" }) });
|
|
19554
19555
|
components.push({ name: "winsl", type: new basic_1.CharacterType(79) });
|
|
19555
|
-
components.push({ name: "staco", type:
|
|
19556
|
-
components.push({ name: "staro", type:
|
|
19556
|
+
components.push({ name: "staco", type: basic_1.IntegerType.get() });
|
|
19557
|
+
components.push({ name: "staro", type: basic_1.IntegerType.get() });
|
|
19557
19558
|
components.push({ name: "datar", type: new basic_1.CharacterType(1, { qualifiedName: "sy-datar" }) });
|
|
19558
19559
|
components.push({ name: "host", type: new basic_1.CharacterType(32, { qualifiedName: "sy-host" }) });
|
|
19559
19560
|
components.push({ name: "locdb", type: new basic_1.CharacterType(1) });
|
|
@@ -19596,7 +19597,7 @@ BuiltIn.methods = [
|
|
|
19596
19597
|
mandatory: {
|
|
19597
19598
|
"val": new basic_1.FloatType(),
|
|
19598
19599
|
},
|
|
19599
|
-
return:
|
|
19600
|
+
return: basic_1.IntegerType.get(),
|
|
19600
19601
|
},
|
|
19601
19602
|
{
|
|
19602
19603
|
name: "ACOS",
|
|
@@ -19622,7 +19623,7 @@ BuiltIn.methods = [
|
|
|
19622
19623
|
{
|
|
19623
19624
|
name: "BIT-SET",
|
|
19624
19625
|
mandatory: {
|
|
19625
|
-
"val":
|
|
19626
|
+
"val": basic_1.IntegerType.get(),
|
|
19626
19627
|
},
|
|
19627
19628
|
return: new basic_1.XStringType(),
|
|
19628
19629
|
version: version_1.Version.v702,
|
|
@@ -19632,7 +19633,7 @@ BuiltIn.methods = [
|
|
|
19632
19633
|
mandatory: {
|
|
19633
19634
|
"val": new basic_1.CLikeType(),
|
|
19634
19635
|
},
|
|
19635
|
-
return:
|
|
19636
|
+
return: basic_1.StringType.get(),
|
|
19636
19637
|
version: version_1.Version.v702,
|
|
19637
19638
|
},
|
|
19638
19639
|
{
|
|
@@ -19641,7 +19642,7 @@ BuiltIn.methods = [
|
|
|
19641
19642
|
"bool": new basic_1.CLikeType(),
|
|
19642
19643
|
},
|
|
19643
19644
|
optional: {
|
|
19644
|
-
"bit":
|
|
19645
|
+
"bit": basic_1.IntegerType.get(),
|
|
19645
19646
|
},
|
|
19646
19647
|
return: new basic_1.XStringType(),
|
|
19647
19648
|
version: version_1.Version.v702,
|
|
@@ -19651,18 +19652,18 @@ BuiltIn.methods = [
|
|
|
19651
19652
|
mandatory: {
|
|
19652
19653
|
"val": new basic_1.FloatType(),
|
|
19653
19654
|
},
|
|
19654
|
-
return:
|
|
19655
|
+
return: basic_1.IntegerType.get(),
|
|
19655
19656
|
},
|
|
19656
19657
|
{
|
|
19657
19658
|
name: "CHAR_OFF",
|
|
19658
19659
|
mandatory: {
|
|
19659
19660
|
"val": new basic_1.CLikeType(),
|
|
19660
|
-
"add":
|
|
19661
|
+
"add": basic_1.IntegerType.get(),
|
|
19661
19662
|
},
|
|
19662
19663
|
optional: {
|
|
19663
|
-
"off":
|
|
19664
|
+
"off": basic_1.IntegerType.get(),
|
|
19664
19665
|
},
|
|
19665
|
-
return:
|
|
19666
|
+
return: basic_1.IntegerType.get(),
|
|
19666
19667
|
version: version_1.Version.v702,
|
|
19667
19668
|
},
|
|
19668
19669
|
{
|
|
@@ -19670,7 +19671,7 @@ BuiltIn.methods = [
|
|
|
19670
19671
|
mandatory: {
|
|
19671
19672
|
"val": new basic_1.CLikeType(),
|
|
19672
19673
|
},
|
|
19673
|
-
return:
|
|
19674
|
+
return: basic_1.IntegerType.get(),
|
|
19674
19675
|
},
|
|
19675
19676
|
{
|
|
19676
19677
|
name: "CMAX",
|
|
@@ -19686,7 +19687,7 @@ BuiltIn.methods = [
|
|
|
19686
19687
|
"val7": new basic_1.CLikeType(),
|
|
19687
19688
|
"val9": new basic_1.CLikeType(),
|
|
19688
19689
|
},
|
|
19689
|
-
return:
|
|
19690
|
+
return: basic_1.StringType.get(),
|
|
19690
19691
|
version: version_1.Version.v702,
|
|
19691
19692
|
},
|
|
19692
19693
|
{
|
|
@@ -19703,7 +19704,7 @@ BuiltIn.methods = [
|
|
|
19703
19704
|
"val7": new basic_1.CLikeType(),
|
|
19704
19705
|
"val9": new basic_1.CLikeType(),
|
|
19705
19706
|
},
|
|
19706
|
-
return:
|
|
19707
|
+
return: basic_1.StringType.get(),
|
|
19707
19708
|
version: version_1.Version.v702,
|
|
19708
19709
|
},
|
|
19709
19710
|
{
|
|
@@ -19714,7 +19715,7 @@ BuiltIn.methods = [
|
|
|
19714
19715
|
optional: {
|
|
19715
19716
|
"sep": new basic_1.CLikeType(),
|
|
19716
19717
|
},
|
|
19717
|
-
return:
|
|
19718
|
+
return: basic_1.StringType.get(),
|
|
19718
19719
|
version: version_1.Version.v702,
|
|
19719
19720
|
},
|
|
19720
19721
|
{
|
|
@@ -19727,7 +19728,7 @@ BuiltIn.methods = [
|
|
|
19727
19728
|
"from": new basic_1.CLikeType(),
|
|
19728
19729
|
"to": new basic_1.CLikeType(),
|
|
19729
19730
|
},
|
|
19730
|
-
return:
|
|
19731
|
+
return: basic_1.StringType.get(),
|
|
19731
19732
|
version: version_1.Version.v702,
|
|
19732
19733
|
},
|
|
19733
19734
|
{
|
|
@@ -19742,9 +19743,9 @@ BuiltIn.methods = [
|
|
|
19742
19743
|
"regex": new basic_1.CLikeType(),
|
|
19743
19744
|
"pcre": new basic_1.CLikeType(),
|
|
19744
19745
|
"case": new basic_1.CharacterType(1),
|
|
19745
|
-
"off":
|
|
19746
|
-
"len":
|
|
19747
|
-
"occ":
|
|
19746
|
+
"off": basic_1.IntegerType.get(),
|
|
19747
|
+
"len": basic_1.IntegerType.get(),
|
|
19748
|
+
"occ": basic_1.IntegerType.get(),
|
|
19748
19749
|
},
|
|
19749
19750
|
return: new basic_1.CharacterType(1),
|
|
19750
19751
|
predicate: true,
|
|
@@ -19759,9 +19760,9 @@ BuiltIn.methods = [
|
|
|
19759
19760
|
"sub": new basic_1.CLikeType(),
|
|
19760
19761
|
"start": new basic_1.CLikeType(),
|
|
19761
19762
|
"end": new basic_1.CLikeType(),
|
|
19762
|
-
"off":
|
|
19763
|
-
"len":
|
|
19764
|
-
"occ":
|
|
19763
|
+
"off": basic_1.IntegerType.get(),
|
|
19764
|
+
"len": basic_1.IntegerType.get(),
|
|
19765
|
+
"occ": basic_1.IntegerType.get(),
|
|
19765
19766
|
},
|
|
19766
19767
|
predicate: true,
|
|
19767
19768
|
return: new basic_1.CharacterType(1), version: version_1.Version.v702,
|
|
@@ -19775,9 +19776,9 @@ BuiltIn.methods = [
|
|
|
19775
19776
|
"sub": new basic_1.CLikeType(),
|
|
19776
19777
|
"start": new basic_1.CLikeType(),
|
|
19777
19778
|
"end": new basic_1.CLikeType(),
|
|
19778
|
-
"off":
|
|
19779
|
-
"len":
|
|
19780
|
-
"occ":
|
|
19779
|
+
"off": basic_1.IntegerType.get(),
|
|
19780
|
+
"len": basic_1.IntegerType.get(),
|
|
19781
|
+
"occ": basic_1.IntegerType.get(),
|
|
19781
19782
|
},
|
|
19782
19783
|
return: new basic_1.CharacterType(1),
|
|
19783
19784
|
predicate: true,
|
|
@@ -19807,10 +19808,10 @@ BuiltIn.methods = [
|
|
|
19807
19808
|
"regex": new basic_1.CLikeType(),
|
|
19808
19809
|
"pcre": new basic_1.CLikeType(),
|
|
19809
19810
|
"case": new basic_1.CharacterType(1),
|
|
19810
|
-
"off":
|
|
19811
|
-
"len":
|
|
19811
|
+
"off": basic_1.IntegerType.get(),
|
|
19812
|
+
"len": basic_1.IntegerType.get(),
|
|
19812
19813
|
},
|
|
19813
|
-
return:
|
|
19814
|
+
return: basic_1.IntegerType.get(),
|
|
19814
19815
|
version: version_1.Version.v702,
|
|
19815
19816
|
},
|
|
19816
19817
|
{
|
|
@@ -19823,10 +19824,10 @@ BuiltIn.methods = [
|
|
|
19823
19824
|
"regex": new basic_1.CLikeType(),
|
|
19824
19825
|
"pcre": new basic_1.CLikeType(),
|
|
19825
19826
|
"case": new basic_1.CharacterType(1),
|
|
19826
|
-
"off":
|
|
19827
|
-
"len":
|
|
19827
|
+
"off": basic_1.IntegerType.get(),
|
|
19828
|
+
"len": basic_1.IntegerType.get(),
|
|
19828
19829
|
},
|
|
19829
|
-
return:
|
|
19830
|
+
return: basic_1.IntegerType.get(),
|
|
19830
19831
|
version: version_1.Version.v702,
|
|
19831
19832
|
},
|
|
19832
19833
|
{
|
|
@@ -19839,10 +19840,10 @@ BuiltIn.methods = [
|
|
|
19839
19840
|
"regex": new basic_1.CLikeType(),
|
|
19840
19841
|
"pcre": new basic_1.CLikeType(),
|
|
19841
19842
|
"case": new basic_1.CharacterType(1),
|
|
19842
|
-
"off":
|
|
19843
|
-
"len":
|
|
19843
|
+
"off": basic_1.IntegerType.get(),
|
|
19844
|
+
"len": basic_1.IntegerType.get(),
|
|
19844
19845
|
},
|
|
19845
|
-
return:
|
|
19846
|
+
return: basic_1.IntegerType.get(),
|
|
19846
19847
|
version: version_1.Version.v702,
|
|
19847
19848
|
},
|
|
19848
19849
|
{
|
|
@@ -19850,7 +19851,7 @@ BuiltIn.methods = [
|
|
|
19850
19851
|
mandatory: {
|
|
19851
19852
|
"val": new basic_1.CLikeType(),
|
|
19852
19853
|
},
|
|
19853
|
-
return:
|
|
19854
|
+
return: basic_1.IntegerType.get(),
|
|
19854
19855
|
},
|
|
19855
19856
|
{
|
|
19856
19857
|
name: "DISTANCE",
|
|
@@ -19858,7 +19859,7 @@ BuiltIn.methods = [
|
|
|
19858
19859
|
"val1": new basic_1.CLikeType(),
|
|
19859
19860
|
"val2": new basic_1.CLikeType(),
|
|
19860
19861
|
},
|
|
19861
|
-
return:
|
|
19862
|
+
return: basic_1.IntegerType.get(),
|
|
19862
19863
|
version: version_1.Version.v702,
|
|
19863
19864
|
},
|
|
19864
19865
|
{
|
|
@@ -19867,7 +19868,7 @@ BuiltIn.methods = [
|
|
|
19867
19868
|
"val": new basic_1.CLikeType(),
|
|
19868
19869
|
"format": new basic_1.CLikeType(),
|
|
19869
19870
|
},
|
|
19870
|
-
return:
|
|
19871
|
+
return: basic_1.StringType.get(),
|
|
19871
19872
|
version: version_1.Version.v702,
|
|
19872
19873
|
},
|
|
19873
19874
|
{
|
|
@@ -19887,11 +19888,11 @@ BuiltIn.methods = [
|
|
|
19887
19888
|
"regex": new basic_1.CLikeType(),
|
|
19888
19889
|
"pcre": new basic_1.CLikeType(),
|
|
19889
19890
|
"case": new basic_1.CharacterType(1),
|
|
19890
|
-
"off":
|
|
19891
|
-
"len":
|
|
19892
|
-
"occ":
|
|
19891
|
+
"off": basic_1.IntegerType.get(),
|
|
19892
|
+
"len": basic_1.IntegerType.get(),
|
|
19893
|
+
"occ": basic_1.IntegerType.get(),
|
|
19893
19894
|
},
|
|
19894
|
-
return:
|
|
19895
|
+
return: basic_1.IntegerType.get(),
|
|
19895
19896
|
version: version_1.Version.v702,
|
|
19896
19897
|
},
|
|
19897
19898
|
{
|
|
@@ -19901,11 +19902,11 @@ BuiltIn.methods = [
|
|
|
19901
19902
|
},
|
|
19902
19903
|
optional: {
|
|
19903
19904
|
"sub": new basic_1.CLikeType(),
|
|
19904
|
-
"off":
|
|
19905
|
-
"len":
|
|
19906
|
-
"occ":
|
|
19905
|
+
"off": basic_1.IntegerType.get(),
|
|
19906
|
+
"len": basic_1.IntegerType.get(),
|
|
19907
|
+
"occ": basic_1.IntegerType.get(),
|
|
19907
19908
|
},
|
|
19908
|
-
return:
|
|
19909
|
+
return: basic_1.IntegerType.get(),
|
|
19909
19910
|
version: version_1.Version.v702,
|
|
19910
19911
|
},
|
|
19911
19912
|
{
|
|
@@ -19915,11 +19916,11 @@ BuiltIn.methods = [
|
|
|
19915
19916
|
},
|
|
19916
19917
|
optional: {
|
|
19917
19918
|
"sub": new basic_1.CLikeType(),
|
|
19918
|
-
"off":
|
|
19919
|
-
"len":
|
|
19920
|
-
"occ":
|
|
19919
|
+
"off": basic_1.IntegerType.get(),
|
|
19920
|
+
"len": basic_1.IntegerType.get(),
|
|
19921
|
+
"occ": basic_1.IntegerType.get(),
|
|
19921
19922
|
},
|
|
19922
|
-
return:
|
|
19923
|
+
return: basic_1.IntegerType.get(),
|
|
19923
19924
|
version: version_1.Version.v702,
|
|
19924
19925
|
},
|
|
19925
19926
|
{
|
|
@@ -19932,11 +19933,11 @@ BuiltIn.methods = [
|
|
|
19932
19933
|
"regex": new basic_1.CLikeType(),
|
|
19933
19934
|
"pcre": new basic_1.CLikeType(),
|
|
19934
19935
|
"case": new basic_1.CharacterType(1),
|
|
19935
|
-
"off":
|
|
19936
|
-
"len":
|
|
19937
|
-
"occ":
|
|
19936
|
+
"off": basic_1.IntegerType.get(),
|
|
19937
|
+
"len": basic_1.IntegerType.get(),
|
|
19938
|
+
"occ": basic_1.IntegerType.get(),
|
|
19938
19939
|
},
|
|
19939
|
-
return:
|
|
19940
|
+
return: basic_1.IntegerType.get(),
|
|
19940
19941
|
version: version_1.Version.v702,
|
|
19941
19942
|
},
|
|
19942
19943
|
{
|
|
@@ -19944,14 +19945,14 @@ BuiltIn.methods = [
|
|
|
19944
19945
|
mandatory: {
|
|
19945
19946
|
"val": new basic_1.FloatType(),
|
|
19946
19947
|
},
|
|
19947
|
-
return:
|
|
19948
|
+
return: basic_1.IntegerType.get(),
|
|
19948
19949
|
},
|
|
19949
19950
|
{
|
|
19950
19951
|
name: "FRAC",
|
|
19951
19952
|
mandatory: {
|
|
19952
19953
|
"val": new basic_1.FloatType(),
|
|
19953
19954
|
},
|
|
19954
|
-
return:
|
|
19955
|
+
return: basic_1.IntegerType.get(),
|
|
19955
19956
|
},
|
|
19956
19957
|
{
|
|
19957
19958
|
name: "FROM_MIXED",
|
|
@@ -19960,10 +19961,10 @@ BuiltIn.methods = [
|
|
|
19960
19961
|
},
|
|
19961
19962
|
optional: {
|
|
19962
19963
|
"case": new basic_1.CharacterType(1),
|
|
19963
|
-
"sep":
|
|
19964
|
-
"min":
|
|
19964
|
+
"sep": basic_1.IntegerType.get(),
|
|
19965
|
+
"min": basic_1.IntegerType.get(),
|
|
19965
19966
|
},
|
|
19966
|
-
return:
|
|
19967
|
+
return: basic_1.StringType.get(),
|
|
19967
19968
|
version: version_1.Version.v702,
|
|
19968
19969
|
},
|
|
19969
19970
|
{
|
|
@@ -19973,9 +19974,9 @@ BuiltIn.methods = [
|
|
|
19973
19974
|
"sub": new basic_1.CLikeType(),
|
|
19974
19975
|
},
|
|
19975
19976
|
optional: {
|
|
19976
|
-
"off":
|
|
19977
|
+
"off": basic_1.IntegerType.get(),
|
|
19977
19978
|
},
|
|
19978
|
-
return:
|
|
19979
|
+
return: basic_1.StringType.get(),
|
|
19979
19980
|
version: version_1.Version.v702,
|
|
19980
19981
|
},
|
|
19981
19982
|
{
|
|
@@ -19984,7 +19985,7 @@ BuiltIn.methods = [
|
|
|
19984
19985
|
"base": new basic_1.FloatType(),
|
|
19985
19986
|
"exp": new basic_1.FloatType(),
|
|
19986
19987
|
},
|
|
19987
|
-
return:
|
|
19988
|
+
return: basic_1.IntegerType.get(),
|
|
19988
19989
|
version: version_1.Version.v740sp02,
|
|
19989
19990
|
},
|
|
19990
19991
|
{
|
|
@@ -20001,7 +20002,7 @@ BuiltIn.methods = [
|
|
|
20001
20002
|
mandatory: {
|
|
20002
20003
|
"val": new basic_1.CLikeType(),
|
|
20003
20004
|
},
|
|
20004
|
-
return:
|
|
20005
|
+
return: basic_1.IntegerType.get(),
|
|
20005
20006
|
version: version_1.Version.v740sp02,
|
|
20006
20007
|
},
|
|
20007
20008
|
{
|
|
@@ -20009,7 +20010,7 @@ BuiltIn.methods = [
|
|
|
20009
20010
|
mandatory: {
|
|
20010
20011
|
"val": new basic_1.TableType(new basic_1.AnyType(), { withHeader: false, keyType: basic_1.TableKeyType.default }),
|
|
20011
20012
|
},
|
|
20012
|
-
return:
|
|
20013
|
+
return: basic_1.IntegerType.get(),
|
|
20013
20014
|
},
|
|
20014
20015
|
{
|
|
20015
20016
|
name: "LOG",
|
|
@@ -20033,9 +20034,9 @@ BuiltIn.methods = [
|
|
|
20033
20034
|
"case": new basic_1.CharacterType(1),
|
|
20034
20035
|
"regex": new basic_1.CLikeType(),
|
|
20035
20036
|
"pcre": new basic_1.CLikeType(),
|
|
20036
|
-
"occ":
|
|
20037
|
+
"occ": basic_1.IntegerType.get(),
|
|
20037
20038
|
},
|
|
20038
|
-
return:
|
|
20039
|
+
return: basic_1.StringType.get(),
|
|
20039
20040
|
version: version_1.Version.v702,
|
|
20040
20041
|
},
|
|
20041
20042
|
{
|
|
@@ -20047,8 +20048,8 @@ BuiltIn.methods = [
|
|
|
20047
20048
|
"case": new basic_1.CharacterType(1),
|
|
20048
20049
|
"regex": new basic_1.CLikeType(),
|
|
20049
20050
|
"pcre": new basic_1.CLikeType(),
|
|
20050
|
-
"off":
|
|
20051
|
-
"len":
|
|
20051
|
+
"off": basic_1.IntegerType.get(),
|
|
20052
|
+
"len": basic_1.IntegerType.get(),
|
|
20052
20053
|
},
|
|
20053
20054
|
return: new basic_1.CharacterType(1),
|
|
20054
20055
|
predicate: true,
|
|
@@ -20069,7 +20070,7 @@ BuiltIn.methods = [
|
|
|
20069
20070
|
"val8": new basic_1.CLikeType(),
|
|
20070
20071
|
"val9": new basic_1.CLikeType(),
|
|
20071
20072
|
},
|
|
20072
|
-
return:
|
|
20073
|
+
return: basic_1.IntegerType.get(),
|
|
20073
20074
|
version: version_1.Version.v702,
|
|
20074
20075
|
},
|
|
20075
20076
|
{
|
|
@@ -20087,7 +20088,7 @@ BuiltIn.methods = [
|
|
|
20087
20088
|
"val8": new basic_1.CLikeType(),
|
|
20088
20089
|
"val9": new basic_1.CLikeType(),
|
|
20089
20090
|
},
|
|
20090
|
-
return:
|
|
20091
|
+
return: basic_1.IntegerType.get(),
|
|
20091
20092
|
version: version_1.Version.v702,
|
|
20092
20093
|
},
|
|
20093
20094
|
{
|
|
@@ -20095,15 +20096,15 @@ BuiltIn.methods = [
|
|
|
20095
20096
|
mandatory: {
|
|
20096
20097
|
"val": new basic_1.CLikeType(),
|
|
20097
20098
|
},
|
|
20098
|
-
return:
|
|
20099
|
+
return: basic_1.IntegerType.get(),
|
|
20099
20100
|
},
|
|
20100
20101
|
{
|
|
20101
20102
|
name: "REPEAT",
|
|
20102
20103
|
mandatory: {
|
|
20103
20104
|
"val": new basic_1.CLikeType(),
|
|
20104
|
-
"occ":
|
|
20105
|
+
"occ": basic_1.IntegerType.get(),
|
|
20105
20106
|
},
|
|
20106
|
-
return:
|
|
20107
|
+
return: basic_1.StringType.get(),
|
|
20107
20108
|
version: version_1.Version.v702,
|
|
20108
20109
|
},
|
|
20109
20110
|
{
|
|
@@ -20117,11 +20118,11 @@ BuiltIn.methods = [
|
|
|
20117
20118
|
"regex": new basic_1.CLikeType(),
|
|
20118
20119
|
"pcre": new basic_1.CLikeType(),
|
|
20119
20120
|
"case": new basic_1.CharacterType(1),
|
|
20120
|
-
"off":
|
|
20121
|
-
"len":
|
|
20122
|
-
"occ":
|
|
20121
|
+
"off": basic_1.IntegerType.get(),
|
|
20122
|
+
"len": basic_1.IntegerType.get(),
|
|
20123
|
+
"occ": basic_1.IntegerType.get(),
|
|
20123
20124
|
},
|
|
20124
|
-
return:
|
|
20125
|
+
return: basic_1.StringType.get(),
|
|
20125
20126
|
version: version_1.Version.v702,
|
|
20126
20127
|
},
|
|
20127
20128
|
{
|
|
@@ -20130,9 +20131,9 @@ BuiltIn.methods = [
|
|
|
20130
20131
|
"val": new basic_1.FloatType(),
|
|
20131
20132
|
},
|
|
20132
20133
|
optional: {
|
|
20133
|
-
"dec":
|
|
20134
|
-
"prec":
|
|
20135
|
-
"mode":
|
|
20134
|
+
"dec": basic_1.IntegerType.get(),
|
|
20135
|
+
"prec": basic_1.IntegerType.get(),
|
|
20136
|
+
"mode": basic_1.IntegerType.get(),
|
|
20136
20137
|
},
|
|
20137
20138
|
return: new basic_1.FloatType(),
|
|
20138
20139
|
version: version_1.Version.v702,
|
|
@@ -20142,7 +20143,7 @@ BuiltIn.methods = [
|
|
|
20142
20143
|
mandatory: {
|
|
20143
20144
|
"val": new basic_1.CLikeType(),
|
|
20144
20145
|
},
|
|
20145
|
-
return:
|
|
20146
|
+
return: basic_1.StringType.get(),
|
|
20146
20147
|
version: version_1.Version.v702,
|
|
20147
20148
|
},
|
|
20148
20149
|
{
|
|
@@ -20151,24 +20152,24 @@ BuiltIn.methods = [
|
|
|
20151
20152
|
"val": new basic_1.FloatType(),
|
|
20152
20153
|
},
|
|
20153
20154
|
optional: {
|
|
20154
|
-
"dec":
|
|
20155
|
-
"prec":
|
|
20156
|
-
"mode":
|
|
20155
|
+
"dec": basic_1.IntegerType.get(),
|
|
20156
|
+
"prec": basic_1.IntegerType.get(),
|
|
20157
|
+
"mode": basic_1.IntegerType.get(),
|
|
20157
20158
|
},
|
|
20158
|
-
return:
|
|
20159
|
+
return: basic_1.IntegerType.get(),
|
|
20159
20160
|
version: version_1.Version.v702,
|
|
20160
20161
|
},
|
|
20161
20162
|
{
|
|
20162
20163
|
name: "SEGMENT",
|
|
20163
20164
|
mandatory: {
|
|
20164
20165
|
"val": new basic_1.CLikeType(),
|
|
20165
|
-
"index":
|
|
20166
|
+
"index": basic_1.IntegerType.get(),
|
|
20166
20167
|
},
|
|
20167
20168
|
optional: {
|
|
20168
20169
|
"sep": new basic_1.CLikeType(),
|
|
20169
20170
|
"space": new basic_1.CLikeType(),
|
|
20170
20171
|
},
|
|
20171
|
-
return:
|
|
20172
|
+
return: basic_1.StringType.get(),
|
|
20172
20173
|
version: version_1.Version.v702,
|
|
20173
20174
|
},
|
|
20174
20175
|
{
|
|
@@ -20178,10 +20179,10 @@ BuiltIn.methods = [
|
|
|
20178
20179
|
},
|
|
20179
20180
|
optional: {
|
|
20180
20181
|
"sub": new basic_1.CLikeType(),
|
|
20181
|
-
"places":
|
|
20182
|
-
"circular":
|
|
20182
|
+
"places": basic_1.IntegerType.get(),
|
|
20183
|
+
"circular": basic_1.IntegerType.get(),
|
|
20183
20184
|
},
|
|
20184
|
-
return:
|
|
20185
|
+
return: basic_1.StringType.get(),
|
|
20185
20186
|
version: version_1.Version.v702,
|
|
20186
20187
|
},
|
|
20187
20188
|
{
|
|
@@ -20191,10 +20192,10 @@ BuiltIn.methods = [
|
|
|
20191
20192
|
},
|
|
20192
20193
|
optional: {
|
|
20193
20194
|
"sub": new basic_1.CLikeType(),
|
|
20194
|
-
"places":
|
|
20195
|
-
"circular":
|
|
20195
|
+
"places": basic_1.IntegerType.get(),
|
|
20196
|
+
"circular": basic_1.IntegerType.get(),
|
|
20196
20197
|
},
|
|
20197
|
-
return:
|
|
20198
|
+
return: basic_1.StringType.get(),
|
|
20198
20199
|
version: version_1.Version.v702,
|
|
20199
20200
|
},
|
|
20200
20201
|
{
|
|
@@ -20202,7 +20203,7 @@ BuiltIn.methods = [
|
|
|
20202
20203
|
mandatory: {
|
|
20203
20204
|
"val": new basic_1.FloatType(),
|
|
20204
20205
|
},
|
|
20205
|
-
return:
|
|
20206
|
+
return: basic_1.IntegerType.get(),
|
|
20206
20207
|
},
|
|
20207
20208
|
{
|
|
20208
20209
|
name: "SIN",
|
|
@@ -20230,7 +20231,7 @@ BuiltIn.methods = [
|
|
|
20230
20231
|
mandatory: {
|
|
20231
20232
|
"val": new basic_1.CLikeType(),
|
|
20232
20233
|
},
|
|
20233
|
-
return:
|
|
20234
|
+
return: basic_1.IntegerType.get(),
|
|
20234
20235
|
},
|
|
20235
20236
|
{
|
|
20236
20237
|
name: "SUBSTRING",
|
|
@@ -20238,10 +20239,10 @@ BuiltIn.methods = [
|
|
|
20238
20239
|
"val": new basic_1.CLikeType(),
|
|
20239
20240
|
},
|
|
20240
20241
|
optional: {
|
|
20241
|
-
"off":
|
|
20242
|
-
"len":
|
|
20242
|
+
"off": basic_1.IntegerType.get(),
|
|
20243
|
+
"len": basic_1.IntegerType.get(),
|
|
20243
20244
|
},
|
|
20244
|
-
return:
|
|
20245
|
+
return: basic_1.StringType.get(),
|
|
20245
20246
|
version: version_1.Version.v702,
|
|
20246
20247
|
},
|
|
20247
20248
|
{
|
|
@@ -20254,10 +20255,10 @@ BuiltIn.methods = [
|
|
|
20254
20255
|
"regex": new basic_1.CLikeType(),
|
|
20255
20256
|
"pcre": new basic_1.CLikeType(),
|
|
20256
20257
|
"case": new basic_1.CharacterType(1),
|
|
20257
|
-
"len":
|
|
20258
|
-
"occ":
|
|
20258
|
+
"len": basic_1.IntegerType.get(),
|
|
20259
|
+
"occ": basic_1.IntegerType.get(),
|
|
20259
20260
|
},
|
|
20260
|
-
return:
|
|
20261
|
+
return: basic_1.StringType.get(),
|
|
20261
20262
|
version: version_1.Version.v702,
|
|
20262
20263
|
},
|
|
20263
20264
|
{
|
|
@@ -20270,10 +20271,10 @@ BuiltIn.methods = [
|
|
|
20270
20271
|
"regex": new basic_1.CLikeType(),
|
|
20271
20272
|
"pcre": new basic_1.CLikeType(),
|
|
20272
20273
|
"case": new basic_1.CharacterType(1),
|
|
20273
|
-
"len":
|
|
20274
|
-
"occ":
|
|
20274
|
+
"len": basic_1.IntegerType.get(),
|
|
20275
|
+
"occ": basic_1.IntegerType.get(),
|
|
20275
20276
|
},
|
|
20276
|
-
return:
|
|
20277
|
+
return: basic_1.StringType.get(),
|
|
20277
20278
|
version: version_1.Version.v702,
|
|
20278
20279
|
},
|
|
20279
20280
|
{
|
|
@@ -20286,10 +20287,10 @@ BuiltIn.methods = [
|
|
|
20286
20287
|
"regex": new basic_1.CLikeType(),
|
|
20287
20288
|
"pcre": new basic_1.CLikeType(),
|
|
20288
20289
|
"case": new basic_1.CharacterType(1),
|
|
20289
|
-
"len":
|
|
20290
|
-
"occ":
|
|
20290
|
+
"len": basic_1.IntegerType.get(),
|
|
20291
|
+
"occ": basic_1.IntegerType.get(),
|
|
20291
20292
|
},
|
|
20292
|
-
return:
|
|
20293
|
+
return: basic_1.StringType.get(),
|
|
20293
20294
|
version: version_1.Version.v702,
|
|
20294
20295
|
},
|
|
20295
20296
|
{
|
|
@@ -20302,10 +20303,10 @@ BuiltIn.methods = [
|
|
|
20302
20303
|
"regex": new basic_1.CLikeType(),
|
|
20303
20304
|
"pcre": new basic_1.CLikeType(),
|
|
20304
20305
|
"case": new basic_1.CharacterType(1),
|
|
20305
|
-
"len":
|
|
20306
|
-
"occ":
|
|
20306
|
+
"len": basic_1.IntegerType.get(),
|
|
20307
|
+
"occ": basic_1.IntegerType.get(),
|
|
20307
20308
|
},
|
|
20308
|
-
return:
|
|
20309
|
+
return: basic_1.StringType.get(),
|
|
20309
20310
|
version: version_1.Version.v702,
|
|
20310
20311
|
},
|
|
20311
20312
|
{
|
|
@@ -20327,7 +20328,7 @@ BuiltIn.methods = [
|
|
|
20327
20328
|
mandatory: {
|
|
20328
20329
|
"val": new basic_1.CLikeType(),
|
|
20329
20330
|
},
|
|
20330
|
-
return:
|
|
20331
|
+
return: basic_1.StringType.get(),
|
|
20331
20332
|
version: version_1.Version.v702,
|
|
20332
20333
|
},
|
|
20333
20334
|
{
|
|
@@ -20337,16 +20338,16 @@ BuiltIn.methods = [
|
|
|
20337
20338
|
},
|
|
20338
20339
|
optional: {
|
|
20339
20340
|
"case": new basic_1.CharacterType(1),
|
|
20340
|
-
"sep":
|
|
20341
|
-
"min":
|
|
20341
|
+
"sep": basic_1.IntegerType.get(),
|
|
20342
|
+
"min": basic_1.IntegerType.get(),
|
|
20342
20343
|
},
|
|
20343
|
-
return:
|
|
20344
|
+
return: basic_1.StringType.get(),
|
|
20344
20345
|
version: version_1.Version.v702,
|
|
20345
20346
|
},
|
|
20346
20347
|
{
|
|
20347
20348
|
name: "TO_UPPER",
|
|
20348
20349
|
mandatory: { "val": new basic_1.CLikeType() },
|
|
20349
|
-
return:
|
|
20350
|
+
return: basic_1.StringType.get(),
|
|
20350
20351
|
version: version_1.Version.v702,
|
|
20351
20352
|
},
|
|
20352
20353
|
{
|
|
@@ -20356,7 +20357,7 @@ BuiltIn.methods = [
|
|
|
20356
20357
|
"from": new basic_1.CLikeType(),
|
|
20357
20358
|
"to": new basic_1.CLikeType(),
|
|
20358
20359
|
},
|
|
20359
|
-
return:
|
|
20360
|
+
return: basic_1.StringType.get(),
|
|
20360
20361
|
version: version_1.Version.v702,
|
|
20361
20362
|
},
|
|
20362
20363
|
{
|
|
@@ -20364,7 +20365,7 @@ BuiltIn.methods = [
|
|
|
20364
20365
|
mandatory: {
|
|
20365
20366
|
"val": new basic_1.FloatType(),
|
|
20366
20367
|
},
|
|
20367
|
-
return:
|
|
20368
|
+
return: basic_1.IntegerType.get(),
|
|
20368
20369
|
},
|
|
20369
20370
|
{
|
|
20370
20371
|
name: "UTCLONG_ADD",
|
|
@@ -20372,9 +20373,9 @@ BuiltIn.methods = [
|
|
|
20372
20373
|
"val": new basic_1.UTCLongType(),
|
|
20373
20374
|
},
|
|
20374
20375
|
optional: {
|
|
20375
|
-
"days":
|
|
20376
|
-
"hour":
|
|
20377
|
-
"minutes":
|
|
20376
|
+
"days": basic_1.IntegerType.get(),
|
|
20377
|
+
"hour": basic_1.IntegerType.get(),
|
|
20378
|
+
"minutes": basic_1.IntegerType.get(),
|
|
20378
20379
|
"seconds": new basic_1.FloatType(),
|
|
20379
20380
|
},
|
|
20380
20381
|
return: new basic_1.UTCLongType(),
|
|
@@ -20407,7 +20408,7 @@ BuiltIn.methods = [
|
|
|
20407
20408
|
mandatory: {
|
|
20408
20409
|
"val": new basic_1.XSequenceType(),
|
|
20409
20410
|
},
|
|
20410
|
-
return:
|
|
20411
|
+
return: basic_1.IntegerType.get(),
|
|
20411
20412
|
},
|
|
20412
20413
|
];
|
|
20413
20414
|
//# sourceMappingURL=_builtin.js.map
|
|
@@ -21507,6 +21508,7 @@ class TypeUtils {
|
|
|
21507
21508
|
else if (type instanceof basic_1.XStringType
|
|
21508
21509
|
|| type instanceof basic_1.HexType
|
|
21509
21510
|
|| type instanceof basic_1.VoidType
|
|
21511
|
+
|| type instanceof basic_1.XGenericType
|
|
21510
21512
|
|| type instanceof basic_1.XSequenceType
|
|
21511
21513
|
|| type instanceof basic_1.AnyType
|
|
21512
21514
|
|| type instanceof basic_1.UnknownType) {
|
|
@@ -21667,7 +21669,7 @@ class TypeUtils {
|
|
|
21667
21669
|
if (target instanceof basic_1.StructureType && this.structureContainsString(target)) {
|
|
21668
21670
|
return false;
|
|
21669
21671
|
}
|
|
21670
|
-
else if (target instanceof basic_1.XSequenceType) {
|
|
21672
|
+
else if (target instanceof basic_1.XSequenceType || target instanceof basic_1.XStringType) {
|
|
21671
21673
|
if (((_f = source.getAbstractTypeData()) === null || _f === void 0 ? void 0 : _f.derivedFromConstant) === true) {
|
|
21672
21674
|
return true;
|
|
21673
21675
|
}
|
|
@@ -21849,7 +21851,7 @@ class BasicTypes {
|
|
|
21849
21851
|
}
|
|
21850
21852
|
lookupQualifiedName(name) {
|
|
21851
21853
|
var _a;
|
|
21852
|
-
// argh, todo, rewrite this entire method, more argh
|
|
21854
|
+
// argh, todo, rewrite this entire method, more argh, again argh
|
|
21853
21855
|
if (name === undefined) {
|
|
21854
21856
|
return undefined;
|
|
21855
21857
|
}
|
|
@@ -21870,7 +21872,10 @@ class BasicTypes {
|
|
|
21870
21872
|
const stru = oo.getTypeDefinitions().getByName(subTypeName);
|
|
21871
21873
|
const struType = stru === null || stru === void 0 ? void 0 : stru.getType();
|
|
21872
21874
|
if (stru && struType instanceof basic_1.StructureType) {
|
|
21873
|
-
|
|
21875
|
+
let f = struType.getComponentByName(fieldName);
|
|
21876
|
+
if (split[2] && f instanceof basic_1.StructureType) {
|
|
21877
|
+
f = f.getComponentByName(split[2]);
|
|
21878
|
+
}
|
|
21874
21879
|
if (f) {
|
|
21875
21880
|
return new _typed_identifier_1.TypedIdentifier(stru.getToken(), stru.getFilename(), f);
|
|
21876
21881
|
}
|
|
@@ -21892,7 +21897,10 @@ class BasicTypes {
|
|
|
21892
21897
|
if (type) {
|
|
21893
21898
|
const stru = type.getType();
|
|
21894
21899
|
if (stru instanceof basic_1.StructureType) {
|
|
21895
|
-
|
|
21900
|
+
let f = stru.getComponentByName(fieldName);
|
|
21901
|
+
if (split[2] && f instanceof basic_1.StructureType) {
|
|
21902
|
+
f = f.getComponentByName(split[2]);
|
|
21903
|
+
}
|
|
21896
21904
|
if (f) {
|
|
21897
21905
|
return new _typed_identifier_1.TypedIdentifier(type.getToken(), type.getFilename(), f);
|
|
21898
21906
|
}
|
|
@@ -23316,8 +23324,9 @@ const basic_1 = __webpack_require__(/*! ../../types/basic */ "./node_modules/@ab
|
|
|
23316
23324
|
const expressions_1 = __webpack_require__(/*! ../../2_statements/expressions */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js");
|
|
23317
23325
|
class Constant {
|
|
23318
23326
|
runSyntax(node) {
|
|
23327
|
+
// todo: ConcatenatedConstant is not used?
|
|
23319
23328
|
if (node.findDirectExpression(expressions_1.Integer)) {
|
|
23320
|
-
return
|
|
23329
|
+
return basic_1.IntegerType.get();
|
|
23321
23330
|
}
|
|
23322
23331
|
else if (node.getFirstToken().getStr().startsWith("'")) {
|
|
23323
23332
|
let len = node.getFirstToken().getStr().length - 2;
|
|
@@ -23327,10 +23336,10 @@ class Constant {
|
|
|
23327
23336
|
return new basic_1.CharacterType(len, { derivedFromConstant: true });
|
|
23328
23337
|
}
|
|
23329
23338
|
else if (node.getFirstToken().getStr().startsWith("`")) {
|
|
23330
|
-
return
|
|
23339
|
+
return basic_1.StringType.get({ derivedFromConstant: true });
|
|
23331
23340
|
}
|
|
23332
23341
|
else {
|
|
23333
|
-
return
|
|
23342
|
+
return basic_1.StringType.get();
|
|
23334
23343
|
}
|
|
23335
23344
|
}
|
|
23336
23345
|
}
|
|
@@ -24224,7 +24233,7 @@ class InlineLoopDefinition {
|
|
|
24224
24233
|
}
|
|
24225
24234
|
const index = node.findExpressionAfterToken("INTO");
|
|
24226
24235
|
if (index && index.get() instanceof Expressions.TargetField) {
|
|
24227
|
-
const identifier = new _typed_identifier_1.TypedIdentifier(index.getFirstToken(), filename,
|
|
24236
|
+
const identifier = new _typed_identifier_1.TypedIdentifier(index.getFirstToken(), filename, basic_1.IntegerType.get(), ["inline" /* IdentifierMeta.InlineDefinition */]);
|
|
24228
24237
|
scope.addReference(index.getFirstToken(), identifier, _reference_1.ReferenceType.DataWriteReference, filename);
|
|
24229
24238
|
scope.addIdentifier(identifier);
|
|
24230
24239
|
}
|
|
@@ -24589,7 +24598,7 @@ class MethodCallParam {
|
|
|
24589
24598
|
else {
|
|
24590
24599
|
targetType = method;
|
|
24591
24600
|
}
|
|
24592
|
-
let sourceType =
|
|
24601
|
+
let sourceType = basic_1.StringType.get();
|
|
24593
24602
|
if (child.get() instanceof Expressions.Source) {
|
|
24594
24603
|
sourceType = new source_1.Source().runSyntax(child, scope, filename, targetType);
|
|
24595
24604
|
}
|
|
@@ -24697,6 +24706,9 @@ class MethodParam {
|
|
|
24697
24706
|
if (concat === "TYPE C" || concat.startsWith("TYPE C ")) {
|
|
24698
24707
|
return new _typed_identifier_1.TypedIdentifier(name.getFirstToken(), filename, new cgeneric_type_1.CGenericType(), meta);
|
|
24699
24708
|
}
|
|
24709
|
+
else if (concat === "TYPE X" || concat.startsWith("TYPE X ")) {
|
|
24710
|
+
return new _typed_identifier_1.TypedIdentifier(name.getFirstToken(), filename, new basic_1.XGenericType(), meta);
|
|
24711
|
+
}
|
|
24700
24712
|
const found = new basic_types_1.BasicTypes(filename, scope).parseType(type);
|
|
24701
24713
|
if (found) {
|
|
24702
24714
|
return new _typed_identifier_1.TypedIdentifier(name.getFirstToken(), filename, found, meta);
|
|
@@ -25516,7 +25528,7 @@ class Source {
|
|
|
25516
25528
|
const method = new _builtin_1.BuiltIn().searchBuiltin(tok);
|
|
25517
25529
|
scope.addReference(token, method, _reference_1.ReferenceType.BuiltinMethodReference, filename);
|
|
25518
25530
|
new cond_1.Cond().runSyntax(node.findDirectExpression(Expressions.Cond), scope, filename);
|
|
25519
|
-
return
|
|
25531
|
+
return basic_1.StringType.get();
|
|
25520
25532
|
}
|
|
25521
25533
|
case "XSDBOOL":
|
|
25522
25534
|
{
|
|
@@ -25659,7 +25671,7 @@ class Source {
|
|
|
25659
25671
|
}
|
|
25660
25672
|
}
|
|
25661
25673
|
if (node.findDirectTokenByText("&&")) {
|
|
25662
|
-
return
|
|
25674
|
+
return basic_1.StringType.get();
|
|
25663
25675
|
}
|
|
25664
25676
|
return context;
|
|
25665
25677
|
}
|
|
@@ -25985,7 +25997,7 @@ class StringTemplate {
|
|
|
25985
25997
|
const typeUtils = new _type_utils_1.TypeUtils(scope);
|
|
25986
25998
|
for (const templateSource of node.findAllExpressions(Expressions.StringTemplateSource)) {
|
|
25987
25999
|
const s = templateSource.findDirectExpression(Expressions.Source);
|
|
25988
|
-
const type = new source_1.Source().runSyntax(s, scope, filename,
|
|
26000
|
+
const type = new source_1.Source().runSyntax(s, scope, filename, basic_1.StringType.get());
|
|
25989
26001
|
if (type === undefined) {
|
|
25990
26002
|
throw new Error("No target type determined");
|
|
25991
26003
|
}
|
|
@@ -26009,7 +26021,7 @@ class StringTemplate {
|
|
|
26009
26021
|
throw new Error("Cannot apply ALPHA to this type");
|
|
26010
26022
|
}
|
|
26011
26023
|
}
|
|
26012
|
-
return
|
|
26024
|
+
return basic_1.StringType.get();
|
|
26013
26025
|
}
|
|
26014
26026
|
}
|
|
26015
26027
|
exports.StringTemplate = StringTemplate;
|
|
@@ -27698,19 +27710,41 @@ const source_1 = __webpack_require__(/*! ../expressions/source */ "./node_module
|
|
|
27698
27710
|
const target_1 = __webpack_require__(/*! ../expressions/target */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/expressions/target.js");
|
|
27699
27711
|
const basic_1 = __webpack_require__(/*! ../../types/basic */ "./node_modules/@abaplint/core/build/src/abap/types/basic/index.js");
|
|
27700
27712
|
const inline_data_1 = __webpack_require__(/*! ../expressions/inline_data */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/expressions/inline_data.js");
|
|
27713
|
+
const _type_utils_1 = __webpack_require__(/*! ../_type_utils */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_type_utils.js");
|
|
27701
27714
|
class Concatenate {
|
|
27702
27715
|
runSyntax(node, scope, filename) {
|
|
27716
|
+
const byteMode = node.findDirectTokenByText("BYTE") !== undefined;
|
|
27717
|
+
let linesMode = node.findDirectTokenByText("LINES") !== undefined;
|
|
27703
27718
|
const target = node.findFirstExpression(Expressions.Target);
|
|
27704
27719
|
const inline = target === null || target === void 0 ? void 0 : target.findDirectExpression(Expressions.InlineData);
|
|
27705
27720
|
if (inline) {
|
|
27706
|
-
|
|
27707
|
-
|
|
27721
|
+
if (byteMode) {
|
|
27722
|
+
new inline_data_1.InlineData().runSyntax(inline, scope, filename, new basic_1.XStringType());
|
|
27723
|
+
}
|
|
27724
|
+
else {
|
|
27725
|
+
new inline_data_1.InlineData().runSyntax(inline, scope, filename, basic_1.StringType.get());
|
|
27726
|
+
}
|
|
27708
27727
|
}
|
|
27709
27728
|
else if (target) {
|
|
27710
|
-
new target_1.Target().runSyntax(target, scope, filename);
|
|
27729
|
+
const type = new target_1.Target().runSyntax(target, scope, filename);
|
|
27730
|
+
const compatible = byteMode ? new _type_utils_1.TypeUtils(scope).isHexLike(type) : new _type_utils_1.TypeUtils(scope).isCharLike(type);
|
|
27731
|
+
if (compatible === false) {
|
|
27732
|
+
throw new Error("Target type not compatible");
|
|
27733
|
+
}
|
|
27711
27734
|
}
|
|
27712
27735
|
for (const s of node.findDirectExpressions(Expressions.Source)) {
|
|
27713
|
-
new source_1.Source().runSyntax(s, scope, filename);
|
|
27736
|
+
const type = new source_1.Source().runSyntax(s, scope, filename);
|
|
27737
|
+
if (linesMode) {
|
|
27738
|
+
if (!(type instanceof basic_1.UnknownType) && !(type instanceof basic_1.VoidType) && !(type instanceof basic_1.TableType)) {
|
|
27739
|
+
throw new Error("Source must be an internal table");
|
|
27740
|
+
}
|
|
27741
|
+
linesMode = false;
|
|
27742
|
+
continue;
|
|
27743
|
+
}
|
|
27744
|
+
const compatible = byteMode ? new _type_utils_1.TypeUtils(scope).isHexLike(type) : new _type_utils_1.TypeUtils(scope).isCharLike(type);
|
|
27745
|
+
if (compatible === false) {
|
|
27746
|
+
throw new Error("Source type not compatible");
|
|
27747
|
+
}
|
|
27714
27748
|
}
|
|
27715
27749
|
}
|
|
27716
27750
|
}
|
|
@@ -27803,17 +27837,17 @@ class Controls {
|
|
|
27803
27837
|
if (node.findDirectTokenByText("TABLEVIEW") && token) {
|
|
27804
27838
|
const cols = new basic_1.StructureType([
|
|
27805
27839
|
{ name: "SCREEN", type: new basic_1.CharacterType(1) },
|
|
27806
|
-
{ name: "INDEX", type:
|
|
27840
|
+
{ name: "INDEX", type: basic_1.IntegerType.get() },
|
|
27807
27841
|
{ name: "SELECTED", type: new basic_1.CharacterType(1) },
|
|
27808
|
-
{ name: "VISLENGTH", type:
|
|
27842
|
+
{ name: "VISLENGTH", type: basic_1.IntegerType.get() },
|
|
27809
27843
|
{ name: "INVISIBLE", type: new basic_1.CharacterType(1) },
|
|
27810
27844
|
]);
|
|
27811
27845
|
const type = new basic_1.StructureType([
|
|
27812
27846
|
{ name: "FIXED_COLS", type: new basic_1.CharacterType(132) },
|
|
27813
|
-
{ name: "LINES", type:
|
|
27814
|
-
{ name: "TOP_LINE", type:
|
|
27815
|
-
{ name: "CURRENT_LINE", type:
|
|
27816
|
-
{ name: "LEFT_COL", type:
|
|
27847
|
+
{ name: "LINES", type: basic_1.IntegerType.get() },
|
|
27848
|
+
{ name: "TOP_LINE", type: basic_1.IntegerType.get() },
|
|
27849
|
+
{ name: "CURRENT_LINE", type: basic_1.IntegerType.get() },
|
|
27850
|
+
{ name: "LEFT_COL", type: basic_1.IntegerType.get() },
|
|
27817
27851
|
{ name: "LINE_SEL_MODE", type: new basic_1.CharacterType(1) },
|
|
27818
27852
|
{ name: "COL_SEL_MODE", type: new basic_1.CharacterType(1) },
|
|
27819
27853
|
{ name: "LINE_SELECTOR", type: new basic_1.CharacterType(1) },
|
|
@@ -28255,7 +28289,7 @@ class Describe {
|
|
|
28255
28289
|
if ((linesTarget === null || linesTarget === void 0 ? void 0 : linesTarget.get()) instanceof Expressions.Target) {
|
|
28256
28290
|
const inline = linesTarget === null || linesTarget === void 0 ? void 0 : linesTarget.findDirectExpression(Expressions.InlineData);
|
|
28257
28291
|
if (inline) {
|
|
28258
|
-
new inline_data_1.InlineData().runSyntax(inline, scope, filename,
|
|
28292
|
+
new inline_data_1.InlineData().runSyntax(inline, scope, filename, basic_1.IntegerType.get());
|
|
28259
28293
|
}
|
|
28260
28294
|
else {
|
|
28261
28295
|
new target_1.Target().runSyntax(linesTarget, scope, filename);
|
|
@@ -28275,7 +28309,7 @@ class Describe {
|
|
|
28275
28309
|
if ((lengthTarget === null || lengthTarget === void 0 ? void 0 : lengthTarget.get()) instanceof Expressions.Target) {
|
|
28276
28310
|
const inline = lengthTarget === null || lengthTarget === void 0 ? void 0 : lengthTarget.findDirectExpression(Expressions.InlineData);
|
|
28277
28311
|
if (inline) {
|
|
28278
|
-
new inline_data_1.InlineData().runSyntax(inline, scope, filename,
|
|
28312
|
+
new inline_data_1.InlineData().runSyntax(inline, scope, filename, basic_1.IntegerType.get());
|
|
28279
28313
|
}
|
|
28280
28314
|
else {
|
|
28281
28315
|
new target_1.Target().runSyntax(lengthTarget, scope, filename);
|
|
@@ -28285,7 +28319,7 @@ class Describe {
|
|
|
28285
28319
|
if ((componentsTarget === null || componentsTarget === void 0 ? void 0 : componentsTarget.get()) instanceof Expressions.Target) {
|
|
28286
28320
|
const inline = componentsTarget === null || componentsTarget === void 0 ? void 0 : componentsTarget.findDirectExpression(Expressions.InlineData);
|
|
28287
28321
|
if (inline) {
|
|
28288
|
-
new inline_data_1.InlineData().runSyntax(inline, scope, filename,
|
|
28322
|
+
new inline_data_1.InlineData().runSyntax(inline, scope, filename, basic_1.IntegerType.get());
|
|
28289
28323
|
}
|
|
28290
28324
|
else {
|
|
28291
28325
|
new target_1.Target().runSyntax(componentsTarget, scope, filename);
|
|
@@ -28467,13 +28501,13 @@ class Find {
|
|
|
28467
28501
|
const rfound = node.findExpressionAfterToken("RESULTS");
|
|
28468
28502
|
if (rfound && rfound.get() instanceof Expressions.Target) {
|
|
28469
28503
|
const sub = new basic_1.StructureType([
|
|
28470
|
-
{ name: "OFFSET", type:
|
|
28471
|
-
{ name: "LENGTH", type:
|
|
28504
|
+
{ name: "OFFSET", type: basic_1.IntegerType.get() },
|
|
28505
|
+
{ name: "LENGTH", type: basic_1.IntegerType.get() }
|
|
28472
28506
|
], "SUBMATCH_RESULT", "SUBMATCH_RESULT");
|
|
28473
28507
|
const type = new basic_1.StructureType([
|
|
28474
|
-
{ name: "LINE", type:
|
|
28475
|
-
{ name: "OFFSET", type:
|
|
28476
|
-
{ name: "LENGTH", type:
|
|
28508
|
+
{ name: "LINE", type: basic_1.IntegerType.get() },
|
|
28509
|
+
{ name: "OFFSET", type: basic_1.IntegerType.get() },
|
|
28510
|
+
{ name: "LENGTH", type: basic_1.IntegerType.get() },
|
|
28477
28511
|
{ name: "SUBMATCHES", type: new basic_1.TableType(sub, { withHeader: false, keyType: basic_1.TableKeyType.default }) },
|
|
28478
28512
|
], "MATCH_RESULT", "MATCH_RESULT");
|
|
28479
28513
|
if (node.concatTokens().toUpperCase().startsWith("FIND FIRST")) {
|
|
@@ -28486,20 +28520,20 @@ class Find {
|
|
|
28486
28520
|
const ofound = node.findExpressionsAfterToken("OFFSET");
|
|
28487
28521
|
for (const o of ofound) {
|
|
28488
28522
|
if (o.get() instanceof Expressions.Target) {
|
|
28489
|
-
this.inline(o, scope, filename,
|
|
28523
|
+
this.inline(o, scope, filename, basic_1.IntegerType.get());
|
|
28490
28524
|
}
|
|
28491
28525
|
}
|
|
28492
28526
|
const lfound = node.findExpressionAfterToken("LINE");
|
|
28493
28527
|
if (lfound && lfound.get() instanceof Expressions.Target) {
|
|
28494
|
-
this.inline(lfound, scope, filename,
|
|
28528
|
+
this.inline(lfound, scope, filename, basic_1.IntegerType.get());
|
|
28495
28529
|
}
|
|
28496
28530
|
const cfound = node.findExpressionAfterToken("COUNT");
|
|
28497
28531
|
if (cfound && cfound.get() instanceof Expressions.Target) {
|
|
28498
|
-
this.inline(cfound, scope, filename,
|
|
28532
|
+
this.inline(cfound, scope, filename, basic_1.IntegerType.get());
|
|
28499
28533
|
}
|
|
28500
28534
|
const lnfound = node.findExpressionAfterToken("LENGTH");
|
|
28501
28535
|
if (lnfound && lnfound.get() instanceof Expressions.Target) {
|
|
28502
|
-
this.inline(lnfound, scope, filename,
|
|
28536
|
+
this.inline(lnfound, scope, filename, basic_1.IntegerType.get());
|
|
28503
28537
|
}
|
|
28504
28538
|
if (node.findDirectTokenByText("SUBMATCHES")) {
|
|
28505
28539
|
for (const t of node.findDirectExpressions(Expressions.Target)) {
|
|
@@ -28511,7 +28545,7 @@ class Find {
|
|
|
28511
28545
|
}
|
|
28512
28546
|
const inline = t === null || t === void 0 ? void 0 : t.findDirectExpression(Expressions.InlineData);
|
|
28513
28547
|
if (inline) {
|
|
28514
|
-
new inline_data_1.InlineData().runSyntax(inline, scope, filename,
|
|
28548
|
+
new inline_data_1.InlineData().runSyntax(inline, scope, filename, basic_1.StringType.get());
|
|
28515
28549
|
}
|
|
28516
28550
|
else {
|
|
28517
28551
|
new target_1.Target().runSyntax(t, scope, filename);
|
|
@@ -28651,7 +28685,7 @@ class GetBit {
|
|
|
28651
28685
|
for (const t of node.findDirectExpressions(Expressions.Target)) {
|
|
28652
28686
|
const inline = t === null || t === void 0 ? void 0 : t.findDirectExpression(Expressions.InlineData);
|
|
28653
28687
|
if (inline) {
|
|
28654
|
-
new inline_data_1.InlineData().runSyntax(t, scope, filename,
|
|
28688
|
+
new inline_data_1.InlineData().runSyntax(t, scope, filename, basic_1.IntegerType.get());
|
|
28655
28689
|
}
|
|
28656
28690
|
else {
|
|
28657
28691
|
new target_1.Target().runSyntax(t, scope, filename);
|
|
@@ -28804,7 +28838,7 @@ class GetRunTime {
|
|
|
28804
28838
|
const target = node.findDirectExpression(Expressions.Target);
|
|
28805
28839
|
const inline = target === null || target === void 0 ? void 0 : target.findDirectExpression(Expressions.InlineData);
|
|
28806
28840
|
if (inline) {
|
|
28807
|
-
new inline_data_1.InlineData().runSyntax(inline, scope, filename,
|
|
28841
|
+
new inline_data_1.InlineData().runSyntax(inline, scope, filename, basic_1.IntegerType.get());
|
|
28808
28842
|
}
|
|
28809
28843
|
else if (target) {
|
|
28810
28844
|
new target_1.Target().runSyntax(target, scope, filename);
|
|
@@ -29384,7 +29418,7 @@ class Message {
|
|
|
29384
29418
|
const found = node.findExpressionAfterToken("INTO");
|
|
29385
29419
|
const inline = found === null || found === void 0 ? void 0 : found.findDirectExpression(Expressions.InlineData);
|
|
29386
29420
|
if (inline) {
|
|
29387
|
-
new inline_data_1.InlineData().runSyntax(inline, scope, filename,
|
|
29421
|
+
new inline_data_1.InlineData().runSyntax(inline, scope, filename, basic_1.StringType.get());
|
|
29388
29422
|
}
|
|
29389
29423
|
else if (found) {
|
|
29390
29424
|
new target_1.Target().runSyntax(found, scope, filename);
|
|
@@ -30154,14 +30188,14 @@ class ReadTable {
|
|
|
30154
30188
|
const indexSource = node.findExpressionAfterToken("INDEX");
|
|
30155
30189
|
if (indexSource) {
|
|
30156
30190
|
const indexType = new source_1.Source().runSyntax(indexSource, scope, filename);
|
|
30157
|
-
if (new _type_utils_1.TypeUtils(scope).isAssignable(indexType,
|
|
30191
|
+
if (new _type_utils_1.TypeUtils(scope).isAssignable(indexType, basic_1.IntegerType.get()) === false) {
|
|
30158
30192
|
throw new Error("READ TABLE, INDEX must be simple");
|
|
30159
30193
|
}
|
|
30160
30194
|
}
|
|
30161
30195
|
const fromSource = node.findExpressionAfterToken("FROM");
|
|
30162
30196
|
if (fromSource) {
|
|
30163
30197
|
const fromType = new source_1.Source().runSyntax(fromSource, scope, filename);
|
|
30164
|
-
if (new _type_utils_1.TypeUtils(scope).isAssignable(fromType,
|
|
30198
|
+
if (new _type_utils_1.TypeUtils(scope).isAssignable(fromType, basic_1.IntegerType.get()) === false) {
|
|
30165
30199
|
throw new Error("READ TABLE, FROM must be simple");
|
|
30166
30200
|
}
|
|
30167
30201
|
}
|
|
@@ -30786,7 +30820,7 @@ const _type_utils_1 = __webpack_require__(/*! ../_type_utils */ "./node_modules/
|
|
|
30786
30820
|
class Split {
|
|
30787
30821
|
runSyntax(node, scope, filename) {
|
|
30788
30822
|
const intoTable = node.findTokenSequencePosition("INTO", "TABLE") !== undefined;
|
|
30789
|
-
const type = intoTable ? new basic_1.TableType(
|
|
30823
|
+
const type = intoTable ? new basic_1.TableType(basic_1.StringType.get(), { withHeader: false, keyType: basic_1.TableKeyType.default }) : basic_1.StringType.get();
|
|
30790
30824
|
for (const target of node.findAllExpressions(Expressions.Target)) {
|
|
30791
30825
|
const inline = target.findDirectExpression(Expressions.InlineData);
|
|
30792
30826
|
if (inline) {
|
|
@@ -31819,7 +31853,7 @@ class TypeEnum {
|
|
|
31819
31853
|
}
|
|
31820
31854
|
const token = expr.getFirstToken();
|
|
31821
31855
|
// integer is default if BASE TYPE is not specified
|
|
31822
|
-
values.push(new _typed_identifier_1.TypedIdentifier(token, filename,
|
|
31856
|
+
values.push(new _typed_identifier_1.TypedIdentifier(token, filename, basic_1.IntegerType.get()));
|
|
31823
31857
|
}
|
|
31824
31858
|
for (const type of node.findDirectStatements(Statements.TypeEnum)) {
|
|
31825
31859
|
const expr = type.findFirstExpression(Expressions.NamespaceSimpleName);
|
|
@@ -31828,7 +31862,7 @@ class TypeEnum {
|
|
|
31828
31862
|
}
|
|
31829
31863
|
const token = expr.getFirstToken();
|
|
31830
31864
|
// integer is default if BASE TYPE is not specified
|
|
31831
|
-
values.push(new _typed_identifier_1.TypedIdentifier(token, filename,
|
|
31865
|
+
values.push(new _typed_identifier_1.TypedIdentifier(token, filename, basic_1.IntegerType.get()));
|
|
31832
31866
|
}
|
|
31833
31867
|
const baseType = (_a = begin.findExpressionAfterToken("TYPE")) === null || _a === void 0 ? void 0 : _a.getFirstToken();
|
|
31834
31868
|
const baseName = baseType === null || baseType === void 0 ? void 0 : baseType.getStr();
|
|
@@ -34684,7 +34718,7 @@ class HexType extends _abstract_type_1.AbstractType {
|
|
|
34684
34718
|
constructor(length, qualifiedName) {
|
|
34685
34719
|
super({ qualifiedName: qualifiedName });
|
|
34686
34720
|
if (length <= 0) {
|
|
34687
|
-
throw new Error("Bad
|
|
34721
|
+
throw new Error("Bad LENGTH, Hex");
|
|
34688
34722
|
}
|
|
34689
34723
|
this.length = length;
|
|
34690
34724
|
}
|
|
@@ -34763,6 +34797,7 @@ __exportStar(__webpack_require__(/*! ./time_type */ "./node_modules/@abaplint/co
|
|
|
34763
34797
|
__exportStar(__webpack_require__(/*! ./unknown_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/unknown_type.js"), exports);
|
|
34764
34798
|
__exportStar(__webpack_require__(/*! ./utc_long_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/utc_long_type.js"), exports);
|
|
34765
34799
|
__exportStar(__webpack_require__(/*! ./void_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/void_type.js"), exports);
|
|
34800
|
+
__exportStar(__webpack_require__(/*! ./xgeneric_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/xgeneric_type.js"), exports);
|
|
34766
34801
|
__exportStar(__webpack_require__(/*! ./xsequence_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/xsequence_type.js"), exports);
|
|
34767
34802
|
__exportStar(__webpack_require__(/*! ./xstring_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/xstring_type.js"), exports);
|
|
34768
34803
|
//# sourceMappingURL=index.js.map
|
|
@@ -34814,6 +34849,24 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
34814
34849
|
exports.IntegerType = void 0;
|
|
34815
34850
|
const _abstract_type_1 = __webpack_require__(/*! ./_abstract_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/_abstract_type.js");
|
|
34816
34851
|
class IntegerType extends _abstract_type_1.AbstractType {
|
|
34852
|
+
static get(input) {
|
|
34853
|
+
if (input === undefined) {
|
|
34854
|
+
return this.singleton;
|
|
34855
|
+
}
|
|
34856
|
+
return new IntegerType(input);
|
|
34857
|
+
}
|
|
34858
|
+
constructor(input) {
|
|
34859
|
+
super(input);
|
|
34860
|
+
}
|
|
34861
|
+
/** fully qualified symbolic name of the type */
|
|
34862
|
+
getQualifiedName() {
|
|
34863
|
+
var _a;
|
|
34864
|
+
const qual = (_a = this.data) === null || _a === void 0 ? void 0 : _a.qualifiedName;
|
|
34865
|
+
if (qual === undefined) {
|
|
34866
|
+
return "I";
|
|
34867
|
+
}
|
|
34868
|
+
return qual;
|
|
34869
|
+
}
|
|
34817
34870
|
toText() {
|
|
34818
34871
|
return "```i```";
|
|
34819
34872
|
}
|
|
@@ -34831,6 +34884,7 @@ class IntegerType extends _abstract_type_1.AbstractType {
|
|
|
34831
34884
|
}
|
|
34832
34885
|
}
|
|
34833
34886
|
exports.IntegerType = IntegerType;
|
|
34887
|
+
IntegerType.singleton = new IntegerType();
|
|
34834
34888
|
//# sourceMappingURL=integer_type.js.map
|
|
34835
34889
|
|
|
34836
34890
|
/***/ }),
|
|
@@ -35050,6 +35104,24 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
35050
35104
|
exports.StringType = void 0;
|
|
35051
35105
|
const _abstract_type_1 = __webpack_require__(/*! ./_abstract_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/_abstract_type.js");
|
|
35052
35106
|
class StringType extends _abstract_type_1.AbstractType {
|
|
35107
|
+
static get(input) {
|
|
35108
|
+
if (input === undefined) {
|
|
35109
|
+
return this.singleton;
|
|
35110
|
+
}
|
|
35111
|
+
return new StringType(input);
|
|
35112
|
+
}
|
|
35113
|
+
constructor(input) {
|
|
35114
|
+
super(input);
|
|
35115
|
+
}
|
|
35116
|
+
/** fully qualified symbolic name of the type */
|
|
35117
|
+
getQualifiedName() {
|
|
35118
|
+
var _a;
|
|
35119
|
+
const qual = (_a = this.data) === null || _a === void 0 ? void 0 : _a.qualifiedName;
|
|
35120
|
+
if (qual === undefined) {
|
|
35121
|
+
return "STRING";
|
|
35122
|
+
}
|
|
35123
|
+
return qual;
|
|
35124
|
+
}
|
|
35053
35125
|
toText() {
|
|
35054
35126
|
return "```string```";
|
|
35055
35127
|
}
|
|
@@ -35067,6 +35139,7 @@ class StringType extends _abstract_type_1.AbstractType {
|
|
|
35067
35139
|
}
|
|
35068
35140
|
}
|
|
35069
35141
|
exports.StringType = StringType;
|
|
35142
|
+
StringType.singleton = new StringType();
|
|
35070
35143
|
//# sourceMappingURL=string_type.js.map
|
|
35071
35144
|
|
|
35072
35145
|
/***/ }),
|
|
@@ -35365,6 +35438,39 @@ exports.VoidType = VoidType;
|
|
|
35365
35438
|
|
|
35366
35439
|
/***/ }),
|
|
35367
35440
|
|
|
35441
|
+
/***/ "./node_modules/@abaplint/core/build/src/abap/types/basic/xgeneric_type.js":
|
|
35442
|
+
/*!*********************************************************************************!*\
|
|
35443
|
+
!*** ./node_modules/@abaplint/core/build/src/abap/types/basic/xgeneric_type.js ***!
|
|
35444
|
+
\*********************************************************************************/
|
|
35445
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
35446
|
+
|
|
35447
|
+
"use strict";
|
|
35448
|
+
|
|
35449
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
35450
|
+
exports.XGenericType = void 0;
|
|
35451
|
+
const _abstract_type_1 = __webpack_require__(/*! ./_abstract_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/_abstract_type.js");
|
|
35452
|
+
class XGenericType extends _abstract_type_1.AbstractType {
|
|
35453
|
+
toText() {
|
|
35454
|
+
return "```x```";
|
|
35455
|
+
}
|
|
35456
|
+
isGeneric() {
|
|
35457
|
+
return true;
|
|
35458
|
+
}
|
|
35459
|
+
toABAP() {
|
|
35460
|
+
throw new Error("x, generic");
|
|
35461
|
+
}
|
|
35462
|
+
containsVoid() {
|
|
35463
|
+
return false;
|
|
35464
|
+
}
|
|
35465
|
+
toCDS() {
|
|
35466
|
+
return "abap.TODO_CGENERIC";
|
|
35467
|
+
}
|
|
35468
|
+
}
|
|
35469
|
+
exports.XGenericType = XGenericType;
|
|
35470
|
+
//# sourceMappingURL=xgeneric_type.js.map
|
|
35471
|
+
|
|
35472
|
+
/***/ }),
|
|
35473
|
+
|
|
35368
35474
|
/***/ "./node_modules/@abaplint/core/build/src/abap/types/basic/xsequence_type.js":
|
|
35369
35475
|
/*!**********************************************************************************!*\
|
|
35370
35476
|
!*** ./node_modules/@abaplint/core/build/src/abap/types/basic/xsequence_type.js ***!
|
|
@@ -38227,7 +38333,7 @@ class DDIC {
|
|
|
38227
38333
|
lookupBuiltinType(name, length, decimals, qualifiedName) {
|
|
38228
38334
|
switch (name) {
|
|
38229
38335
|
case "STRING":
|
|
38230
|
-
return
|
|
38336
|
+
return Types.StringType.get({ qualifiedName: qualifiedName || name });
|
|
38231
38337
|
case "XSTRING":
|
|
38232
38338
|
return new Types.XStringType({ qualifiedName: qualifiedName || name });
|
|
38233
38339
|
case "D":
|
|
@@ -38261,7 +38367,7 @@ class DDIC {
|
|
|
38261
38367
|
case "CSEQUENCE":
|
|
38262
38368
|
return new Types.CSequenceType({ qualifiedName: qualifiedName });
|
|
38263
38369
|
case "I":
|
|
38264
|
-
return
|
|
38370
|
+
return Types.IntegerType.get({ qualifiedName: qualifiedName || name });
|
|
38265
38371
|
case "INT8": // todo, take version into account
|
|
38266
38372
|
return new Types.Integer8Type({ qualifiedName: qualifiedName || name });
|
|
38267
38373
|
case "F":
|
|
@@ -38551,13 +38657,14 @@ class DDIC {
|
|
|
38551
38657
|
case "INT1":
|
|
38552
38658
|
case "INT2":
|
|
38553
38659
|
case "INT4":
|
|
38660
|
+
return Types.IntegerType.get({ qualifiedName: qualifiedName });
|
|
38554
38661
|
case "INT8":
|
|
38555
|
-
return new Types.
|
|
38662
|
+
return new Types.Integer8Type({ qualifiedName: qualifiedName });
|
|
38556
38663
|
case "SSTR": // 1 <= len <= 1333
|
|
38557
38664
|
case "SSTRING": // 1 <= len <= 1333
|
|
38558
38665
|
case "STRG": // 256 <= len
|
|
38559
38666
|
case "STRING": // 256 <= len
|
|
38560
|
-
return
|
|
38667
|
+
return Types.StringType.get({ qualifiedName: qualifiedName });
|
|
38561
38668
|
case "RSTR": // 256 <= len
|
|
38562
38669
|
case "RAWSTRING": // 256 <= len
|
|
38563
38670
|
case "GEOM_EWKB":
|
|
@@ -48289,7 +48396,7 @@ class Registry {
|
|
|
48289
48396
|
}
|
|
48290
48397
|
static abaplintVersion() {
|
|
48291
48398
|
// magic, see build script "version.sh"
|
|
48292
|
-
return "2.101.
|
|
48399
|
+
return "2.101.16";
|
|
48293
48400
|
}
|
|
48294
48401
|
getDDICReferences() {
|
|
48295
48402
|
return this.ddicReferences;
|
|
@@ -48930,7 +49037,9 @@ const Expressions = __webpack_require__(/*! ../abap/2_statements/expressions */
|
|
|
48930
49037
|
const _abap_rule_1 = __webpack_require__(/*! ./_abap_rule */ "./node_modules/@abaplint/core/build/src/rules/_abap_rule.js");
|
|
48931
49038
|
const _basic_rule_config_1 = __webpack_require__(/*! ./_basic_rule_config */ "./node_modules/@abaplint/core/build/src/rules/_basic_rule_config.js");
|
|
48932
49039
|
const _irule_1 = __webpack_require__(/*! ./_irule */ "./node_modules/@abaplint/core/build/src/rules/_irule.js");
|
|
49040
|
+
const position_1 = __webpack_require__(/*! ../position */ "./node_modules/@abaplint/core/build/src/position.js");
|
|
48933
49041
|
const __1 = __webpack_require__(/*! .. */ "./node_modules/@abaplint/core/build/src/index.js");
|
|
49042
|
+
const edit_helper_1 = __webpack_require__(/*! ../edit_helper */ "./node_modules/@abaplint/core/build/src/edit_helper.js");
|
|
48934
49043
|
class AlignParametersConf extends _basic_rule_config_1.BasicRuleConfig {
|
|
48935
49044
|
}
|
|
48936
49045
|
exports.AlignParametersConf = AlignParametersConf;
|
|
@@ -48957,7 +49066,8 @@ https://github.com/SAP/styleguides/blob/master/clean-abap/CleanABAP.md#align-par
|
|
|
48957
49066
|
|
|
48958
49067
|
Does not take effect on non functional method calls, use https://rules.abaplint.org/functional_writing/
|
|
48959
49068
|
|
|
48960
|
-
|
|
49069
|
+
If parameters are on the same row, no issues are reported, see
|
|
49070
|
+
https://rules.abaplint.org/max_one_method_parameter_per_line/ for splitting parameters to lines`,
|
|
48961
49071
|
tags: [_irule_1.RuleTag.SingleFile, _irule_1.RuleTag.Whitespace, _irule_1.RuleTag.Styleguide],
|
|
48962
49072
|
badExample: `CALL FUNCTION 'FOOBAR'
|
|
48963
49073
|
EXPORTING
|
|
@@ -49020,16 +49130,28 @@ DATA(sdf) = VALUE type(
|
|
|
49020
49130
|
return undefined;
|
|
49021
49131
|
}
|
|
49022
49132
|
let expectedEqualsColumn = 0;
|
|
49133
|
+
let row = 0;
|
|
49023
49134
|
for (const p of candidate.parameters) {
|
|
49024
49135
|
const currentCol = p.left.getLastToken().getCol() + p.left.getLastToken().getStr().length + 1;
|
|
49136
|
+
if (p.eq.getRow() === row) {
|
|
49137
|
+
return undefined;
|
|
49138
|
+
}
|
|
49139
|
+
row = p.eq.getRow();
|
|
49025
49140
|
if (currentCol > expectedEqualsColumn) {
|
|
49026
49141
|
expectedEqualsColumn = currentCol;
|
|
49027
49142
|
}
|
|
49028
49143
|
}
|
|
49029
49144
|
for (const p of candidate.parameters) {
|
|
49030
49145
|
if (p.eq.getCol() !== expectedEqualsColumn) {
|
|
49146
|
+
let fix;
|
|
49147
|
+
if (p.eq.getCol() < expectedEqualsColumn) {
|
|
49148
|
+
fix = edit_helper_1.EditHelper.insertAt(file, p.eq, " ".repeat(expectedEqualsColumn - p.eq.getCol()));
|
|
49149
|
+
}
|
|
49150
|
+
else {
|
|
49151
|
+
fix = edit_helper_1.EditHelper.deleteRange(file, new position_1.Position(p.eq.getRow(), expectedEqualsColumn), p.eq);
|
|
49152
|
+
}
|
|
49031
49153
|
const message = "Align parameters to column " + expectedEqualsColumn;
|
|
49032
|
-
return issue_1.Issue.atPosition(file, p.eq, message, this.getMetadata().key, this.getConfig().severity);
|
|
49154
|
+
return issue_1.Issue.atPosition(file, p.eq, message, this.getMetadata().key, this.getConfig().severity, fix);
|
|
49033
49155
|
}
|
|
49034
49156
|
}
|
|
49035
49157
|
return undefined;
|
|
@@ -53537,6 +53659,10 @@ Make sure to test the downported code, it might not always be completely correct
|
|
|
53537
53659
|
else if (fieldList.concatTokens().toUpperCase() === "COUNT( * )") {
|
|
53538
53660
|
fieldDefinition = `DATA ${name} TYPE i.`;
|
|
53539
53661
|
}
|
|
53662
|
+
else if (fieldList.concatTokens().toUpperCase() === "@ABAP_TRUE"
|
|
53663
|
+
|| fieldList.concatTokens().toUpperCase() === "@ABAP_FALSE") {
|
|
53664
|
+
fieldDefinition = `DATA ${name} TYPE abap_bool.`;
|
|
53665
|
+
}
|
|
53540
53666
|
else if (fieldList.getChildren().length === 1 && fieldList.getChildren()[0].get() instanceof Expressions.SQLAggregation) {
|
|
53541
53667
|
const c = fieldList.getChildren()[0];
|
|
53542
53668
|
if (c instanceof nodes_1.ExpressionNode) {
|
|
@@ -56818,11 +56944,11 @@ DATA lt_bar TYPE STANDARD TABLE OF ty.`,
|
|
|
56818
56944
|
const concat = tt.concatTokens().toUpperCase();
|
|
56819
56945
|
if (concat.includes("TYPE TABLE OF")) {
|
|
56820
56946
|
const message = "Specify table type";
|
|
56821
|
-
issues.push(issue_1.Issue.
|
|
56947
|
+
issues.push(issue_1.Issue.atPosition(file, tt.getFirstToken().getStart(), message, this.getMetadata().key, this.conf.severity));
|
|
56822
56948
|
}
|
|
56823
56949
|
else if (concat.includes(" WITH ") === false && concat.includes(" RANGE OF ") === false) {
|
|
56824
56950
|
const message = "Specify table key";
|
|
56825
|
-
issues.push(issue_1.Issue.
|
|
56951
|
+
issues.push(issue_1.Issue.atPosition(file, tt.getFirstToken().getStart(), message, this.getMetadata().key, this.conf.severity));
|
|
56826
56952
|
}
|
|
56827
56953
|
}
|
|
56828
56954
|
return issues;
|
|
@@ -64602,7 +64728,6 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
64602
64728
|
exports.SelectSingleFullKey = exports.SelectSingleFullKeyConf = void 0;
|
|
64603
64729
|
const issue_1 = __webpack_require__(/*! ../issue */ "./node_modules/@abaplint/core/build/src/issue.js");
|
|
64604
64730
|
const _basic_rule_config_1 = __webpack_require__(/*! ./_basic_rule_config */ "./node_modules/@abaplint/core/build/src/rules/_basic_rule_config.js");
|
|
64605
|
-
const _irule_1 = __webpack_require__(/*! ./_irule */ "./node_modules/@abaplint/core/build/src/rules/_irule.js");
|
|
64606
64731
|
const __1 = __webpack_require__(/*! .. */ "./node_modules/@abaplint/core/build/src/index.js");
|
|
64607
64732
|
class SelectSingleFullKeyConf extends _basic_rule_config_1.BasicRuleConfig {
|
|
64608
64733
|
constructor() {
|
|
@@ -64622,7 +64747,7 @@ class SelectSingleFullKey {
|
|
|
64622
64747
|
shortDescription: `Detect SELECT SINGLE which are possibily not unique`,
|
|
64623
64748
|
extendedInformation: `Table definitions must be known, ie. inside the errorNamespace`,
|
|
64624
64749
|
pseudoComment: "EC CI_NOORDER",
|
|
64625
|
-
tags: [
|
|
64750
|
+
tags: [],
|
|
64626
64751
|
};
|
|
64627
64752
|
}
|
|
64628
64753
|
initialize(reg) {
|