@abaplint/cli 2.113.22 → 2.113.24

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.
Files changed (2) hide show
  1. package/build/cli.js +84 -40
  2. package/package.json +2 -2
package/build/cli.js CHANGED
@@ -36737,6 +36737,10 @@ class AbstractType {
36737
36737
  var _a;
36738
36738
  return (_a = this.data) === null || _a === void 0 ? void 0 : _a.RTTIName;
36739
36739
  }
36740
+ getDescription() {
36741
+ var _a;
36742
+ return (_a = this.data) === null || _a === void 0 ? void 0 : _a.description;
36743
+ }
36740
36744
  getConversionExit() {
36741
36745
  var _a;
36742
36746
  return (_a = this.data) === null || _a === void 0 ? void 0 : _a.conversionExit;
@@ -41327,9 +41331,15 @@ class DDIC {
41327
41331
  return { type: new Types.VoidType(name) };
41328
41332
  }
41329
41333
  }
41330
- textToType(text, length, decimals, infoText, qualifiedName, conversionExit, ddicName) {
41334
+ textToType(input) {
41331
41335
  // todo: support short strings, and length of different integers, NUMC vs CHAR, min/max length
41332
- switch (text) {
41336
+ const extra = {
41337
+ qualifiedName: input.qualifiedName,
41338
+ conversionExit: input.conversionExit,
41339
+ ddicName: input.ddicName,
41340
+ description: input.description,
41341
+ };
41342
+ switch (input.text) {
41333
41343
  case "DEC": // 1 <= len <= 31
41334
41344
  case "D16F": // 1 <= len <= 31
41335
41345
  case "D16D":
@@ -41338,45 +41348,45 @@ class DDIC {
41338
41348
  case "DF34_DEC": // 1 <= len <= 31
41339
41349
  case "CURR": // 1 <= len <= 31
41340
41350
  case "QUAN": // 1 <= len <= 31
41341
- if (length === undefined) {
41342
- return new Types.UnknownType(text + " unknown length, " + infoText, infoText);
41351
+ if (input.length === undefined) {
41352
+ return new Types.UnknownType(input.text + " unknown length, " + input.infoText, input.infoText);
41343
41353
  }
41344
- else if (decimals === undefined) {
41345
- return new Types.PackedType(parseInt(length, 10), 0, { qualifiedName, conversionExit, ddicName });
41354
+ else if (input.decimals === undefined) {
41355
+ return new Types.PackedType(parseInt(input.length, 10), 0, extra);
41346
41356
  }
41347
- return new Types.PackedType(parseInt(length, 10), parseInt(decimals, 10), { qualifiedName, conversionExit, ddicName });
41357
+ return new Types.PackedType(parseInt(input.length, 10), parseInt(input.decimals, 10), extra);
41348
41358
  case "ACCP":
41349
- return new Types.CharacterType(6, { qualifiedName, conversionExit, ddicName }); // YYYYMM
41359
+ return new Types.CharacterType(6, extra); // YYYYMM
41350
41360
  case "LANG":
41351
- return new Types.CharacterType(1, { qualifiedName, conversionExit, ddicName });
41361
+ return new Types.CharacterType(1, extra);
41352
41362
  case "CLNT":
41353
- return new Types.CharacterType(3, { qualifiedName, conversionExit, ddicName });
41363
+ return new Types.CharacterType(3, extra);
41354
41364
  case "CUKY":
41355
- return new Types.CharacterType(5, { qualifiedName, conversionExit, ddicName });
41365
+ return new Types.CharacterType(5, extra);
41356
41366
  case "UNIT": // 2 <= len <= 3
41357
- return new Types.CharacterType(3, { qualifiedName, conversionExit, ddicName });
41367
+ return new Types.CharacterType(3, extra);
41358
41368
  case "UTCLONG":
41359
- return new Types.CharacterType(27, { qualifiedName, conversionExit, ddicName });
41369
+ return new Types.CharacterType(27, extra);
41360
41370
  case "NUMC": // 1 <= len <= 255
41361
- if (length === undefined) {
41362
- return new Types.UnknownType(text + " unknown length", infoText);
41371
+ if (input.length === undefined) {
41372
+ return new Types.UnknownType(input.text + " unknown length", input.infoText);
41363
41373
  }
41364
- return new Types.NumericType(parseInt(length, 10), qualifiedName);
41374
+ return new Types.NumericType(parseInt(input.length, 10), input.qualifiedName);
41365
41375
  case "CHAR": // 1 <= len <= 30000 (1333 for table fields)
41366
41376
  case "LCHR": // 256 <= len <= 32000
41367
- if (length === undefined) {
41368
- return new Types.UnknownType(text + " unknown length", infoText);
41377
+ if (input.length === undefined) {
41378
+ return new Types.UnknownType(input.text + " unknown length", input.infoText);
41369
41379
  }
41370
- return new Types.CharacterType(parseInt(length, 10), { qualifiedName, conversionExit, ddicName });
41380
+ return new Types.CharacterType(parseInt(input.length, 10), extra);
41371
41381
  case "RAW": // 1 <= len <= 32000
41372
41382
  case "LRAW": // 256 <= len <= 32000
41373
- if (length === undefined) {
41374
- return new Types.UnknownType(text + " unknown length", infoText);
41383
+ if (input.length === undefined) {
41384
+ return new Types.UnknownType(input.text + " unknown length", input.infoText);
41375
41385
  }
41376
- return new Types.HexType(parseInt(length, 10), qualifiedName);
41386
+ return new Types.HexType(parseInt(input.length, 10), input.qualifiedName);
41377
41387
  case "TIMN": // Native HANA
41378
41388
  case "TIMS":
41379
- return new Types.TimeType({ qualifiedName: qualifiedName }); //HHMMSS
41389
+ return new Types.TimeType({ qualifiedName: input.qualifiedName }); //HHMMSS
41380
41390
  case "DECFLOAT16": // len = 16
41381
41391
  case "DECFLOAT34": // len = 34
41382
41392
  case "D16R": // len = 16
@@ -41384,37 +41394,37 @@ class DDIC {
41384
41394
  case "DF16_RAW": // len = 16
41385
41395
  case "DF34_RAW": // len = 34
41386
41396
  case "FLTP": // len = 16
41387
- if (length === undefined) {
41388
- return new Types.UnknownType(text + " unknown length", infoText);
41397
+ if (input.length === undefined) {
41398
+ return new Types.UnknownType(input.text + " unknown length", input.infoText);
41389
41399
  }
41390
- return new Types.FloatingPointType(parseInt(length, 10), qualifiedName);
41400
+ return new Types.FloatingPointType(parseInt(input.length, 10), input.qualifiedName);
41391
41401
  case "DATN": // Native HANA
41392
41402
  case "DATS":
41393
- return new Types.DateType({ qualifiedName: qualifiedName }); //YYYYMMDD
41403
+ return new Types.DateType({ qualifiedName: input.qualifiedName }); //YYYYMMDD
41394
41404
  case "INT1":
41395
41405
  case "INT2":
41396
41406
  case "INT4":
41397
- return Types.IntegerType.get({ qualifiedName: qualifiedName });
41407
+ return Types.IntegerType.get({ qualifiedName: input.qualifiedName });
41398
41408
  case "INT8":
41399
- return new Types.Integer8Type({ qualifiedName: qualifiedName });
41409
+ return new Types.Integer8Type({ qualifiedName: input.qualifiedName });
41400
41410
  case "SSTR": // 1 <= len <= 1333
41401
41411
  case "SSTRING": // 1 <= len <= 1333
41402
41412
  case "STRG": // 256 <= len
41403
41413
  case "STRING": // 256 <= len
41404
- return Types.StringType.get({ qualifiedName: qualifiedName });
41414
+ return Types.StringType.get({ qualifiedName: input.qualifiedName });
41405
41415
  case "RSTR": // 256 <= len
41406
41416
  case "RAWSTRING": // 256 <= len
41407
41417
  case "GEOM_EWKB":
41408
- return new Types.XStringType({ qualifiedName: qualifiedName });
41418
+ return new Types.XStringType({ qualifiedName: input.qualifiedName });
41409
41419
  case "D16S":
41410
41420
  case "D34S":
41411
41421
  case "DF16_SCL":
41412
41422
  case "DF34_SCL":
41413
41423
  case "PREC":
41414
41424
  case "VARC":
41415
- return new Types.UnknownType(text + " is an obsolete data type", infoText);
41425
+ return new Types.UnknownType(input.text + " is an obsolete data type", input.infoText);
41416
41426
  default:
41417
- return new Types.UnknownType(text + " unknown", infoText);
41427
+ return new Types.UnknownType(input.text + " unknown", input.infoText);
41418
41428
  }
41419
41429
  }
41420
41430
  }
@@ -42709,6 +42719,9 @@ class LSPLookup {
42709
42719
  if (variable.getType().getDDICName() !== undefined) {
42710
42720
  value += "\n\nDDIC Name: ```" + variable.getType().getDDICName() + "```";
42711
42721
  }
42722
+ if (variable.getType().getDescription() !== undefined) {
42723
+ value += "\n\nDescription: " + variable.getType().getDescription();
42724
+ }
42712
42725
  return value;
42713
42726
  }
42714
42727
  static referenceHover(ref, scope, reg) {
@@ -46733,6 +46746,7 @@ class DataElement extends _abstract_object_1.AbstractObject {
46733
46746
  return (_a = this.parsedXML) === null || _a === void 0 ? void 0 : _a.texts;
46734
46747
  }
46735
46748
  parseType(reg) {
46749
+ var _a;
46736
46750
  const references = [];
46737
46751
  let lookup = undefined;
46738
46752
  if (this.parsedXML === undefined) {
@@ -46761,7 +46775,16 @@ class DataElement extends _abstract_object_1.AbstractObject {
46761
46775
  lookup = { type: new Types.UnknownType("DATATYPE unexpectely empty in " + this.getName()) };
46762
46776
  }
46763
46777
  else {
46764
- lookup = { type: ddic.textToType(this.parsedXML.datatype, this.parsedXML.leng, this.parsedXML.decimals, this.getName(), this.getName(), undefined, this.getName()) };
46778
+ lookup = { type: ddic.textToType({
46779
+ text: this.parsedXML.datatype,
46780
+ length: this.parsedXML.leng,
46781
+ decimals: this.parsedXML.decimals,
46782
+ infoText: this.getName(),
46783
+ qualifiedName: this.getName(),
46784
+ conversionExit: undefined,
46785
+ ddicName: this.getName(),
46786
+ description: (_a = this.parsedXML.texts) === null || _a === void 0 ? void 0 : _a.heading,
46787
+ }) };
46765
46788
  }
46766
46789
  }
46767
46790
  }
@@ -46914,7 +46937,15 @@ class Domain extends _abstract_object_1.AbstractObject {
46914
46937
  return new Types.UnknownType("Domain " + this.getName() + " parser error", this.getName());
46915
46938
  }
46916
46939
  const ddic = new ddic_1.DDIC(reg);
46917
- return ddic.textToType(this.parsedXML.datatype, this.parsedXML.length, this.parsedXML.decimals, this.getName(), dataElement, this.parsedXML.conversionExit, dataElement);
46940
+ return ddic.textToType({
46941
+ text: this.parsedXML.datatype,
46942
+ length: this.parsedXML.length,
46943
+ decimals: this.parsedXML.decimals,
46944
+ infoText: this.getName(),
46945
+ qualifiedName: dataElement,
46946
+ conversionExit: this.parsedXML.conversionExit,
46947
+ ddicName: dataElement,
46948
+ });
46918
46949
  }
46919
46950
  parse() {
46920
46951
  var _a, _b, _c, _d, _e, _f, _g;
@@ -51428,7 +51459,12 @@ class Table extends _abstract_object_1.AbstractObject {
51428
51459
  const length = field.LENG ? field.LENG : field.INTLEN;
51429
51460
  components.push({
51430
51461
  name: field.FIELDNAME,
51431
- type: ddic.textToType(datatype, length, field.DECIMALS, this.getName() + "-" + field.FIELDNAME)
51462
+ type: ddic.textToType({
51463
+ text: datatype,
51464
+ length: length,
51465
+ decimals: field.DECIMALS,
51466
+ infoText: this.getName() + "-" + field.FIELDNAME,
51467
+ })
51432
51468
  });
51433
51469
  }
51434
51470
  else {
@@ -51663,7 +51699,12 @@ class TableType extends _abstract_object_1.AbstractObject {
51663
51699
  type = new Types.UnknownType("Table Type, empty DATATYPE" + this.getName(), this.getName());
51664
51700
  }
51665
51701
  else {
51666
- const row = ddic.textToType(this.parsedXML.datatype, this.parsedXML.leng, this.parsedXML.decimals, this.getName());
51702
+ const row = ddic.textToType({
51703
+ text: this.parsedXML.datatype,
51704
+ length: this.parsedXML.leng,
51705
+ decimals: this.parsedXML.decimals,
51706
+ infoText: this.getName(),
51707
+ });
51667
51708
  type = new Types.TableType(row, tableOptions, this.getName());
51668
51709
  }
51669
51710
  }
@@ -52010,8 +52051,11 @@ class View extends _abstract_object_1.AbstractObject {
52010
52051
  return new Types.StructureType(components, this.getName());
52011
52052
  }
52012
52053
  getDescription() {
52013
- // todo
52014
- return undefined;
52054
+ var _a;
52055
+ if (this.parsedData === undefined) {
52056
+ this.parseXML();
52057
+ }
52058
+ return (_a = this.parsedData) === null || _a === void 0 ? void 0 : _a.header.DDTEXT;
52015
52059
  }
52016
52060
  ///////////////
52017
52061
  parseXML() {
@@ -52777,7 +52821,7 @@ class Registry {
52777
52821
  }
52778
52822
  static abaplintVersion() {
52779
52823
  // magic, see build script "version.sh"
52780
- return "2.113.22";
52824
+ return "2.113.24";
52781
52825
  }
52782
52826
  getDDICReferences() {
52783
52827
  return this.ddicReferences;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/cli",
3
- "version": "2.113.22",
3
+ "version": "2.113.24",
4
4
  "description": "abaplint - Command Line Interface",
5
5
  "funding": "https://github.com/sponsors/larshp",
6
6
  "bin": {
@@ -38,7 +38,7 @@
38
38
  },
39
39
  "homepage": "https://abaplint.org",
40
40
  "devDependencies": {
41
- "@abaplint/core": "^2.113.22",
41
+ "@abaplint/core": "^2.113.24",
42
42
  "@types/chai": "^4.3.20",
43
43
  "@types/glob": "^8.1.0",
44
44
  "@types/minimist": "^1.2.5",