@abaplint/core 2.83.8 → 2.83.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.
@@ -551,6 +551,82 @@ declare class CatchSystemExceptions_2 implements IStatement {
551
551
  getMatcher(): IStatementRunnable;
552
552
  }
553
553
 
554
+ declare class CDSAggregate extends Expression {
555
+ getRunnable(): IStatementRunnable;
556
+ }
557
+
558
+ declare class CDSAnnotation extends Expression {
559
+ getRunnable(): IStatementRunnable;
560
+ }
561
+
562
+ declare class CDSAnnotationArray extends Expression {
563
+ getRunnable(): IStatementRunnable;
564
+ }
565
+
566
+ declare class CDSAnnotationObject extends Expression {
567
+ getRunnable(): IStatementRunnable;
568
+ }
569
+
570
+ declare class CDSAnnotationSimple extends Expression {
571
+ getRunnable(): IStatementRunnable;
572
+ }
573
+
574
+ declare class CDSArithmetics extends Expression {
575
+ getRunnable(): IStatementRunnable;
576
+ }
577
+
578
+ declare class CDSAs extends Expression {
579
+ getRunnable(): IStatementRunnable;
580
+ }
581
+
582
+ declare class CDSAssociation extends Expression {
583
+ getRunnable(): IStatementRunnable;
584
+ }
585
+
586
+ declare class CDSCardinality extends Expression {
587
+ getRunnable(): IStatementRunnable;
588
+ }
589
+
590
+ declare class CDSCase extends Expression {
591
+ getRunnable(): IStatementRunnable;
592
+ }
593
+
594
+ declare class CDSCast extends Expression {
595
+ getRunnable(): IStatementRunnable;
596
+ }
597
+
598
+ declare class CDSComposition extends Expression {
599
+ getRunnable(): IStatementRunnable;
600
+ }
601
+
602
+ declare class CDSCondition extends Expression {
603
+ getRunnable(): IStatementRunnable;
604
+ }
605
+
606
+ declare class CDSDefineAbstract extends Expression {
607
+ getRunnable(): IStatementRunnable;
608
+ }
609
+
610
+ declare class CDSDefineView extends Expression {
611
+ getRunnable(): IStatementRunnable;
612
+ }
613
+
614
+ declare class CDSElement extends Expression {
615
+ getRunnable(): IStatementRunnable;
616
+ }
617
+
618
+ declare class CDSFunction extends Expression {
619
+ getRunnable(): IStatementRunnable;
620
+ }
621
+
622
+ declare class CDSGroupBy extends Expression {
623
+ getRunnable(): IStatementRunnable;
624
+ }
625
+
626
+ declare class CDSJoin extends Expression {
627
+ getRunnable(): IStatementRunnable;
628
+ }
629
+
554
630
  declare class CDSMetadataExtension extends AbstractObject {
555
631
  getType(): string;
556
632
  getAllowedNaming(): {
@@ -560,10 +636,46 @@ declare class CDSMetadataExtension extends AbstractObject {
560
636
  getDescription(): string | undefined;
561
637
  }
562
638
 
639
+ declare class CDSName extends Expression {
640
+ getRunnable(): IStatementRunnable;
641
+ }
642
+
643
+ declare class CDSParameters extends Expression {
644
+ getRunnable(): IStatementRunnable;
645
+ }
646
+
563
647
  export declare class CDSParser {
564
648
  parse(file: IFile | undefined): ExpressionNode | undefined;
565
649
  }
566
650
 
651
+ declare class CDSRelation extends Expression {
652
+ getRunnable(): IStatementRunnable;
653
+ }
654
+
655
+ declare class CDSSelect extends Expression {
656
+ getRunnable(): IStatementRunnable;
657
+ }
658
+
659
+ declare class CDSSource extends Expression {
660
+ getRunnable(): IStatementRunnable;
661
+ }
662
+
663
+ declare class CDSString extends Expression {
664
+ getRunnable(): IStatementRunnable;
665
+ }
666
+
667
+ declare class CDSType extends Expression {
668
+ getRunnable(): IStatementRunnable;
669
+ }
670
+
671
+ declare class CDSWhere extends Expression {
672
+ getRunnable(): IStatementRunnable;
673
+ }
674
+
675
+ declare class CDSWithParameters extends Expression {
676
+ getRunnable(): IStatementRunnable;
677
+ }
678
+
567
679
  declare class ChangeDocument extends AbstractObject {
568
680
  getType(): string;
569
681
  getAllowedNaming(): {
@@ -1132,6 +1244,7 @@ declare class DataDefinition extends AbstractObject {
1132
1244
  getSQLViewName(): string | undefined;
1133
1245
  getDescription(): string | undefined;
1134
1246
  parseType(reg: IRegistry): AbstractType;
1247
+ getParsedData(): ParsedDataDefinition | undefined;
1135
1248
  listSources(): {
1136
1249
  name: string;
1137
1250
  as: string | undefined;
@@ -1838,6 +1951,40 @@ declare namespace Expressions {
1838
1951
  }
1839
1952
  export { Expressions }
1840
1953
 
1954
+ declare namespace ExpressionsCDS {
1955
+ export {
1956
+ CDSAggregate,
1957
+ CDSAnnotationArray,
1958
+ CDSAnnotationObject,
1959
+ CDSAnnotationSimple,
1960
+ CDSAnnotation,
1961
+ CDSArithmetics,
1962
+ CDSAs,
1963
+ CDSAssociation,
1964
+ CDSCardinality,
1965
+ CDSCase,
1966
+ CDSCast,
1967
+ CDSComposition,
1968
+ CDSCondition,
1969
+ CDSDefineAbstract,
1970
+ CDSDefineView,
1971
+ CDSElement,
1972
+ CDSFunction,
1973
+ CDSGroupBy,
1974
+ CDSJoin,
1975
+ CDSName,
1976
+ CDSParameters,
1977
+ CDSRelation,
1978
+ CDSSelect,
1979
+ CDSSource,
1980
+ CDSString,
1981
+ CDSType,
1982
+ CDSWhere,
1983
+ CDSWithParameters
1984
+ }
1985
+ }
1986
+ export { ExpressionsCDS }
1987
+
1841
1988
  declare class ExtensionIndex extends AbstractObject {
1842
1989
  getType(): string;
1843
1990
  getAllowedNaming(): {
@@ -3934,6 +4081,7 @@ declare type ParsedDataDefinition = {
3934
4081
  sqlViewName: string | undefined;
3935
4082
  fields: {
3936
4083
  name: string;
4084
+ annotations: string[];
3937
4085
  }[];
3938
4086
  sources: {
3939
4087
  name: string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Severity = exports.Visibility = exports.Info = exports.Rename = exports.PrettyPrinter = exports.Position = exports.CurrentScope = exports.ABAPFile = exports.SpaghettiScope = exports.SyntaxLogic = exports.ABAPObject = exports.Tokens = exports.CDSParser = exports.LanguageServerTypes = exports.DDLParser = exports.applyEditList = exports.applyEditSingle = exports.SpaghettiScopeNode = exports.AbstractFile = exports.Token = exports.ScopeType = exports.BasicTypes = exports.TypedIdentifier = exports.AbstractType = exports.VirtualPosition = exports.Comment = exports.Unknown = exports.Empty = exports.Identifier = exports.Nodes = exports.Types = exports.Expressions = exports.Statements = exports.Structures = exports.Objects = exports.ArtifactsRules = exports.ArtifactsObjects = exports.ArtifactsABAP = exports.BuiltIn = exports.MethodLengthStats = exports.LanguageServer = exports.Registry = exports.ReferenceType = exports.Version = exports.Config = exports.Issue = exports.MemoryFile = void 0;
3
+ exports.Severity = exports.Visibility = exports.Info = exports.Rename = exports.PrettyPrinter = exports.Position = exports.CurrentScope = exports.ABAPFile = exports.SpaghettiScope = exports.SyntaxLogic = exports.ABAPObject = exports.Tokens = exports.ExpressionsCDS = exports.CDSParser = exports.LanguageServerTypes = exports.DDLParser = exports.applyEditList = exports.applyEditSingle = exports.SpaghettiScopeNode = exports.AbstractFile = exports.Token = exports.ScopeType = exports.BasicTypes = exports.TypedIdentifier = exports.AbstractType = exports.VirtualPosition = exports.Comment = exports.Unknown = exports.Empty = exports.Identifier = exports.Nodes = exports.Types = exports.Expressions = exports.Statements = exports.Structures = exports.Objects = exports.ArtifactsRules = exports.ArtifactsObjects = exports.ArtifactsABAP = exports.BuiltIn = exports.MethodLengthStats = exports.LanguageServer = exports.Registry = exports.ReferenceType = exports.Version = exports.Config = exports.Issue = exports.MemoryFile = void 0;
4
4
  const issue_1 = require("./issue");
5
5
  Object.defineProperty(exports, "Issue", { enumerable: true, get: function () { return issue_1.Issue; } });
6
6
  const config_1 = require("./config");
@@ -44,6 +44,8 @@ const Statements = require("./abap/2_statements/statements");
44
44
  exports.Statements = Statements;
45
45
  const Expressions = require("./abap/2_statements/expressions");
46
46
  exports.Expressions = Expressions;
47
+ const ExpressionsCDS = require("./cds/expressions");
48
+ exports.ExpressionsCDS = ExpressionsCDS;
47
49
  const Structures = require("./abap/3_structures/structures");
48
50
  exports.Structures = Structures;
49
51
  const Nodes = require("./abap/nodes");
@@ -33,6 +33,9 @@ class DataDefinition extends _abstract_object_1.AbstractObject {
33
33
  this.parse();
34
34
  return new cds_determine_types_1.CDSDetermineTypes().parseType(reg, this.parsedData);
35
35
  }
36
+ getParsedData() {
37
+ return this.parsedData;
38
+ }
36
39
  listSources() {
37
40
  var _a;
38
41
  this.parse();
@@ -97,7 +100,14 @@ class DataDefinition extends _abstract_object_1.AbstractObject {
97
100
  if ((_b = this.parsedData) === null || _b === void 0 ? void 0 : _b.associations.some(a => { var _a; return a.name.toUpperCase() === name.toUpperCase() || ((_a = a.as) === null || _a === void 0 ? void 0 : _a.toUpperCase()) === name.toUpperCase(); })) {
98
101
  continue;
99
102
  }
100
- this.parsedData.fields.push({ name: name });
103
+ const annotations = [];
104
+ for (const a of e.findDirectExpressions(expressions_1.CDSAnnotation)) {
105
+ annotations.push(a.concatTokens());
106
+ }
107
+ this.parsedData.fields.push({
108
+ name: name,
109
+ annotations: annotations,
110
+ });
101
111
  }
102
112
  }
103
113
  findSourcesAndRelations(tree) {
@@ -68,7 +68,7 @@ class Registry {
68
68
  }
69
69
  static abaplintVersion() {
70
70
  // magic, see build script "version.sh"
71
- return "2.83.8";
71
+ return "2.83.9";
72
72
  }
73
73
  getDDICReferences() {
74
74
  return this.references;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/core",
3
- "version": "2.83.8",
3
+ "version": "2.83.9",
4
4
  "description": "abaplint - Core API",
5
5
  "main": "build/src/index.js",
6
6
  "typings": "build/abaplint.d.ts",