@abaplint/core 2.82.5 → 2.82.9
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/abaplint.d.ts +20 -0
- package/build/src/abap/2_statements/statements/index.js +3 -0
- package/build/src/abap/2_statements/statements/type_mesh.js +17 -0
- package/build/src/abap/2_statements/statements/type_mesh_begin.js +14 -0
- package/build/src/abap/2_statements/statements/type_mesh_end.js +14 -0
- package/build/src/abap/3_structures/structures/index.js +1 -0
- package/build/src/abap/3_structures/structures/normal.js +1 -1
- package/build/src/abap/3_structures/structures/section_section.js +2 -1
- package/build/src/abap/3_structures/structures/type_mesh.js +12 -0
- package/build/src/abap/5_syntax/basic_types.js +28 -15
- package/build/src/abap/5_syntax/expressions/field_chain.js +1 -0
- package/build/src/abap/5_syntax/global_definitions/find_global_definitions.js +3 -1
- package/build/src/objects/table.js +24 -4
- package/build/src/objects/table_type.js +4 -0
- package/build/src/registry.js +1 -1
- package/package.json +2 -2
package/build/abaplint.d.ts
CHANGED
|
@@ -4969,6 +4969,7 @@ declare namespace Statements {
|
|
|
4969
4969
|
EndSelect,
|
|
4970
4970
|
Refresh,
|
|
4971
4971
|
Shift,
|
|
4972
|
+
TypeMesh_2 as TypeMesh,
|
|
4972
4973
|
Transfer,
|
|
4973
4974
|
Subtract,
|
|
4974
4975
|
Unassign,
|
|
@@ -5008,6 +5009,8 @@ declare namespace Statements {
|
|
|
5008
5009
|
SyntaxCheck,
|
|
5009
5010
|
Aliases,
|
|
5010
5011
|
MethodDef,
|
|
5012
|
+
TypeMeshBegin,
|
|
5013
|
+
TypeMeshEnd,
|
|
5011
5014
|
InterfaceDef,
|
|
5012
5015
|
AtSelectionScreen,
|
|
5013
5016
|
IncludeType,
|
|
@@ -5180,6 +5183,7 @@ declare namespace Structures {
|
|
|
5180
5183
|
Data,
|
|
5181
5184
|
Define,
|
|
5182
5185
|
Do,
|
|
5186
|
+
TypeMesh,
|
|
5183
5187
|
Else,
|
|
5184
5188
|
ElseIf,
|
|
5185
5189
|
EnhancementSection,
|
|
@@ -5628,6 +5632,22 @@ declare class TypeEnumEnd implements IStatement {
|
|
|
5628
5632
|
getMatcher(): IStatementRunnable;
|
|
5629
5633
|
}
|
|
5630
5634
|
|
|
5635
|
+
declare class TypeMesh implements IStructure {
|
|
5636
|
+
getMatcher(): IStructureRunnable;
|
|
5637
|
+
}
|
|
5638
|
+
|
|
5639
|
+
declare class TypeMesh_2 implements IStatement {
|
|
5640
|
+
getMatcher(): IStatementRunnable;
|
|
5641
|
+
}
|
|
5642
|
+
|
|
5643
|
+
declare class TypeMeshBegin implements IStatement {
|
|
5644
|
+
getMatcher(): IStatementRunnable;
|
|
5645
|
+
}
|
|
5646
|
+
|
|
5647
|
+
declare class TypeMeshEnd implements IStatement {
|
|
5648
|
+
getMatcher(): IStatementRunnable;
|
|
5649
|
+
}
|
|
5650
|
+
|
|
5631
5651
|
declare class TypeName extends Expression {
|
|
5632
5652
|
getRunnable(): IStatementRunnable;
|
|
5633
5653
|
}
|
|
@@ -205,6 +205,7 @@ __exportStar(require("./endat"), exports);
|
|
|
205
205
|
__exportStar(require("./endselect"), exports);
|
|
206
206
|
__exportStar(require("./refresh"), exports);
|
|
207
207
|
__exportStar(require("./shift"), exports);
|
|
208
|
+
__exportStar(require("./type_mesh"), exports);
|
|
208
209
|
__exportStar(require("./transfer"), exports);
|
|
209
210
|
__exportStar(require("./subtract"), exports);
|
|
210
211
|
__exportStar(require("./unassign"), exports);
|
|
@@ -244,6 +245,8 @@ __exportStar(require("./format"), exports);
|
|
|
244
245
|
__exportStar(require("./syntax_check"), exports);
|
|
245
246
|
__exportStar(require("./aliases"), exports);
|
|
246
247
|
__exportStar(require("./method_def"), exports);
|
|
248
|
+
__exportStar(require("./type_mesh_begin"), exports);
|
|
249
|
+
__exportStar(require("./type_mesh_end"), exports);
|
|
247
250
|
__exportStar(require("./interface_def"), exports);
|
|
248
251
|
__exportStar(require("./at_selection_screen"), exports);
|
|
249
252
|
__exportStar(require("./include_type"), exports);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TypeMesh = void 0;
|
|
4
|
+
const combi_1 = require("../combi");
|
|
5
|
+
const expressions_1 = require("../expressions");
|
|
6
|
+
const version_1 = require("../../../version");
|
|
7
|
+
class TypeMesh {
|
|
8
|
+
getMatcher() {
|
|
9
|
+
const on = (0, combi_1.seq)("ON", expressions_1.NamespaceSimpleName, "=", expressions_1.NamespaceSimpleName, (0, combi_1.star)((0, combi_1.seq)("AND", expressions_1.NamespaceSimpleName, "=", expressions_1.NamespaceSimpleName)));
|
|
10
|
+
const using = (0, combi_1.seq)("USING KEY", expressions_1.NamespaceSimpleName);
|
|
11
|
+
const association = (0, combi_1.seq)("ASSOCIATION", expressions_1.NamespaceSimpleName, "TO", expressions_1.NamespaceSimpleName, (0, combi_1.plus)(on));
|
|
12
|
+
const ret = (0, combi_1.ver)(version_1.Version.v751, (0, combi_1.seq)("TYPES", expressions_1.NamespaceSimpleName, "TYPE", expressions_1.TypeName, (0, combi_1.plus)(association), (0, combi_1.opt)(using)));
|
|
13
|
+
return ret;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.TypeMesh = TypeMesh;
|
|
17
|
+
//# sourceMappingURL=type_mesh.js.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TypeMeshBegin = void 0;
|
|
4
|
+
const combi_1 = require("../combi");
|
|
5
|
+
const expressions_1 = require("../expressions");
|
|
6
|
+
const version_1 = require("../../../version");
|
|
7
|
+
class TypeMeshBegin {
|
|
8
|
+
getMatcher() {
|
|
9
|
+
const ret = (0, combi_1.ver)(version_1.Version.v740sp05, (0, combi_1.seq)("TYPES", "BEGIN OF MESH", expressions_1.NamespaceSimpleName));
|
|
10
|
+
return ret;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.TypeMeshBegin = TypeMeshBegin;
|
|
14
|
+
//# sourceMappingURL=type_mesh_begin.js.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TypeMeshEnd = void 0;
|
|
4
|
+
const combi_1 = require("../combi");
|
|
5
|
+
const expressions_1 = require("../expressions");
|
|
6
|
+
const version_1 = require("../../../version");
|
|
7
|
+
class TypeMeshEnd {
|
|
8
|
+
getMatcher() {
|
|
9
|
+
const ret = (0, combi_1.ver)(version_1.Version.v740sp05, (0, combi_1.seq)("TYPES", "END OF MESH", expressions_1.NamespaceSimpleName));
|
|
10
|
+
return ret;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.TypeMeshEnd = TypeMeshEnd;
|
|
14
|
+
//# sourceMappingURL=type_mesh_end.js.map
|
|
@@ -26,6 +26,7 @@ __exportStar(require("./constants"), exports);
|
|
|
26
26
|
__exportStar(require("./data"), exports);
|
|
27
27
|
__exportStar(require("./define"), exports);
|
|
28
28
|
__exportStar(require("./do"), exports);
|
|
29
|
+
__exportStar(require("./type_mesh"), exports);
|
|
29
30
|
__exportStar(require("./else"), exports);
|
|
30
31
|
__exportStar(require("./elseif"), exports);
|
|
31
32
|
__exportStar(require("./enhancement_section"), exports);
|
|
@@ -9,7 +9,7 @@ class Normal {
|
|
|
9
9
|
getMatcher() {
|
|
10
10
|
// note that the sequence of alternatives here influences performance
|
|
11
11
|
return (0, _combi_1.alt)((0, _combi_1.sta)(Statements.Move), (0, _combi_1.sta)(Statements.Call), (0, _combi_1.sta)(Statements.Data), (0, _combi_1.sub)(Structures.If), (0, _combi_1.sta)(Statements.Clear), (0, _combi_1.sta)(Statements.FieldSymbol), (0, _combi_1.sta)(Statements.CreateObject), (0, _combi_1.sta)(Statements.CallFunction), (0, _combi_1.sta)(_statement_1.MacroCall), (0, _combi_1.sub)(Structures.Loop), (0, _combi_1.sta)(Statements.Append), (0, _combi_1.sub)(Structures.Try), (0, _combi_1.sta)(Statements.ReadTable), (0, _combi_1.sta)(Statements.Assert), (0, _combi_1.sta)(Statements.Return), (0, _combi_1.sta)(Statements.Select), (0, _combi_1.sta)(Statements.Assign), (0, _combi_1.sta)(Statements.InsertInternal), (0, _combi_1.sta)(Statements.DeleteInternal), (0, _combi_1.sta)(Statements.Concatenate), (0, _combi_1.sub)(Structures.Case), (0, _combi_1.sub)(Structures.CaseType), (0, _combi_1.sub)(Structures.Enhancement), (0, _combi_1.sub)(Structures.EnhancementSection), (0, _combi_1.sta)(Statements.AddCorresponding), (0, _combi_1.sta)(Statements.Add), (0, _combi_1.sta)(Statements.AssignLocalCopy), (0, _combi_1.sta)(Statements.AuthorityCheck), (0, _combi_1.sta)(Statements.Back), (0, _combi_1.sta)(Statements.Break), (0, _combi_1.sta)(Statements.BreakId), (0, _combi_1.sta)(Statements.CallDatabase), (0, _combi_1.sta)(Statements.CallDialog), (0, _combi_1.sta)(Statements.CallKernel), (0, _combi_1.sta)(Statements.CallOLE), (0, _combi_1.sta)(Statements.CallScreen), (0, _combi_1.sta)(Statements.ModifyScreen), (0, _combi_1.sta)(Statements.CallSelectionScreen), (0, _combi_1.sta)(Statements.CallTransaction), (0, _combi_1.sta)(Statements.CallTransformation), (0, _combi_1.sta)(Statements.Check), (0, _combi_1.sta)(Statements.ClassDefinitionLoad), (0, _combi_1.sta)(Statements.CloseCursor), (0, _combi_1.sta)(Statements.CloseDataset), (0, _combi_1.sta)(Statements.Collect), (0, _combi_1.sta)(Statements.Commit), (0, _combi_1.sta)(Statements.Communication), (0, _combi_1.sta)(Statements.Compute), (0, _combi_1.sta)(Statements.CallBadi), (0, _combi_1.sta)(Statements.Condense), (0, _combi_1.sta)(Statements.Constant), (0, _combi_1.sta)(Statements.Contexts), (0, _combi_1.sta)(Statements.Continue), (0, _combi_1.sta)(Statements.ConvertText), (0, _combi_1.sta)(Statements.Convert), (0, _combi_1.sta)(Statements.CreateData), (0, _combi_1.sta)(Statements.CreateOLE), (0, _combi_1.sta)(Statements.DeleteCluster), (0, _combi_1.sta)(Statements.DeleteDatabase), (0, _combi_1.sta)(Statements.DeleteDataset), (0, _combi_1.sta)(Statements.DeleteDynpro), (0, _combi_1.sta)(Statements.DeleteMemory), (0, _combi_1.sta)(Statements.DeleteReport), (0, _combi_1.sta)(Statements.DeleteTextpool), (0, _combi_1.sta)(Statements.Demand), (0, _combi_1.sta)(Statements.Describe), (0, _combi_1.sta)(Statements.Detail), (0, _combi_1.sta)(Statements.Divide), (0, _combi_1.sta)(Statements.EditorCall), (0, _combi_1.sta)(Statements.EnhancementPoint), (0, _combi_1.sta)(Statements.Exit), (0, _combi_1.sta)(Statements.ExportDynpro), (0, _combi_1.sta)(Statements.Export), (0, _combi_1.sta)(Statements.Extract), (0, _combi_1.sta)(Statements.FetchNextCursor), (0, _combi_1.sta)(Statements.FieldGroup), (0, _combi_1.sta)(Statements.Fields), (0, _combi_1.sta)(Statements.Find), (0, _combi_1.sta)(Statements.Format), (0, _combi_1.sta)(Statements.FreeMemory), (0, _combi_1.sta)(Statements.FreeObject), (0, _combi_1.sta)(Statements.Free), (0, _combi_1.sta)(Statements.GenerateDynpro), (0, _combi_1.sta)(Statements.GenerateReport), (0, _combi_1.sta)(Statements.GenerateSubroutine), (0, _combi_1.sta)(Statements.GetBadi), (0, _combi_1.sta)(Statements.GetBit), (0, _combi_1.sta)(Statements.GetCursor), (0, _combi_1.sta)(Statements.GetDataset), (0, _combi_1.sta)(Statements.GetLocale), (0, _combi_1.sta)(Statements.GetParameter), (0, _combi_1.sta)(Statements.GetPFStatus), (0, _combi_1.sta)(Statements.GetProperty), (0, _combi_1.sta)(Statements.GetReference), (0, _combi_1.sta)(Statements.GetRunTime), (0, _combi_1.sta)(Statements.GetTime), (0, _combi_1.sta)(Statements.Hide), (0, _combi_1.sta)(Statements.Nodes), (0, _combi_1.sta)(Statements.ImportDynpro), (0, _combi_1.sta)(Statements.ImportNametab), (0, _combi_1.sta)(Statements.MoveCorresponding), (0, _combi_1.sta)(Statements.Import), (0, _combi_1.sta)(Statements.Infotypes), (0, _combi_1.sta)(Statements.Include), // include does not have to be at top level
|
|
12
|
-
(0, _combi_1.sta)(Statements.InsertDatabase), (0, _combi_1.sta)(Statements.InsertReport), (0, _combi_1.sta)(Statements.InsertTextpool), (0, _combi_1.sta)(Statements.InsertFieldGroup), (0, _combi_1.sta)(Statements.InterfaceLoad), (0, _combi_1.sta)(Statements.Leave), (0, _combi_1.sta)(Statements.LoadReport), (0, _combi_1.sta)(Statements.Local), (0, _combi_1.sta)(Statements.With), (0, _combi_1.sta)(Statements.LogPoint), (0, _combi_1.sta)(Statements.Message), (0, _combi_1.sta)(Statements.ModifyLine), (0, _combi_1.sta)(Statements.ModifyDatabase), (0, _combi_1.sta)(Statements.ModifyInternal), (0, _combi_1.sta)(Statements.Multiply), (0, _combi_1.sta)(Statements.NewLine), (0, _combi_1.sta)(Statements.NewPage), (0, _combi_1.sta)(Statements.OpenCursor), (0, _combi_1.sta)(Statements.OpenDataset), (0, _combi_1.sta)(Statements.Overlay), (0, _combi_1.sta)(Statements.Pack), (0, _combi_1.sta)(Statements.Perform), (0, _combi_1.sta)(Statements.Position), (0, _combi_1.sta)(Statements.Put), (0, _combi_1.sta)(Statements.PrintControl), (0, _combi_1.sta)(Statements.RaiseEvent), (0, _combi_1.sta)(Statements.Raise), (0, _combi_1.sta)(Statements.Ranges), (0, _combi_1.sta)(Statements.ReadDataset), (0, _combi_1.sta)(Statements.ReadLine), (0, _combi_1.sta)(Statements.ReadReport), (0, _combi_1.sta)(Statements.ReadTextpool), (0, _combi_1.sta)(Statements.Receive), (0, _combi_1.sta)(Statements.RefreshControl), (0, _combi_1.sta)(Statements.Refresh), (0, _combi_1.sta)(Statements.Reject), (0, _combi_1.sta)(Statements.Replace), (0, _combi_1.sta)(Statements.Reserve), (0, _combi_1.sta)(Statements.Resume), (0, _combi_1.sta)(Statements.Retry), (0, _combi_1.sta)(Statements.Rollback), (0, _combi_1.sta)(Statements.Scan), (0, _combi_1.sta)(Statements.ScrollList), (0, _combi_1.sta)(Statements.Search), (0, _combi_1.sta)(Statements.SetBit), (0, _combi_1.sta)(Statements.SetBlank), (0, _combi_1.sta)(Statements.SetCountry), (0, _combi_1.sta)(Statements.SetCursor), (0, _combi_1.sta)(Statements.SetDataset), (0, _combi_1.sta)(Statements.SetExtendedCheck), (0, _combi_1.sta)(Statements.SetHandler), (0, _combi_1.sta)(Statements.SetLanguage), (0, _combi_1.sta)(Statements.SetLeft), (0, _combi_1.sta)(Statements.SetLocale), (0, _combi_1.sta)(Statements.SetMargin), (0, _combi_1.sta)(Statements.SetParameter), (0, _combi_1.sta)(Statements.SetPFStatus), (0, _combi_1.sta)(Statements.SetProperty), (0, _combi_1.sta)(Statements.SetRunTime), (0, _combi_1.sta)(Statements.SetScreen), (0, _combi_1.sta)(Statements.SetTitlebar), (0, _combi_1.sta)(Statements.SetUserCommand), (0, _combi_1.sta)(Statements.SetUpdateTask), (0, _combi_1.sta)(Statements.Shift), (0, _combi_1.sta)(Statements.Skip), (0, _combi_1.sta)(Statements.SortDataset), (0, _combi_1.sta)(Statements.Sort), (0, _combi_1.sta)(Statements.Static), (0, _combi_1.sta)(Statements.Split), (0, _combi_1.sta)(Statements.Stop), (0, _combi_1.sta)(Statements.Submit), (0, _combi_1.sta)(Statements.Summary), (0, _combi_1.sta)(Statements.SubtractCorresponding), (0, _combi_1.sta)(Statements.Subtract), (0, _combi_1.sta)(Statements.SuppressDialog), (0, _combi_1.sta)(Statements.Supply), (0, _combi_1.sta)(Statements.Sum), (0, _combi_1.sta)(Statements.SyntaxCheck), (0, _combi_1.sta)(Statements.SystemCall), (0, _combi_1.sta)(Statements.Tables), (0, _combi_1.sta)(Statements.Transfer), (0, _combi_1.sta)(Statements.Translate), (0, _combi_1.sta)(Statements.Type), (0, _combi_1.sta)(Statements.TypePools), (0, _combi_1.sta)(Statements.Uline), (0, _combi_1.sta)(Statements.Unassign), (0, _combi_1.sta)(Statements.Unpack), (0, _combi_1.sta)(Statements.UpdateDatabase), (0, _combi_1.sta)(Statements.Wait), (0, _combi_1.sta)(Statements.Window), (0, _combi_1.sta)(Statements.Write), (0, _combi_1.sta)(Statements.CommitEntities), (0, _combi_1.sta)(Statements.ModifyEntities), (0, _combi_1.sta)(Statements.ReadEntities), (0, _combi_1.sta)(Statements.RollbackEntities), (0, _combi_1.sub)(Structures.Define), (0, _combi_1.sub)(Structures.TestInjection), (0, _combi_1.sub)(Structures.TestSeam), (0, _combi_1.sub)(Structures.Provide), (0, _combi_1.sub)(Structures.CatchSystemExceptions), (0, _combi_1.sub)(Structures.At), (0, _combi_1.sub)(Structures.Constants), (0, _combi_1.sub)(Structures.Types), (0, _combi_1.sub)(Structures.Statics), (0, _combi_1.sub)(Structures.Select), (0, _combi_1.sub)(Structures.Data), (0, _combi_1.sub)(Structures.TypeEnum), (0, _combi_1.sub)(Structures.While), (0, _combi_1.sub)(Structures.With), (0, _combi_1.sub)(Structures.Do), (0, _combi_1.sub)(Structures.ExecSQL));
|
|
12
|
+
(0, _combi_1.sta)(Statements.InsertDatabase), (0, _combi_1.sta)(Statements.InsertReport), (0, _combi_1.sta)(Statements.InsertTextpool), (0, _combi_1.sta)(Statements.InsertFieldGroup), (0, _combi_1.sta)(Statements.InterfaceLoad), (0, _combi_1.sta)(Statements.Leave), (0, _combi_1.sta)(Statements.LoadReport), (0, _combi_1.sta)(Statements.Local), (0, _combi_1.sta)(Statements.With), (0, _combi_1.sta)(Statements.LogPoint), (0, _combi_1.sta)(Statements.Message), (0, _combi_1.sta)(Statements.ModifyLine), (0, _combi_1.sta)(Statements.ModifyDatabase), (0, _combi_1.sta)(Statements.ModifyInternal), (0, _combi_1.sta)(Statements.Multiply), (0, _combi_1.sta)(Statements.NewLine), (0, _combi_1.sta)(Statements.NewPage), (0, _combi_1.sta)(Statements.OpenCursor), (0, _combi_1.sta)(Statements.OpenDataset), (0, _combi_1.sta)(Statements.Overlay), (0, _combi_1.sta)(Statements.Pack), (0, _combi_1.sta)(Statements.Perform), (0, _combi_1.sta)(Statements.Position), (0, _combi_1.sta)(Statements.Put), (0, _combi_1.sta)(Statements.PrintControl), (0, _combi_1.sta)(Statements.RaiseEvent), (0, _combi_1.sta)(Statements.Raise), (0, _combi_1.sta)(Statements.Ranges), (0, _combi_1.sta)(Statements.ReadDataset), (0, _combi_1.sta)(Statements.ReadLine), (0, _combi_1.sta)(Statements.ReadReport), (0, _combi_1.sta)(Statements.ReadTextpool), (0, _combi_1.sta)(Statements.Receive), (0, _combi_1.sta)(Statements.RefreshControl), (0, _combi_1.sta)(Statements.Refresh), (0, _combi_1.sta)(Statements.Reject), (0, _combi_1.sta)(Statements.Replace), (0, _combi_1.sta)(Statements.Reserve), (0, _combi_1.sta)(Statements.Resume), (0, _combi_1.sta)(Statements.Retry), (0, _combi_1.sta)(Statements.Rollback), (0, _combi_1.sta)(Statements.Scan), (0, _combi_1.sta)(Statements.ScrollList), (0, _combi_1.sta)(Statements.Search), (0, _combi_1.sta)(Statements.SetBit), (0, _combi_1.sta)(Statements.SetBlank), (0, _combi_1.sta)(Statements.SetCountry), (0, _combi_1.sta)(Statements.SetCursor), (0, _combi_1.sta)(Statements.SetDataset), (0, _combi_1.sta)(Statements.SetExtendedCheck), (0, _combi_1.sta)(Statements.SetHandler), (0, _combi_1.sta)(Statements.SetLanguage), (0, _combi_1.sta)(Statements.SetLeft), (0, _combi_1.sta)(Statements.SetLocale), (0, _combi_1.sta)(Statements.SetMargin), (0, _combi_1.sta)(Statements.SetParameter), (0, _combi_1.sta)(Statements.SetPFStatus), (0, _combi_1.sta)(Statements.SetProperty), (0, _combi_1.sta)(Statements.SetRunTime), (0, _combi_1.sta)(Statements.SetScreen), (0, _combi_1.sta)(Statements.SetTitlebar), (0, _combi_1.sta)(Statements.SetUserCommand), (0, _combi_1.sta)(Statements.SetUpdateTask), (0, _combi_1.sta)(Statements.Shift), (0, _combi_1.sta)(Statements.Skip), (0, _combi_1.sta)(Statements.SortDataset), (0, _combi_1.sta)(Statements.Sort), (0, _combi_1.sta)(Statements.Static), (0, _combi_1.sta)(Statements.Split), (0, _combi_1.sta)(Statements.Stop), (0, _combi_1.sta)(Statements.Submit), (0, _combi_1.sta)(Statements.Summary), (0, _combi_1.sta)(Statements.SubtractCorresponding), (0, _combi_1.sta)(Statements.Subtract), (0, _combi_1.sta)(Statements.SuppressDialog), (0, _combi_1.sta)(Statements.Supply), (0, _combi_1.sta)(Statements.Sum), (0, _combi_1.sta)(Statements.SyntaxCheck), (0, _combi_1.sta)(Statements.SystemCall), (0, _combi_1.sta)(Statements.Tables), (0, _combi_1.sta)(Statements.Transfer), (0, _combi_1.sta)(Statements.Translate), (0, _combi_1.sta)(Statements.Type), (0, _combi_1.sta)(Statements.TypePools), (0, _combi_1.sta)(Statements.Uline), (0, _combi_1.sta)(Statements.Unassign), (0, _combi_1.sta)(Statements.Unpack), (0, _combi_1.sta)(Statements.UpdateDatabase), (0, _combi_1.sta)(Statements.Wait), (0, _combi_1.sta)(Statements.Window), (0, _combi_1.sta)(Statements.Write), (0, _combi_1.sta)(Statements.CommitEntities), (0, _combi_1.sta)(Statements.ModifyEntities), (0, _combi_1.sta)(Statements.ReadEntities), (0, _combi_1.sta)(Statements.RollbackEntities), (0, _combi_1.sub)(Structures.Define), (0, _combi_1.sub)(Structures.TestInjection), (0, _combi_1.sub)(Structures.TestSeam), (0, _combi_1.sub)(Structures.TypeMesh), (0, _combi_1.sub)(Structures.Provide), (0, _combi_1.sub)(Structures.CatchSystemExceptions), (0, _combi_1.sub)(Structures.At), (0, _combi_1.sub)(Structures.Constants), (0, _combi_1.sub)(Structures.Types), (0, _combi_1.sub)(Structures.Statics), (0, _combi_1.sub)(Structures.Select), (0, _combi_1.sub)(Structures.Data), (0, _combi_1.sub)(Structures.TypeEnum), (0, _combi_1.sub)(Structures.While), (0, _combi_1.sub)(Structures.With), (0, _combi_1.sub)(Structures.Do), (0, _combi_1.sub)(Structures.ExecSQL));
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
exports.Normal = Normal;
|
|
@@ -8,9 +8,10 @@ const constants_1 = require("./constants");
|
|
|
8
8
|
const type_enum_1 = require("./type_enum");
|
|
9
9
|
const class_data_1 = require("./class_data");
|
|
10
10
|
const data_1 = require("./data");
|
|
11
|
+
const _1 = require(".");
|
|
11
12
|
class SectionContents {
|
|
12
13
|
getMatcher() {
|
|
13
|
-
return (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.MethodDef), (0, _combi_1.sta)(Statements.InterfaceDef), (0, _combi_1.sta)(Statements.Data), (0, _combi_1.sta)(Statements.ClassData), (0, _combi_1.sta)(Statements.Events), (0, _combi_1.sta)(Statements.Constant), (0, _combi_1.sta)(Statements.Aliases), (0, _combi_1.sta)(Statements.TypePools), (0, _combi_1.sta)(Statements.InterfaceLoad), (0, _combi_1.sta)(Statements.ClassDefinitionLoad), (0, _combi_1.sub)(types_1.Types), (0, _combi_1.sub)(constants_1.Constants), (0, _combi_1.sub)(type_enum_1.TypeEnum), (0, _combi_1.sub)(data_1.Data), (0, _combi_1.sub)(class_data_1.ClassData), (0, _combi_1.sta)(Statements.Type)));
|
|
14
|
+
return (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.MethodDef), (0, _combi_1.sta)(Statements.InterfaceDef), (0, _combi_1.sta)(Statements.Data), (0, _combi_1.sta)(Statements.ClassData), (0, _combi_1.sta)(Statements.Events), (0, _combi_1.sta)(Statements.Constant), (0, _combi_1.sta)(Statements.Aliases), (0, _combi_1.sta)(Statements.TypePools), (0, _combi_1.sta)(Statements.InterfaceLoad), (0, _combi_1.sta)(Statements.ClassDefinitionLoad), (0, _combi_1.sub)(types_1.Types), (0, _combi_1.sub)(constants_1.Constants), (0, _combi_1.sub)(type_enum_1.TypeEnum), (0, _combi_1.sub)(_1.TypeMesh), (0, _combi_1.sub)(data_1.Data), (0, _combi_1.sub)(class_data_1.ClassData), (0, _combi_1.sta)(Statements.Type)));
|
|
14
15
|
}
|
|
15
16
|
}
|
|
16
17
|
exports.SectionContents = SectionContents;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TypeMesh = void 0;
|
|
4
|
+
const Statements = require("../../2_statements/statements");
|
|
5
|
+
const _combi_1 = require("./_combi");
|
|
6
|
+
class TypeMesh {
|
|
7
|
+
getMatcher() {
|
|
8
|
+
return (0, _combi_1.beginEnd)((0, _combi_1.sta)(Statements.TypeMeshBegin), (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.TypeMesh), (0, _combi_1.sta)(Statements.Type))), (0, _combi_1.sta)(Statements.TypeMeshEnd));
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.TypeMesh = TypeMesh;
|
|
12
|
+
//# sourceMappingURL=type_mesh.js.map
|
|
@@ -524,39 +524,52 @@ class BasicTypes {
|
|
|
524
524
|
return foundType;
|
|
525
525
|
}
|
|
526
526
|
resolveConstantValue(expr) {
|
|
527
|
-
var _a;
|
|
527
|
+
var _a, _b;
|
|
528
528
|
if (!(expr.get() instanceof Expressions.SimpleFieldChain)) {
|
|
529
529
|
throw new Error("resolveConstantValue");
|
|
530
530
|
}
|
|
531
|
-
const
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
const found = this.scope.findVariable(
|
|
531
|
+
const firstNode = expr.getFirstChild();
|
|
532
|
+
const firstToken = firstNode.getFirstToken();
|
|
533
|
+
const firstName = firstToken.getStr();
|
|
534
|
+
if (firstNode.get() instanceof Expressions.Field) {
|
|
535
|
+
const found = this.scope.findVariable(firstName);
|
|
536
536
|
const val = found === null || found === void 0 ? void 0 : found.getValue();
|
|
537
537
|
if (typeof val === "string") {
|
|
538
|
-
this.scope.addReference(
|
|
538
|
+
this.scope.addReference(firstToken, found, _reference_1.ReferenceType.DataReadReference, this.filename);
|
|
539
539
|
return val;
|
|
540
540
|
}
|
|
541
541
|
return undefined;
|
|
542
542
|
}
|
|
543
|
-
else if (
|
|
544
|
-
|
|
545
|
-
|
|
543
|
+
else if (firstNode.get() instanceof Expressions.ClassName
|
|
544
|
+
&& firstName.toLowerCase() === this.scope.getName().toLowerCase()
|
|
545
|
+
&& (this.scope.getType() === _scope_type_1.ScopeType.Interface
|
|
546
|
+
|| this.scope.getType() === _scope_type_1.ScopeType.ClassDefinition)) {
|
|
547
|
+
const children = expr.getChildren();
|
|
548
|
+
const token = (_a = children[2]) === null || _a === void 0 ? void 0 : _a.getFirstToken();
|
|
549
|
+
const found = this.scope.findVariable(token.getStr());
|
|
550
|
+
const val = found === null || found === void 0 ? void 0 : found.getValue();
|
|
551
|
+
if (typeof val === "string") {
|
|
552
|
+
this.scope.addReference(firstToken, found, _reference_1.ReferenceType.DataReadReference, this.filename);
|
|
553
|
+
return val;
|
|
554
|
+
}
|
|
555
|
+
return undefined;
|
|
556
|
+
}
|
|
557
|
+
else if (firstNode.get() instanceof Expressions.ClassName) {
|
|
558
|
+
const obj = this.scope.findObjectDefinition(firstName);
|
|
546
559
|
if (obj === undefined) {
|
|
547
|
-
if (this.scope.existsObject(
|
|
560
|
+
if (this.scope.existsObject(firstName).found === true) {
|
|
548
561
|
return undefined;
|
|
549
562
|
}
|
|
550
|
-
else if (this.scope.getDDIC().inErrorNamespace(
|
|
551
|
-
throw new Error("resolveConstantValue, not found: " +
|
|
563
|
+
else if (this.scope.getDDIC().inErrorNamespace(firstName) === true) {
|
|
564
|
+
throw new Error("resolveConstantValue, not found: " + firstName);
|
|
552
565
|
}
|
|
553
566
|
else {
|
|
554
|
-
this.scope.addReference(
|
|
567
|
+
this.scope.addReference(firstNode.getFirstToken(), undefined, _reference_1.ReferenceType.ObjectOrientedVoidReference, this.filename, { ooName: firstName.toUpperCase() });
|
|
555
568
|
return undefined;
|
|
556
569
|
}
|
|
557
570
|
}
|
|
558
571
|
const children = expr.getChildren();
|
|
559
|
-
const token = (
|
|
572
|
+
const token = (_b = children[2]) === null || _b === void 0 ? void 0 : _b.getFirstToken();
|
|
560
573
|
const attr = token.getStr();
|
|
561
574
|
const c = new _object_oriented_1.ObjectOriented(this.scope).searchConstantName(obj, attr);
|
|
562
575
|
if (c instanceof class_constant_1.ClassConstant) {
|
|
@@ -130,6 +130,7 @@ class FieldChain {
|
|
|
130
130
|
return new basic_1.ObjectReferenceType(found.id);
|
|
131
131
|
}
|
|
132
132
|
else if (scope.getDDIC().inErrorNamespace(classNam) === false) {
|
|
133
|
+
scope.addReference(classTok, undefined, _reference_1.ReferenceType.ObjectOrientedVoidReference, filename, { ooName: classNam.toUpperCase() });
|
|
133
134
|
return new basic_1.VoidType(classNam);
|
|
134
135
|
}
|
|
135
136
|
else {
|
|
@@ -60,7 +60,6 @@ class FindGlobalDefinitions {
|
|
|
60
60
|
if (def === undefined) {
|
|
61
61
|
return 1;
|
|
62
62
|
}
|
|
63
|
-
// todo, count constants
|
|
64
63
|
let count = 0;
|
|
65
64
|
for (const t of def.getTypeDefinitions().getAll()) {
|
|
66
65
|
count = count + this.count(t.type.getType());
|
|
@@ -68,6 +67,9 @@ class FindGlobalDefinitions {
|
|
|
68
67
|
for (const a of def.getAttributes().getAll()) {
|
|
69
68
|
count = count + this.count(a.getType());
|
|
70
69
|
}
|
|
70
|
+
for (const a of def.getAttributes().getConstants()) {
|
|
71
|
+
count = count + this.count(a.getType());
|
|
72
|
+
}
|
|
71
73
|
for (const m of def.getMethodDefinitions().getAll()) {
|
|
72
74
|
for (const p of m.getParameters().getAll()) {
|
|
73
75
|
count = count + this.count(p.getType());
|
|
@@ -110,10 +110,24 @@ class Table extends _abstract_object_1.AbstractObject {
|
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
else if (comptype === "S" && field.FIELDNAME.startsWith(".INCLU-")) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
}
|
|
113
|
+
const lookup = ddic.lookupTableOrView(field.ROLLNAME);
|
|
114
|
+
if (lookup.object) {
|
|
115
|
+
references.push({ object: lookup.object });
|
|
116
|
+
}
|
|
117
|
+
const found = lookup.type;
|
|
118
|
+
if (found instanceof Types.VoidType) {
|
|
119
|
+
// set the full structure to void
|
|
120
|
+
return found;
|
|
121
|
+
}
|
|
122
|
+
else if (found instanceof Types.StructureType) {
|
|
123
|
+
const suffix = field.FIELDNAME.split("-")[1];
|
|
124
|
+
for (const c of found.getComponents()) {
|
|
125
|
+
components.push({ name: c.name + suffix, type: c.type });
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
else if (found instanceof Types.UnknownType) {
|
|
129
|
+
return found;
|
|
130
|
+
}
|
|
117
131
|
}
|
|
118
132
|
else if (comptype === "S") {
|
|
119
133
|
const lookup = ddic.lookupTableOrView(field.ROLLNAME);
|
|
@@ -132,6 +146,12 @@ class Table extends _abstract_object_1.AbstractObject {
|
|
|
132
146
|
type: new basic_1.DataReference(new basic_1.AnyType())
|
|
133
147
|
});
|
|
134
148
|
}
|
|
149
|
+
else if (field.ROLLNAME === "OBJECT") {
|
|
150
|
+
components.push({
|
|
151
|
+
name: field.FIELDNAME,
|
|
152
|
+
type: new basic_1.GenericObjectReferenceType()
|
|
153
|
+
});
|
|
154
|
+
}
|
|
135
155
|
else {
|
|
136
156
|
const lookup = ddic.lookupObject(field.ROLLNAME);
|
|
137
157
|
components.push({ name: field.FIELDNAME, type: lookup.type });
|
|
@@ -4,6 +4,7 @@ exports.TableType = void 0;
|
|
|
4
4
|
const _abstract_object_1 = require("./_abstract_object");
|
|
5
5
|
const Types = require("../abap/types/basic");
|
|
6
6
|
const ddic_1 = require("../ddic");
|
|
7
|
+
const basic_1 = require("../abap/types/basic");
|
|
7
8
|
class TableType extends _abstract_object_1.AbstractObject {
|
|
8
9
|
constructor() {
|
|
9
10
|
super(...arguments);
|
|
@@ -55,6 +56,9 @@ class TableType extends _abstract_object_1.AbstractObject {
|
|
|
55
56
|
references.push({ object: lookup.object });
|
|
56
57
|
}
|
|
57
58
|
}
|
|
59
|
+
else if (this.parsedXML.rowkind === "R" && this.parsedXML.rowtype === "OBJECT") {
|
|
60
|
+
type = new Types.TableType(new basic_1.GenericObjectReferenceType(), { withHeader: false }, this.getName());
|
|
61
|
+
}
|
|
58
62
|
else if (this.parsedXML.rowkind === "R" && this.parsedXML.rowtype !== undefined) {
|
|
59
63
|
const lookup = ddic.lookupObject(this.parsedXML.rowtype);
|
|
60
64
|
type = new Types.TableType(lookup.type, { withHeader: false }, this.getName());
|
package/build/src/registry.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/core",
|
|
3
|
-
"version": "2.82.
|
|
3
|
+
"version": "2.82.9",
|
|
4
4
|
"description": "abaplint - Core API",
|
|
5
5
|
"main": "build/src/index.js",
|
|
6
6
|
"typings": "build/abaplint.d.ts",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@microsoft/api-extractor": "^7.18.19",
|
|
49
49
|
"@types/chai": "^4.2.22",
|
|
50
50
|
"@types/mocha": "^9.0.0",
|
|
51
|
-
"@types/node": "^16.11.
|
|
51
|
+
"@types/node": "^16.11.11",
|
|
52
52
|
"chai": "^4.3.4",
|
|
53
53
|
"eslint": "^8.3.0",
|
|
54
54
|
"mocha": "^9.1.3",
|