@swagger-api/apidom-ast 1.0.0-alpha.9 → 1.0.0-beta.0

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 (116) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/apidom-ast.browser.js +797 -406
  3. package/dist/apidom-ast.browser.min.js +1 -1
  4. package/package.json +16 -16
  5. package/{cjs → src}/Error.cjs +7 -0
  6. package/{es → src}/Error.mjs +6 -0
  7. package/{cjs → src}/Literal.cjs +7 -0
  8. package/{es → src}/Literal.mjs +6 -0
  9. package/{cjs → src}/Node.cjs +7 -0
  10. package/{es → src}/Node.mjs +7 -0
  11. package/{cjs → src}/ParseResult.cjs +3 -0
  12. package/{es → src}/ParseResult.mjs +3 -0
  13. package/{cjs → src}/Position.cjs +14 -0
  14. package/{es → src}/Position.mjs +15 -0
  15. package/{es → src}/index.mjs +1 -2
  16. package/{cjs → src}/json/nodes/JsonArray.cjs +3 -0
  17. package/{es → src}/json/nodes/JsonArray.mjs +3 -0
  18. package/{cjs → src}/json/nodes/JsonDocument.cjs +3 -0
  19. package/{es → src}/json/nodes/JsonDocument.mjs +3 -0
  20. package/{cjs → src}/json/nodes/JsonEscapeSequence.cjs +3 -0
  21. package/{es → src}/json/nodes/JsonEscapeSequence.mjs +3 -0
  22. package/{cjs → src}/json/nodes/JsonFalse.cjs +3 -0
  23. package/{es → src}/json/nodes/JsonFalse.mjs +3 -0
  24. package/{cjs → src}/json/nodes/JsonKey.cjs +3 -0
  25. package/{es → src}/json/nodes/JsonKey.mjs +3 -0
  26. package/{cjs → src}/json/nodes/JsonNode.cjs +3 -0
  27. package/{es → src}/json/nodes/JsonNode.mjs +3 -0
  28. package/{cjs → src}/json/nodes/JsonNull.cjs +3 -0
  29. package/{es → src}/json/nodes/JsonNull.mjs +3 -0
  30. package/{cjs → src}/json/nodes/JsonNumber.cjs +3 -0
  31. package/{es → src}/json/nodes/JsonNumber.mjs +3 -0
  32. package/{cjs → src}/json/nodes/JsonObject.cjs +3 -0
  33. package/{es → src}/json/nodes/JsonObject.mjs +3 -0
  34. package/{cjs → src}/json/nodes/JsonProperty.cjs +7 -0
  35. package/{es → src}/json/nodes/JsonProperty.mjs +6 -0
  36. package/{cjs → src}/json/nodes/JsonString.cjs +3 -0
  37. package/{es → src}/json/nodes/JsonString.mjs +3 -0
  38. package/{cjs → src}/json/nodes/JsonStringContent.cjs +3 -0
  39. package/{es → src}/json/nodes/JsonStringContent.mjs +3 -0
  40. package/{cjs → src}/json/nodes/JsonTrue.cjs +3 -0
  41. package/{es → src}/json/nodes/JsonTrue.mjs +3 -0
  42. package/{cjs → src}/json/nodes/JsonValue.cjs +7 -0
  43. package/{es → src}/json/nodes/JsonValue.mjs +6 -0
  44. package/{cjs → src}/json/nodes/predicates.cjs +47 -0
  45. package/{es → src}/json/nodes/predicates.mjs +47 -0
  46. package/{cjs → src}/predicates.cjs +19 -0
  47. package/{es → src}/predicates.mjs +19 -0
  48. package/{cjs → src}/traversal/visitor.cjs +43 -16
  49. package/{es → src}/traversal/visitor.mjs +43 -16
  50. package/{cjs → src}/yaml/anchors-aliases/ReferenceManager.cjs +3 -0
  51. package/{es → src}/yaml/anchors-aliases/ReferenceManager.mjs +3 -0
  52. package/{cjs → src}/yaml/errors/YamlError.cjs +3 -0
  53. package/{es → src}/yaml/errors/YamlError.mjs +4 -0
  54. package/{cjs → src}/yaml/errors/YamlReferenceError.cjs +3 -0
  55. package/{es → src}/yaml/errors/YamlReferenceError.mjs +3 -0
  56. package/{cjs → src}/yaml/errors/YamlSchemaError.cjs +3 -0
  57. package/{es → src}/yaml/errors/YamlSchemaError.mjs +3 -0
  58. package/{cjs → src}/yaml/errors/YamlTagError.cjs +7 -0
  59. package/{es → src}/yaml/errors/YamlTagError.mjs +6 -0
  60. package/{cjs → src}/yaml/nodes/YamlAlias.cjs +7 -0
  61. package/{es → src}/yaml/nodes/YamlAlias.mjs +6 -0
  62. package/{cjs → src}/yaml/nodes/YamlAnchor.cjs +7 -0
  63. package/{es → src}/yaml/nodes/YamlAnchor.mjs +6 -0
  64. package/{cjs → src}/yaml/nodes/YamlCollection.cjs +3 -0
  65. package/{es → src}/yaml/nodes/YamlCollection.mjs +3 -0
  66. package/{cjs → src}/yaml/nodes/YamlComment.cjs +7 -0
  67. package/{es → src}/yaml/nodes/YamlComment.mjs +6 -0
  68. package/{cjs → src}/yaml/nodes/YamlDirective.cjs +11 -0
  69. package/{es → src}/yaml/nodes/YamlDirective.mjs +9 -0
  70. package/{cjs → src}/yaml/nodes/YamlDocument.cjs +3 -0
  71. package/{es → src}/yaml/nodes/YamlDocument.mjs +3 -0
  72. package/{cjs → src}/yaml/nodes/YamlKeyValuePair.cjs +7 -0
  73. package/{es → src}/yaml/nodes/YamlKeyValuePair.mjs +6 -0
  74. package/{cjs → src}/yaml/nodes/YamlMapping.cjs +3 -0
  75. package/{es → src}/yaml/nodes/YamlMapping.mjs +3 -0
  76. package/{cjs → src}/yaml/nodes/YamlNode.cjs +7 -0
  77. package/{es → src}/yaml/nodes/YamlNode.mjs +6 -0
  78. package/{cjs → src}/yaml/nodes/YamlScalar.cjs +7 -0
  79. package/{es → src}/yaml/nodes/YamlScalar.mjs +6 -0
  80. package/{cjs → src}/yaml/nodes/YamlSequence.cjs +3 -0
  81. package/{es → src}/yaml/nodes/YamlSequence.mjs +3 -0
  82. package/{cjs → src}/yaml/nodes/YamlStream.cjs +3 -0
  83. package/{es → src}/yaml/nodes/YamlStream.mjs +3 -0
  84. package/{cjs → src}/yaml/nodes/YamlStyle.cjs +6 -0
  85. package/{es → src}/yaml/nodes/YamlStyle.mjs +7 -0
  86. package/{cjs → src}/yaml/nodes/YamlTag.cjs +9 -0
  87. package/{es → src}/yaml/nodes/YamlTag.mjs +11 -0
  88. package/{cjs → src}/yaml/nodes/predicates.cjs +43 -0
  89. package/{es → src}/yaml/nodes/predicates.mjs +43 -0
  90. package/{cjs → src}/yaml/schemas/failsafe/index.cjs +3 -0
  91. package/{es → src}/yaml/schemas/failsafe/index.mjs +3 -0
  92. package/{cjs → src}/yaml/schemas/json/index.cjs +3 -0
  93. package/{es → src}/yaml/schemas/json/index.mjs +3 -0
  94. package/types/apidom-ast.d.ts +826 -0
  95. package/types/dist.d.ts +0 -486
  96. /package/{cjs → src}/index.cjs +0 -0
  97. /package/{cjs → src}/yaml/schemas/ScalarTag.cjs +0 -0
  98. /package/{es → src}/yaml/schemas/ScalarTag.mjs +0 -0
  99. /package/{cjs → src}/yaml/schemas/Tag.cjs +0 -0
  100. /package/{es → src}/yaml/schemas/Tag.mjs +0 -0
  101. /package/{cjs → src}/yaml/schemas/canonical-format.cjs +0 -0
  102. /package/{es → src}/yaml/schemas/canonical-format.mjs +0 -0
  103. /package/{cjs → src}/yaml/schemas/failsafe/GenericMapping.cjs +0 -0
  104. /package/{es → src}/yaml/schemas/failsafe/GenericMapping.mjs +0 -0
  105. /package/{cjs → src}/yaml/schemas/failsafe/GenericSequence.cjs +0 -0
  106. /package/{es → src}/yaml/schemas/failsafe/GenericSequence.mjs +0 -0
  107. /package/{cjs → src}/yaml/schemas/failsafe/GenericString.cjs +0 -0
  108. /package/{es → src}/yaml/schemas/failsafe/GenericString.mjs +0 -0
  109. /package/{cjs → src}/yaml/schemas/json/Boolean.cjs +0 -0
  110. /package/{es → src}/yaml/schemas/json/Boolean.mjs +0 -0
  111. /package/{cjs → src}/yaml/schemas/json/FloatingPoint.cjs +0 -0
  112. /package/{es → src}/yaml/schemas/json/FloatingPoint.mjs +0 -0
  113. /package/{cjs → src}/yaml/schemas/json/Integer.cjs +0 -0
  114. /package/{es → src}/yaml/schemas/json/Integer.mjs +0 -0
  115. /package/{cjs → src}/yaml/schemas/json/Null.cjs +0 -0
  116. /package/{es → src}/yaml/schemas/json/Null.mjs +0 -0
@@ -5,6 +5,9 @@ exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _ramda = require("ramda");
7
7
  var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
8
+ /**
9
+ * @public
10
+ */
8
11
  class JsonDocument extends _JsonNode.default {
9
12
  static type = 'document';
10
13
  get child() {
@@ -1,5 +1,8 @@
1
1
  import { head } from 'ramda';
2
2
  import JsonNode from "./JsonNode.mjs";
3
+ /**
4
+ * @public
5
+ */
3
6
  class JsonDocument extends JsonNode {
4
7
  static type = 'document';
5
8
  get child() {
@@ -4,6 +4,9 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
7
+ /**
8
+ * @public
9
+ */
7
10
  class JsonEscapeSequence extends _JsonValue.default {
8
11
  static type = 'escapeSequence';
9
12
  }
@@ -1,4 +1,7 @@
1
1
  import JsonValue from "./JsonValue.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  class JsonEscapeSequence extends JsonValue {
3
6
  static type = 'escapeSequence';
4
7
  }
@@ -4,6 +4,9 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
7
+ /**
8
+ * @public
9
+ */
7
10
  class JsonFalse extends _JsonValue.default {
8
11
  static type = 'false';
9
12
  }
@@ -1,4 +1,7 @@
1
1
  import JsonValue from "./JsonValue.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  class JsonFalse extends JsonValue {
3
6
  static type = 'false';
4
7
  }
@@ -4,6 +4,9 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonString = _interopRequireDefault(require("./JsonString.cjs"));
7
+ /**
8
+ * @public
9
+ */
7
10
  class JsonKey extends _JsonString.default {
8
11
  static type = 'key';
9
12
  }
@@ -1,4 +1,7 @@
1
1
  import JsonString from "./JsonString.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  class JsonKey extends JsonString {
3
6
  static type = 'key';
4
7
  }
@@ -4,5 +4,8 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _Node = _interopRequireDefault(require("../../Node.cjs"));
7
+ /**
8
+ * @public
9
+ */
7
10
  class JsonNode extends _Node.default {}
8
11
  var _default = exports.default = JsonNode;
@@ -1,3 +1,6 @@
1
1
  import Node from "../../Node.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  class JsonNode extends Node {}
3
6
  export default JsonNode;
@@ -4,6 +4,9 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
7
+ /**
8
+ * @public
9
+ */
7
10
  class JsonNull extends _JsonValue.default {
8
11
  static type = 'null';
9
12
  }
@@ -1,4 +1,7 @@
1
1
  import JsonValue from "./JsonValue.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  class JsonNull extends JsonValue {
3
6
  static type = 'null';
4
7
  }
@@ -4,6 +4,9 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
7
+ /**
8
+ * @public
9
+ */
7
10
  class JsonNumber extends _JsonValue.default {
8
11
  static type = 'number';
9
12
  }
@@ -1,4 +1,7 @@
1
1
  import JsonValue from "./JsonValue.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  class JsonNumber extends JsonValue {
3
6
  static type = 'number';
4
7
  }
@@ -5,6 +5,9 @@ exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
7
7
  var _predicates = require("./predicates.cjs");
8
+ /**
9
+ * @public
10
+ */
8
11
  class JsonObject extends _JsonNode.default {
9
12
  static type = 'object';
10
13
  get properties() {
@@ -1,5 +1,8 @@
1
1
  import JsonNode from "./JsonNode.mjs";
2
2
  import { isProperty } from "./predicates.mjs";
3
+ /**
4
+ * @public
5
+ */
3
6
  class JsonObject extends JsonNode {
4
7
  static type = 'object';
5
8
  get properties() {
@@ -5,6 +5,13 @@ exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
7
7
  var _predicates = require("./predicates.cjs");
8
+ /**
9
+ * @public
10
+ */
11
+
12
+ /**
13
+ * @public
14
+ */
8
15
  class JsonProperty extends _JsonNode.default {
9
16
  static type = 'property';
10
17
  get key() {
@@ -1,5 +1,11 @@
1
1
  import JsonNode from "./JsonNode.mjs";
2
2
  import { isArray, isFalse, isKey, isNull, isNumber, isObject, isString, isTrue } from "./predicates.mjs";
3
+ /**
4
+ * @public
5
+ */
6
+ /**
7
+ * @public
8
+ */
3
9
  class JsonProperty extends JsonNode {
4
10
  static type = 'property';
5
11
  get key() {
@@ -5,6 +5,9 @@ exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
7
7
  var _predicates = require("./predicates.cjs");
8
+ /**
9
+ * @public
10
+ */
8
11
  class JsonString extends _JsonNode.default {
9
12
  static type = 'string';
10
13
  get value() {
@@ -1,5 +1,8 @@
1
1
  import JsonNode from "./JsonNode.mjs";
2
2
  import { isEscapeSequence, isStringContent } from "./predicates.mjs";
3
+ /**
4
+ * @public
5
+ */
3
6
  class JsonString extends JsonNode {
4
7
  static type = 'string';
5
8
  get value() {
@@ -4,6 +4,9 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
7
+ /**
8
+ * @public
9
+ */
7
10
  class JsonStringContent extends _JsonValue.default {
8
11
  static type = 'stringContent';
9
12
  }
@@ -1,4 +1,7 @@
1
1
  import JsonValue from "./JsonValue.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  class JsonStringContent extends JsonValue {
3
6
  static type = 'stringContent';
4
7
  }
@@ -4,6 +4,9 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
7
+ /**
8
+ * @public
9
+ */
7
10
  class JsonTrue extends _JsonValue.default {
8
11
  static type = 'true';
9
12
  }
@@ -1,4 +1,7 @@
1
1
  import JsonValue from "./JsonValue.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  class JsonTrue extends JsonValue {
3
6
  static type = 'true';
4
7
  }
@@ -4,6 +4,13 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
4
4
  exports.__esModule = true;
5
5
  exports.default = void 0;
6
6
  var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
7
+ /**
8
+ * @public
9
+ */
10
+
11
+ /**
12
+ * @public
13
+ */
7
14
  class JsonValue extends _JsonNode.default {
8
15
  static type = 'value';
9
16
  value;
@@ -1,4 +1,10 @@
1
1
  import JsonNode from "./JsonNode.mjs";
2
+ /**
3
+ * @public
4
+ */
5
+ /**
6
+ * @public
7
+ */
2
8
  class JsonValue extends JsonNode {
3
9
  static type = 'value';
4
10
  value;
@@ -3,27 +3,74 @@
3
3
  exports.__esModule = true;
4
4
  exports.isTrue = exports.isStringContent = exports.isString = exports.isProperty = exports.isObject = exports.isNumber = exports.isNull = exports.isKey = exports.isFalse = exports.isEscapeSequence = exports.isDocument = exports.isArray = void 0;
5
5
  var _predicates = require("../../predicates.cjs");
6
+ /**
7
+ * @public
8
+ */
6
9
  const isDocument = node => (0, _predicates.isNodeType)('document', node);
10
+
11
+ /**
12
+ * @public
13
+ */
7
14
  exports.isDocument = isDocument;
8
15
  const isString = node => (0, _predicates.isNodeType)('string', node);
16
+
17
+ /**
18
+ * @public
19
+ */
9
20
  exports.isString = isString;
10
21
  const isFalse = node => (0, _predicates.isNodeType)('false', node);
22
+
23
+ /**
24
+ * @public
25
+ */
11
26
  exports.isFalse = isFalse;
12
27
  const isTrue = node => (0, _predicates.isNodeType)('true', node);
28
+
29
+ /**
30
+ * @public
31
+ */
13
32
  exports.isTrue = isTrue;
14
33
  const isNull = node => (0, _predicates.isNodeType)('null', node);
34
+
35
+ /**
36
+ * @public
37
+ */
15
38
  exports.isNull = isNull;
16
39
  const isNumber = node => (0, _predicates.isNodeType)('number', node);
40
+
41
+ /**
42
+ * @public
43
+ */
17
44
  exports.isNumber = isNumber;
18
45
  const isArray = node => (0, _predicates.isNodeType)('array', node);
46
+
47
+ /**
48
+ * @public
49
+ */
19
50
  exports.isArray = isArray;
20
51
  const isObject = node => (0, _predicates.isNodeType)('object', node);
52
+
53
+ /**
54
+ * @public
55
+ */
21
56
  exports.isObject = isObject;
22
57
  const isStringContent = node => (0, _predicates.isNodeType)('stringContent', node);
58
+
59
+ /**
60
+ * @public
61
+ */
23
62
  exports.isStringContent = isStringContent;
24
63
  const isEscapeSequence = node => (0, _predicates.isNodeType)('escapeSequence', node);
64
+
65
+ /**
66
+ * @public
67
+ */
25
68
  exports.isEscapeSequence = isEscapeSequence;
26
69
  const isProperty = node => (0, _predicates.isNodeType)('property', node);
70
+
71
+ /**
72
+ * @public
73
+ */
27
74
  exports.isProperty = isProperty;
28
75
  const isKey = node => (0, _predicates.isNodeType)('key', node);
29
76
  exports.isKey = isKey;
@@ -1,13 +1,60 @@
1
1
  import { isNodeType } from "../../predicates.mjs";
2
+ /**
3
+ * @public
4
+ */
2
5
  export const isDocument = node => isNodeType('document', node);
6
+
7
+ /**
8
+ * @public
9
+ */
3
10
  export const isString = node => isNodeType('string', node);
11
+
12
+ /**
13
+ * @public
14
+ */
4
15
  export const isFalse = node => isNodeType('false', node);
16
+
17
+ /**
18
+ * @public
19
+ */
5
20
  export const isTrue = node => isNodeType('true', node);
21
+
22
+ /**
23
+ * @public
24
+ */
6
25
  export const isNull = node => isNodeType('null', node);
26
+
27
+ /**
28
+ * @public
29
+ */
7
30
  export const isNumber = node => isNodeType('number', node);
31
+
32
+ /**
33
+ * @public
34
+ */
8
35
  export const isArray = node => isNodeType('array', node);
36
+
37
+ /**
38
+ * @public
39
+ */
9
40
  export const isObject = node => isNodeType('object', node);
41
+
42
+ /**
43
+ * @public
44
+ */
10
45
  export const isStringContent = node => isNodeType('stringContent', node);
46
+
47
+ /**
48
+ * @public
49
+ */
11
50
  export const isEscapeSequence = node => isNodeType('escapeSequence', node);
51
+
52
+ /**
53
+ * @public
54
+ */
12
55
  export const isProperty = node => isNodeType('property', node);
56
+
57
+ /**
58
+ * @public
59
+ */
13
60
  export const isKey = node => isNodeType('key', node);
@@ -2,13 +2,32 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.isPosition = exports.isPoint = exports.isParseResult = exports.isNodeType = exports.isLiteral = void 0;
5
+ /**
6
+ * @public
7
+ */
5
8
  const isNodeType = (type, node) => node != null && typeof node === 'object' && 'type' in node && node.type === type;
9
+
10
+ /**
11
+ * @public
12
+ */
6
13
  exports.isNodeType = isNodeType;
7
14
  const isLiteral = node => isNodeType('literal', node);
15
+
16
+ /**
17
+ * @public
18
+ */
8
19
  exports.isLiteral = isLiteral;
9
20
  const isPosition = node => isNodeType('position', node);
21
+
22
+ /**
23
+ * @public
24
+ */
10
25
  exports.isPosition = isPosition;
11
26
  const isPoint = node => isNodeType('point', node);
27
+
28
+ /**
29
+ * @public
30
+ */
12
31
  exports.isPoint = isPoint;
13
32
  const isParseResult = node => isNodeType('parseResult', node);
14
33
  exports.isParseResult = isParseResult;
@@ -1,5 +1,24 @@
1
+ /**
2
+ * @public
3
+ */
1
4
  export const isNodeType = (type, node) => node != null && typeof node === 'object' && 'type' in node && node.type === type;
5
+
6
+ /**
7
+ * @public
8
+ */
2
9
  export const isLiteral = node => isNodeType('literal', node);
10
+
11
+ /**
12
+ * @public
13
+ */
3
14
  export const isPosition = node => isNodeType('position', node);
15
+
16
+ /**
17
+ * @public
18
+ */
4
19
  export const isPoint = node => isNodeType('point', node);
20
+
21
+ /**
22
+ * @public
23
+ */
5
24
  export const isParseResult = node => isNodeType('parseResult', node);
@@ -9,8 +9,11 @@ var _apidomError = require("@swagger-api/apidom-error");
9
9
  * SPDX-License-Identifier: MIT
10
10
  */
11
11
 
12
- // getVisitFn :: (Visitor, String, Boolean) -> Function
12
+ /**
13
+ * @public
14
+ */
13
15
  const getVisitFn = (visitor, type, isLeaving) => {
16
+ // @ts-ignore
14
17
  const typeVisitor = visitor[type];
15
18
  if (typeVisitor != null) {
16
19
  if (!isLeaving && typeof typeVisitor === 'function') {
@@ -29,6 +32,7 @@ const getVisitFn = (visitor, type, isLeaving) => {
29
32
  // { enter() {}, leave() {} }
30
33
  return specificVisitor;
31
34
  }
35
+ // @ts-ignore
32
36
  const specificTypeVisitor = specificVisitor[type];
33
37
  if (typeof specificTypeVisitor === 'function') {
34
38
  // { enter: { Type() {} }, leave: { Type() {} } }
@@ -38,17 +42,27 @@ const getVisitFn = (visitor, type, isLeaving) => {
38
42
  }
39
43
  return null;
40
44
  };
45
+
46
+ /**
47
+ * @public
48
+ */
41
49
  exports.getVisitFn = getVisitFn;
42
50
  const BREAK = exports.BREAK = {};
43
51
 
44
- // getNodeType :: Node -> String
52
+ /**
53
+ * @public
54
+ */
45
55
  const getNodeType = node => node == null ? void 0 : node.type;
46
56
 
47
- // isNode :: Node -> Boolean
57
+ /**
58
+ * @public
59
+ */
48
60
  exports.getNodeType = getNodeType;
49
61
  const isNode = node => typeof getNodeType(node) === 'string';
50
62
 
51
- // cloneNode :: a -> a
63
+ /**
64
+ * @public
65
+ */
52
66
  exports.isNode = isNode;
53
67
  const cloneNode = node => Object.create(Object.getPrototypeOf(node), Object.getOwnPropertyDescriptors(node));
54
68
 
@@ -58,8 +72,16 @@ const cloneNode = node => Object.create(Object.getPrototypeOf(node), Object.getO
58
72
  *
59
73
  * If a prior visitor edits a node, no following visitors will see that node.
60
74
  * `exposeEdits=true` can be used to expose the edited node from the previous visitors.
75
+ * @public
76
+ */
77
+
78
+ /**
79
+ * @public
61
80
  */
62
81
  exports.cloneNode = cloneNode;
82
+ /**
83
+ * @public
84
+ */
63
85
  const mergeAll = (visitors, {
64
86
  visitFnGetter = getVisitFn,
65
87
  nodeTypeGetter = getNodeType,
@@ -242,9 +264,11 @@ mergeAll[Symbol.for('nodejs.util.promisify.custom')] = mergeAllAsync;
242
264
  * a new version of the AST with the changes applied will be returned from the
243
265
  * visit function.
244
266
  *
267
+ * @example
268
+ * ```
245
269
  * const editedAST = visit(ast, {
246
270
  * enter(node, key, parent, path, ancestors) {
247
- * // @return
271
+ * // return
248
272
  * // undefined: no action
249
273
  * // false: skip visiting this node
250
274
  * // BREAK: stop visiting altogether
@@ -252,7 +276,7 @@ mergeAll[Symbol.for('nodejs.util.promisify.custom')] = mergeAllAsync;
252
276
  * // any value: replace this node with the returned value
253
277
  * },
254
278
  * leave(node, key, parent, path, ancestors) {
255
- * // @return
279
+ * // return
256
280
  * // undefined: no action
257
281
  * // false: no action
258
282
  * // BREAK: stop visiting altogether
@@ -260,23 +284,23 @@ mergeAll[Symbol.for('nodejs.util.promisify.custom')] = mergeAllAsync;
260
284
  * // any value: replace this node with the returned value
261
285
  * }
262
286
  * });
263
- *
287
+ *```
264
288
  * Alternatively to providing enter() and leave() functions, a visitor can
265
289
  * instead provide functions named the same as the kinds of AST nodes, or
266
290
  * enter/leave visitors at a named key, leading to four permutations of
267
291
  * visitor API:
268
292
  *
269
293
  * 1) Named visitors triggered when entering a node a specific kind.
270
- *
294
+ * ```
271
295
  * visit(ast, {
272
296
  * Kind(node) {
273
297
  * // enter the "Kind" node
274
298
  * }
275
299
  * })
276
- *
300
+ * ```
277
301
  * 2) Named visitors that trigger upon entering and leaving a node of
278
302
  * a specific kind.
279
- *
303
+ * ```
280
304
  * visit(ast, {
281
305
  * Kind: {
282
306
  * enter(node) {
@@ -287,9 +311,9 @@ mergeAll[Symbol.for('nodejs.util.promisify.custom')] = mergeAllAsync;
287
311
  * }
288
312
  * }
289
313
  * })
290
- *
314
+ * ```
291
315
  * 3) Generic visitors that trigger upon entering and leaving any node.
292
- *
316
+ * ```
293
317
  * visit(ast, {
294
318
  * enter(node) {
295
319
  * // enter any node
@@ -298,9 +322,9 @@ mergeAll[Symbol.for('nodejs.util.promisify.custom')] = mergeAllAsync;
298
322
  * // leave any node
299
323
  * }
300
324
  * })
301
- *
325
+ * ```
302
326
  * 4) Parallel visitors for entering and leaving nodes of a specific kind.
303
- *
327
+ * ```
304
328
  * visit(ast, {
305
329
  * enter: {
306
330
  * Kind(node) {
@@ -313,9 +337,12 @@ mergeAll[Symbol.for('nodejs.util.promisify.custom')] = mergeAllAsync;
313
337
  * }
314
338
  * }
315
339
  * })
340
+ * ```
341
+ * sig `visit :: (Node, Visitor, Options)`
342
+ *
343
+ * sig `Options = { keyMap: Object, state: Object }`
316
344
  *
317
- * @sig visit :: (Node, Visitor, Options)
318
- * @sig Options = { keyMap: Object, state: Object }
345
+ * @public
319
346
  */
320
347
  const visit = (
321
348
  // @ts-ignore