@rightcapital/phpdoc-parser 0.5.3 → 0.6.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.
- package/dist/index.d.ts +10 -1
- package/dist/index.js +22 -4
- package/dist/phpdoc-parser/ast/comment.d.ts +7 -0
- package/dist/phpdoc-parser/ast/comment.js +14 -0
- package/dist/phpdoc-parser/ast/const-expr/const-expr-node.d.ts +0 -2
- package/dist/phpdoc-parser/ast/const-expr/const-expr-node.js +0 -3
- package/dist/phpdoc-parser/ast/const-expr/const-expr-string-node.d.ts +5 -1
- package/dist/phpdoc-parser/ast/const-expr/const-expr-string-node.js +33 -2
- package/dist/phpdoc-parser/ast/php-doc/param-closure-this-tag-value-node.d.ts +10 -0
- package/dist/phpdoc-parser/ast/php-doc/param-closure-this-tag-value-node.js +19 -0
- package/dist/phpdoc-parser/ast/php-doc/param-immediately-invoked-callable-tag-value-node.d.ts +8 -0
- package/dist/phpdoc-parser/ast/php-doc/param-immediately-invoked-callable-tag-value-node.js +18 -0
- package/dist/phpdoc-parser/ast/php-doc/param-later-invoked-callable-tag-value-node.d.ts +8 -0
- package/dist/phpdoc-parser/ast/php-doc/param-later-invoked-callable-tag-value-node.js +18 -0
- package/dist/phpdoc-parser/ast/php-doc/php-doc-node.d.ts +2 -0
- package/dist/phpdoc-parser/ast/php-doc/php-doc-node.js +6 -0
- package/dist/phpdoc-parser/ast/php-doc/pure-unless-callable-is-impure-tag-value-node.d.ts +8 -0
- package/dist/phpdoc-parser/ast/php-doc/pure-unless-callable-is-impure-tag-value-node.js +18 -0
- package/dist/phpdoc-parser/ast/php-doc/require-extends-tag-value-node.d.ts +9 -0
- package/dist/phpdoc-parser/ast/php-doc/require-extends-tag-value-node.js +18 -0
- package/dist/phpdoc-parser/ast/php-doc/require-implements-tag-value-node.d.ts +9 -0
- package/dist/phpdoc-parser/ast/php-doc/require-implements-tag-value-node.js +18 -0
- package/dist/phpdoc-parser/ast/php-doc/sealed-tag-value-node.d.ts +9 -0
- package/dist/phpdoc-parser/ast/php-doc/sealed-tag-value-node.js +18 -0
- package/dist/phpdoc-parser/ast/php-doc/template-tag-value-node.d.ts +2 -1
- package/dist/phpdoc-parser/ast/php-doc/template-tag-value-node.js +4 -2
- package/dist/phpdoc-parser/ast/type/array-shape-item-node.d.ts +3 -2
- package/dist/phpdoc-parser/ast/type/array-shape-node.d.ts +8 -2
- package/dist/phpdoc-parser/ast/type/array-shape-node.js +13 -3
- package/dist/phpdoc-parser/ast/type/array-shape-unsealed-type-node.d.ts +8 -0
- package/dist/phpdoc-parser/ast/type/array-shape-unsealed-type-node.js +21 -0
- package/dist/phpdoc-parser/ast/type/callable-type-node.d.ts +3 -1
- package/dist/phpdoc-parser/ast/type/callable-type-node.js +4 -2
- package/dist/phpdoc-parser/ast/types.d.ts +2 -1
- package/dist/phpdoc-parser/ast/types.js +1 -0
- package/dist/phpdoc-parser/lexer/lexer.d.ts +2 -0
- package/dist/phpdoc-parser/lexer/lexer.js +3 -0
- package/dist/phpdoc-parser/parser/const-expr-parser.d.ts +2 -4
- package/dist/phpdoc-parser/parser/const-expr-parser.js +6 -20
- package/dist/phpdoc-parser/parser/php-doc-parser.d.ts +11 -9
- package/dist/phpdoc-parser/parser/php-doc-parser.js +112 -66
- package/dist/phpdoc-parser/parser/string-unescaper.js +2 -2
- package/dist/phpdoc-parser/parser/token-iterator.d.ts +4 -0
- package/dist/phpdoc-parser/parser/token-iterator.js +31 -3
- package/dist/phpdoc-parser/parser/type-parser.d.ts +8 -2
- package/dist/phpdoc-parser/parser/type-parser.js +205 -76
- package/dist/phpdoc-parser/parser-config.d.ts +10 -0
- package/dist/phpdoc-parser/parser-config.js +12 -0
- package/dist/phpdoc-parser/transpiler/php-doc-to-typescript-type-transpiler.js +9 -2
- package/package.json +8 -5
- package/dist/phpdoc-parser/ast/const-expr/quote-aware-const-expr-string-node.d.ts +0 -10
- package/dist/phpdoc-parser/ast/const-expr/quote-aware-const-expr-string-node.js +0 -47
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { AbstractNodeVisitor } from './phpdoc-parser/ast/abstract-node-visitor';
|
|
2
2
|
export { BaseNode } from './phpdoc-parser/ast/base-node';
|
|
3
|
+
export { Comment } from './phpdoc-parser/ast/comment';
|
|
3
4
|
export { ConstExprArrayItemNode } from './phpdoc-parser/ast/const-expr/const-expr-array-item-node';
|
|
4
5
|
export { ConstExprArrayNode } from './phpdoc-parser/ast/const-expr/const-expr-array-node';
|
|
5
6
|
export { ConstExprFalseNode } from './phpdoc-parser/ast/const-expr/const-expr-false-node';
|
|
@@ -10,7 +11,6 @@ export { ConstExprNullNode } from './phpdoc-parser/ast/const-expr/const-expr-nul
|
|
|
10
11
|
export { ConstExprStringNode } from './phpdoc-parser/ast/const-expr/const-expr-string-node';
|
|
11
12
|
export { ConstExprTrueNode } from './phpdoc-parser/ast/const-expr/const-expr-true-node';
|
|
12
13
|
export { ConstFetchNode } from './phpdoc-parser/ast/const-expr/const-fetch-node';
|
|
13
|
-
export { QuoteAwareConstExprStringNode } from './phpdoc-parser/ast/const-expr/quote-aware-const-expr-string-node';
|
|
14
14
|
export type { Node } from './phpdoc-parser/ast/node';
|
|
15
15
|
export { NodeTraverser } from './phpdoc-parser/ast/node-traverser';
|
|
16
16
|
export type { NodeVisitor } from './phpdoc-parser/ast/node-visitor';
|
|
@@ -27,6 +27,9 @@ export { InvalidTagValueNode } from './phpdoc-parser/ast/php-doc/invalid-tag-val
|
|
|
27
27
|
export { MethodTagValueNode } from './phpdoc-parser/ast/php-doc/method-tag-value-node';
|
|
28
28
|
export { MethodTagValueParameterNode } from './phpdoc-parser/ast/php-doc/method-tag-value-parameter-node';
|
|
29
29
|
export { MixinTagValueNode } from './phpdoc-parser/ast/php-doc/mixin-tag-value-node';
|
|
30
|
+
export { ParamClosureThisTagValueNode } from './phpdoc-parser/ast/php-doc/param-closure-this-tag-value-node';
|
|
31
|
+
export { ParamImmediatelyInvokedCallableTagValueNode } from './phpdoc-parser/ast/php-doc/param-immediately-invoked-callable-tag-value-node';
|
|
32
|
+
export { ParamLaterInvokedCallableTagValueNode } from './phpdoc-parser/ast/php-doc/param-later-invoked-callable-tag-value-node';
|
|
30
33
|
export { ParamOutTagValueNode } from './phpdoc-parser/ast/php-doc/param-out-tag-value-node';
|
|
31
34
|
export { ParamTagValueNode } from './phpdoc-parser/ast/php-doc/param-tag-value-node';
|
|
32
35
|
export { PhpDocChildNode } from './phpdoc-parser/ast/php-doc/php-doc-child-node';
|
|
@@ -35,7 +38,11 @@ export { PhpDocTagNode } from './phpdoc-parser/ast/php-doc/php-doc-tag-node';
|
|
|
35
38
|
export { PhpDocTagValueNode } from './phpdoc-parser/ast/php-doc/php-doc-tag-value-node';
|
|
36
39
|
export { PhpDocTextNode } from './phpdoc-parser/ast/php-doc/php-doc-text-node';
|
|
37
40
|
export { PropertyTagValueNode } from './phpdoc-parser/ast/php-doc/property-tag-value-node';
|
|
41
|
+
export { PureUnlessCallableIsImpureTagValueNode } from './phpdoc-parser/ast/php-doc/pure-unless-callable-is-impure-tag-value-node';
|
|
42
|
+
export { RequireExtendsTagValueNode } from './phpdoc-parser/ast/php-doc/require-extends-tag-value-node';
|
|
43
|
+
export { RequireImplementsTagValueNode } from './phpdoc-parser/ast/php-doc/require-implements-tag-value-node';
|
|
38
44
|
export { ReturnTagValueNode } from './phpdoc-parser/ast/php-doc/return-tag-value-node';
|
|
45
|
+
export { SealedTagValueNode } from './phpdoc-parser/ast/php-doc/sealed-tag-value-node';
|
|
39
46
|
export { SelfOutTagValueNode } from './phpdoc-parser/ast/php-doc/self-out-tag-value-node';
|
|
40
47
|
export { TemplateTagValueNode } from './phpdoc-parser/ast/php-doc/template-tag-value-node';
|
|
41
48
|
export { ThrowsTagValueNode } from './phpdoc-parser/ast/php-doc/throws-tag-value-node';
|
|
@@ -46,6 +53,7 @@ export { UsesTagValueNode } from './phpdoc-parser/ast/php-doc/uses-tag-value-nod
|
|
|
46
53
|
export { VarTagValueNode } from './phpdoc-parser/ast/php-doc/var-tag-value-node';
|
|
47
54
|
export { ArrayShapeItemNode } from './phpdoc-parser/ast/type/array-shape-item-node';
|
|
48
55
|
export { ArrayShapeNode } from './phpdoc-parser/ast/type/array-shape-node';
|
|
56
|
+
export { ArrayShapeUnsealedTypeNode } from './phpdoc-parser/ast/type/array-shape-unsealed-type-node';
|
|
49
57
|
export { ArrayTypeNode } from './phpdoc-parser/ast/type/array-type-node';
|
|
50
58
|
export { CallableTypeNode } from './phpdoc-parser/ast/type/callable-type-node';
|
|
51
59
|
export { CallableTypeParameterNode } from './phpdoc-parser/ast/type/callable-type-parameter-node';
|
|
@@ -71,6 +79,7 @@ export { PhpDocParser } from './phpdoc-parser/parser/php-doc-parser';
|
|
|
71
79
|
export { StringUnescaper } from './phpdoc-parser/parser/string-unescaper';
|
|
72
80
|
export { TokenIterator } from './phpdoc-parser/parser/token-iterator';
|
|
73
81
|
export { TypeParser } from './phpdoc-parser/parser/type-parser';
|
|
82
|
+
export { ParserConfig } from './phpdoc-parser/parser-config';
|
|
74
83
|
export { Printer } from './phpdoc-parser/printer/printer';
|
|
75
84
|
export * from './phpdoc-parser/transpiler/helpers';
|
|
76
85
|
export * from './phpdoc-parser/transpiler/php-doc-to-typescript-type-transpiler';
|
package/dist/index.js
CHANGED
|
@@ -14,12 +14,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
18
|
-
exports.Printer = exports.TypeParser = exports.TokenIterator = exports.StringUnescaper = exports.PhpDocParser = exports.ParserException = exports.ConstExprParser = exports.Lexer = exports.NodeTraverserState = exports.Attribute = exports.UnionTypeNode = exports.TypeNode = exports.ThisTypeNode = exports.OffsetAccessTypeNode = exports.ObjectShapeNode = exports.ObjectShapeItemNode = exports.NullableTypeNode = exports.InvalidTypeNode = exports.IntersectionTypeNode = exports.IdentifierTypeNode = exports.GenericTypeNode = exports.ConstTypeNode = void 0;
|
|
17
|
+
exports.VarTagValueNode = exports.UsesTagValueNode = exports.TypelessParamTagValueNode = exports.TypeAliasTagValueNode = exports.TypeAliasImportTagValueNode = exports.ThrowsTagValueNode = exports.TemplateTagValueNode = exports.SelfOutTagValueNode = exports.SealedTagValueNode = exports.ReturnTagValueNode = exports.RequireImplementsTagValueNode = exports.RequireExtendsTagValueNode = exports.PureUnlessCallableIsImpureTagValueNode = exports.PropertyTagValueNode = exports.PhpDocTextNode = exports.PhpDocTagValueNode = exports.PhpDocTagNode = exports.PhpDocNode = exports.PhpDocChildNode = exports.ParamTagValueNode = exports.ParamOutTagValueNode = exports.ParamLaterInvokedCallableTagValueNode = exports.ParamImmediatelyInvokedCallableTagValueNode = exports.ParamClosureThisTagValueNode = exports.MixinTagValueNode = exports.MethodTagValueParameterNode = exports.MethodTagValueNode = exports.InvalidTagValueNode = exports.ImplementsTagValueNode = exports.GenericTagValueNode = exports.ExtendsTagValueNode = exports.DeprecatedTagValueNode = exports.AssertTagValueNode = exports.AssertTagPropertyValueNode = exports.AssertTagMethodValueNode = exports.CloningVisitor = exports.NodeTraverser = exports.ConstFetchNode = exports.ConstExprTrueNode = exports.ConstExprStringNode = exports.ConstExprNullNode = exports.ConstExprNode = exports.ConstExprIntegerNode = exports.ConstExprFloatNode = exports.ConstExprFalseNode = exports.ConstExprArrayNode = exports.ConstExprArrayItemNode = exports.Comment = exports.BaseNode = exports.AbstractNodeVisitor = void 0;
|
|
18
|
+
exports.Printer = exports.ParserConfig = exports.TypeParser = exports.TokenIterator = exports.StringUnescaper = exports.PhpDocParser = exports.ParserException = exports.ConstExprParser = exports.Lexer = exports.NodeTraverserState = exports.Attribute = exports.UnionTypeNode = exports.TypeNode = exports.ThisTypeNode = exports.OffsetAccessTypeNode = exports.ObjectShapeNode = exports.ObjectShapeItemNode = exports.NullableTypeNode = exports.InvalidTypeNode = exports.IntersectionTypeNode = exports.IdentifierTypeNode = exports.GenericTypeNode = exports.ConstTypeNode = exports.ConditionalTypeNode = exports.ConditionalTypeForParameterNode = exports.CallableTypeParameterNode = exports.CallableTypeNode = exports.ArrayTypeNode = exports.ArrayShapeUnsealedTypeNode = exports.ArrayShapeNode = exports.ArrayShapeItemNode = void 0;
|
|
19
19
|
var abstract_node_visitor_1 = require("./phpdoc-parser/ast/abstract-node-visitor");
|
|
20
20
|
Object.defineProperty(exports, "AbstractNodeVisitor", { enumerable: true, get: function () { return abstract_node_visitor_1.AbstractNodeVisitor; } });
|
|
21
21
|
var base_node_1 = require("./phpdoc-parser/ast/base-node");
|
|
22
22
|
Object.defineProperty(exports, "BaseNode", { enumerable: true, get: function () { return base_node_1.BaseNode; } });
|
|
23
|
+
var comment_1 = require("./phpdoc-parser/ast/comment");
|
|
24
|
+
Object.defineProperty(exports, "Comment", { enumerable: true, get: function () { return comment_1.Comment; } });
|
|
23
25
|
var const_expr_array_item_node_1 = require("./phpdoc-parser/ast/const-expr/const-expr-array-item-node");
|
|
24
26
|
Object.defineProperty(exports, "ConstExprArrayItemNode", { enumerable: true, get: function () { return const_expr_array_item_node_1.ConstExprArrayItemNode; } });
|
|
25
27
|
var const_expr_array_node_1 = require("./phpdoc-parser/ast/const-expr/const-expr-array-node");
|
|
@@ -40,8 +42,6 @@ var const_expr_true_node_1 = require("./phpdoc-parser/ast/const-expr/const-expr-
|
|
|
40
42
|
Object.defineProperty(exports, "ConstExprTrueNode", { enumerable: true, get: function () { return const_expr_true_node_1.ConstExprTrueNode; } });
|
|
41
43
|
var const_fetch_node_1 = require("./phpdoc-parser/ast/const-expr/const-fetch-node");
|
|
42
44
|
Object.defineProperty(exports, "ConstFetchNode", { enumerable: true, get: function () { return const_fetch_node_1.ConstFetchNode; } });
|
|
43
|
-
var quote_aware_const_expr_string_node_1 = require("./phpdoc-parser/ast/const-expr/quote-aware-const-expr-string-node");
|
|
44
|
-
Object.defineProperty(exports, "QuoteAwareConstExprStringNode", { enumerable: true, get: function () { return quote_aware_const_expr_string_node_1.QuoteAwareConstExprStringNode; } });
|
|
45
45
|
var node_traverser_1 = require("./phpdoc-parser/ast/node-traverser");
|
|
46
46
|
Object.defineProperty(exports, "NodeTraverser", { enumerable: true, get: function () { return node_traverser_1.NodeTraverser; } });
|
|
47
47
|
var cloning_visitor_1 = require("./phpdoc-parser/ast/node-visitor/cloning-visitor");
|
|
@@ -69,6 +69,12 @@ var method_tag_value_parameter_node_1 = require("./phpdoc-parser/ast/php-doc/met
|
|
|
69
69
|
Object.defineProperty(exports, "MethodTagValueParameterNode", { enumerable: true, get: function () { return method_tag_value_parameter_node_1.MethodTagValueParameterNode; } });
|
|
70
70
|
var mixin_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/mixin-tag-value-node");
|
|
71
71
|
Object.defineProperty(exports, "MixinTagValueNode", { enumerable: true, get: function () { return mixin_tag_value_node_1.MixinTagValueNode; } });
|
|
72
|
+
var param_closure_this_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/param-closure-this-tag-value-node");
|
|
73
|
+
Object.defineProperty(exports, "ParamClosureThisTagValueNode", { enumerable: true, get: function () { return param_closure_this_tag_value_node_1.ParamClosureThisTagValueNode; } });
|
|
74
|
+
var param_immediately_invoked_callable_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/param-immediately-invoked-callable-tag-value-node");
|
|
75
|
+
Object.defineProperty(exports, "ParamImmediatelyInvokedCallableTagValueNode", { enumerable: true, get: function () { return param_immediately_invoked_callable_tag_value_node_1.ParamImmediatelyInvokedCallableTagValueNode; } });
|
|
76
|
+
var param_later_invoked_callable_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/param-later-invoked-callable-tag-value-node");
|
|
77
|
+
Object.defineProperty(exports, "ParamLaterInvokedCallableTagValueNode", { enumerable: true, get: function () { return param_later_invoked_callable_tag_value_node_1.ParamLaterInvokedCallableTagValueNode; } });
|
|
72
78
|
var param_out_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/param-out-tag-value-node");
|
|
73
79
|
Object.defineProperty(exports, "ParamOutTagValueNode", { enumerable: true, get: function () { return param_out_tag_value_node_1.ParamOutTagValueNode; } });
|
|
74
80
|
var param_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/param-tag-value-node");
|
|
@@ -85,8 +91,16 @@ var php_doc_text_node_1 = require("./phpdoc-parser/ast/php-doc/php-doc-text-node
|
|
|
85
91
|
Object.defineProperty(exports, "PhpDocTextNode", { enumerable: true, get: function () { return php_doc_text_node_1.PhpDocTextNode; } });
|
|
86
92
|
var property_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/property-tag-value-node");
|
|
87
93
|
Object.defineProperty(exports, "PropertyTagValueNode", { enumerable: true, get: function () { return property_tag_value_node_1.PropertyTagValueNode; } });
|
|
94
|
+
var pure_unless_callable_is_impure_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/pure-unless-callable-is-impure-tag-value-node");
|
|
95
|
+
Object.defineProperty(exports, "PureUnlessCallableIsImpureTagValueNode", { enumerable: true, get: function () { return pure_unless_callable_is_impure_tag_value_node_1.PureUnlessCallableIsImpureTagValueNode; } });
|
|
96
|
+
var require_extends_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/require-extends-tag-value-node");
|
|
97
|
+
Object.defineProperty(exports, "RequireExtendsTagValueNode", { enumerable: true, get: function () { return require_extends_tag_value_node_1.RequireExtendsTagValueNode; } });
|
|
98
|
+
var require_implements_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/require-implements-tag-value-node");
|
|
99
|
+
Object.defineProperty(exports, "RequireImplementsTagValueNode", { enumerable: true, get: function () { return require_implements_tag_value_node_1.RequireImplementsTagValueNode; } });
|
|
88
100
|
var return_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/return-tag-value-node");
|
|
89
101
|
Object.defineProperty(exports, "ReturnTagValueNode", { enumerable: true, get: function () { return return_tag_value_node_1.ReturnTagValueNode; } });
|
|
102
|
+
var sealed_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/sealed-tag-value-node");
|
|
103
|
+
Object.defineProperty(exports, "SealedTagValueNode", { enumerable: true, get: function () { return sealed_tag_value_node_1.SealedTagValueNode; } });
|
|
90
104
|
var self_out_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/self-out-tag-value-node");
|
|
91
105
|
Object.defineProperty(exports, "SelfOutTagValueNode", { enumerable: true, get: function () { return self_out_tag_value_node_1.SelfOutTagValueNode; } });
|
|
92
106
|
var template_tag_value_node_1 = require("./phpdoc-parser/ast/php-doc/template-tag-value-node");
|
|
@@ -107,6 +121,8 @@ var array_shape_item_node_1 = require("./phpdoc-parser/ast/type/array-shape-item
|
|
|
107
121
|
Object.defineProperty(exports, "ArrayShapeItemNode", { enumerable: true, get: function () { return array_shape_item_node_1.ArrayShapeItemNode; } });
|
|
108
122
|
var array_shape_node_1 = require("./phpdoc-parser/ast/type/array-shape-node");
|
|
109
123
|
Object.defineProperty(exports, "ArrayShapeNode", { enumerable: true, get: function () { return array_shape_node_1.ArrayShapeNode; } });
|
|
124
|
+
var array_shape_unsealed_type_node_1 = require("./phpdoc-parser/ast/type/array-shape-unsealed-type-node");
|
|
125
|
+
Object.defineProperty(exports, "ArrayShapeUnsealedTypeNode", { enumerable: true, get: function () { return array_shape_unsealed_type_node_1.ArrayShapeUnsealedTypeNode; } });
|
|
110
126
|
var array_type_node_1 = require("./phpdoc-parser/ast/type/array-type-node");
|
|
111
127
|
Object.defineProperty(exports, "ArrayTypeNode", { enumerable: true, get: function () { return array_type_node_1.ArrayTypeNode; } });
|
|
112
128
|
var callable_type_node_1 = require("./phpdoc-parser/ast/type/callable-type-node");
|
|
@@ -158,6 +174,8 @@ var token_iterator_1 = require("./phpdoc-parser/parser/token-iterator");
|
|
|
158
174
|
Object.defineProperty(exports, "TokenIterator", { enumerable: true, get: function () { return token_iterator_1.TokenIterator; } });
|
|
159
175
|
var type_parser_1 = require("./phpdoc-parser/parser/type-parser");
|
|
160
176
|
Object.defineProperty(exports, "TypeParser", { enumerable: true, get: function () { return type_parser_1.TypeParser; } });
|
|
177
|
+
var parser_config_1 = require("./phpdoc-parser/parser-config");
|
|
178
|
+
Object.defineProperty(exports, "ParserConfig", { enumerable: true, get: function () { return parser_config_1.ParserConfig; } });
|
|
161
179
|
var printer_1 = require("./phpdoc-parser/printer/printer");
|
|
162
180
|
Object.defineProperty(exports, "Printer", { enumerable: true, get: function () { return printer_1.Printer; } });
|
|
163
181
|
__exportStar(require("./phpdoc-parser/transpiler/helpers"), exports);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Comment = void 0;
|
|
4
|
+
class Comment {
|
|
5
|
+
constructor(text, startLine = -1, startIndex = -1) {
|
|
6
|
+
this.text = text;
|
|
7
|
+
this.startLine = startLine;
|
|
8
|
+
this.startIndex = startIndex;
|
|
9
|
+
}
|
|
10
|
+
getReformattedText() {
|
|
11
|
+
return this.text.trim();
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.Comment = Comment;
|
|
@@ -8,14 +8,12 @@ import type { ConstExprNullNode } from './const-expr-null-node';
|
|
|
8
8
|
import type { ConstExprStringNode } from './const-expr-string-node';
|
|
9
9
|
import type { ConstExprTrueNode } from './const-expr-true-node';
|
|
10
10
|
import type { ConstFetchNode } from './const-fetch-node';
|
|
11
|
-
import type { QuoteAwareConstExprStringNode } from './quote-aware-const-expr-string-node';
|
|
12
11
|
export declare class ConstExprNode extends BaseNode {
|
|
13
12
|
getNodeType(): string;
|
|
14
13
|
isConstExprFloatNode(): this is ConstExprFloatNode;
|
|
15
14
|
isConstFetchNode(): this is ConstFetchNode;
|
|
16
15
|
isConstExprArrayItemNode(): this is ConstExprArrayItemNode;
|
|
17
16
|
isConstExprFalseNode(): this is ConstExprFalseNode;
|
|
18
|
-
isQuoteAwareConstExprStringNode(): this is QuoteAwareConstExprStringNode;
|
|
19
17
|
isConstExprNullNode(): this is ConstExprNullNode;
|
|
20
18
|
isConstExprIntegerNode(): this is ConstExprIntegerNode;
|
|
21
19
|
isConstExprNode(): this is ConstExprNode;
|
|
@@ -18,9 +18,6 @@ class ConstExprNode extends base_node_1.BaseNode {
|
|
|
18
18
|
isConstExprFalseNode() {
|
|
19
19
|
return this.getNodeType() === 'ConstExprFalseNode';
|
|
20
20
|
}
|
|
21
|
-
isQuoteAwareConstExprStringNode() {
|
|
22
|
-
return this.getNodeType() === 'QuoteAwareConstExprStringNode';
|
|
23
|
-
}
|
|
24
21
|
isConstExprNullNode() {
|
|
25
22
|
return this.getNodeType() === 'ConstExprNullNode';
|
|
26
23
|
}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { ConstExprNode } from './const-expr-node';
|
|
2
2
|
export declare class ConstExprStringNode extends ConstExprNode {
|
|
3
3
|
value: string;
|
|
4
|
-
|
|
4
|
+
quoteType: number;
|
|
5
|
+
static readonly SINGLE_QUOTED = 1;
|
|
6
|
+
static readonly DOUBLE_QUOTED = 2;
|
|
7
|
+
constructor(value: string, quoteType: number);
|
|
5
8
|
toString(): string;
|
|
9
|
+
private escapeDoubleQuotedString;
|
|
6
10
|
getNodeType(): string;
|
|
7
11
|
}
|
|
@@ -3,15 +3,46 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ConstExprStringNode = void 0;
|
|
4
4
|
const const_expr_node_1 = require("./const-expr-node");
|
|
5
5
|
class ConstExprStringNode extends const_expr_node_1.ConstExprNode {
|
|
6
|
-
constructor(value) {
|
|
6
|
+
constructor(value, quoteType) {
|
|
7
7
|
super();
|
|
8
8
|
this.value = value;
|
|
9
|
+
this.quoteType = quoteType;
|
|
9
10
|
}
|
|
10
11
|
toString() {
|
|
11
|
-
|
|
12
|
+
if (this.quoteType === ConstExprStringNode.SINGLE_QUOTED) {
|
|
13
|
+
return `'${this.value.replace(/[\\']/g, '\\$&')}'`;
|
|
14
|
+
}
|
|
15
|
+
return `"${this.escapeDoubleQuotedString()}"`;
|
|
16
|
+
}
|
|
17
|
+
escapeDoubleQuotedString() {
|
|
18
|
+
let escaped = this.value.replace(/["\n\r\t\x0B\f\v\\$]/g, '\\$&');
|
|
19
|
+
const regexes = [
|
|
20
|
+
/[\x00-\x08\x0E-\x1F]/g,
|
|
21
|
+
/[\xC0-\xC1]/g,
|
|
22
|
+
/[\xF5-\xFF]/g,
|
|
23
|
+
/\xE0[\x80-\x9F]/g,
|
|
24
|
+
/\xF0[\x80-\x8F]/g,
|
|
25
|
+
/[\xC2-\xDF](?![\x80-\xBF])/g,
|
|
26
|
+
/[\xE0-\xEF](?![\x80-\xBF]{2})/g,
|
|
27
|
+
/[\xF0-\xF4](?![\x80-\xBF]{3})/g,
|
|
28
|
+
/(?<=[\x00-\x7F\xF5-\xFF])[\x80-\xBF]/g,
|
|
29
|
+
/(?<![\xC2-\xDF]|[\xE0-\xEF]|[\xE0-\xEF][\x80-\xBF]|[\xF0-\xF4]|[\xF0-\xF4][\x80-\xBF]|[\xF0-\xF4][\x80-\xBF]{2})[\x80-\xBF]/g,
|
|
30
|
+
/(?<=[\xE0-\xEF])[\x80-\xBF](?![\x80-\xBF])/g,
|
|
31
|
+
/(?<=[\xF0-\xF4])[\x80-\xBF](?![\x80-\xBF]{2})/g,
|
|
32
|
+
/(?<=[\xF0-\xF4][\x80-\xBF])[\x80-\xBF](?![\x80-\xBF])/g,
|
|
33
|
+
];
|
|
34
|
+
for (const regex of regexes) {
|
|
35
|
+
escaped = escaped.replace(regex, (match) => {
|
|
36
|
+
const hex = match.charCodeAt(0).toString(16);
|
|
37
|
+
return `\\x${'0'.repeat(2 - hex.length) + hex}`;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
return escaped;
|
|
12
41
|
}
|
|
13
42
|
getNodeType() {
|
|
14
43
|
return 'ConstExprStringNode';
|
|
15
44
|
}
|
|
16
45
|
}
|
|
17
46
|
exports.ConstExprStringNode = ConstExprStringNode;
|
|
47
|
+
ConstExprStringNode.SINGLE_QUOTED = 1;
|
|
48
|
+
ConstExprStringNode.DOUBLE_QUOTED = 2;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { TypeNode } from '../type/type-node';
|
|
2
|
+
import { PhpDocTagValueNode } from './php-doc-tag-value-node';
|
|
3
|
+
export declare class ParamClosureThisTagValueNode extends PhpDocTagValueNode {
|
|
4
|
+
type: TypeNode;
|
|
5
|
+
parameterName: string;
|
|
6
|
+
description: string;
|
|
7
|
+
constructor(type: TypeNode, parameterName: string, description: string);
|
|
8
|
+
toString(): string;
|
|
9
|
+
getNodeType(): string;
|
|
10
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ParamClosureThisTagValueNode = void 0;
|
|
4
|
+
const php_doc_tag_value_node_1 = require("./php-doc-tag-value-node");
|
|
5
|
+
class ParamClosureThisTagValueNode extends php_doc_tag_value_node_1.PhpDocTagValueNode {
|
|
6
|
+
constructor(type, parameterName, description) {
|
|
7
|
+
super();
|
|
8
|
+
this.type = type;
|
|
9
|
+
this.parameterName = parameterName;
|
|
10
|
+
this.description = description;
|
|
11
|
+
}
|
|
12
|
+
toString() {
|
|
13
|
+
return `${this.type.toString()} ${this.parameterName} ${this.description}`.trim();
|
|
14
|
+
}
|
|
15
|
+
getNodeType() {
|
|
16
|
+
return 'ParamClosureThisTagValueNode';
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.ParamClosureThisTagValueNode = ParamClosureThisTagValueNode;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PhpDocTagValueNode } from './php-doc-tag-value-node';
|
|
2
|
+
export declare class ParamImmediatelyInvokedCallableTagValueNode extends PhpDocTagValueNode {
|
|
3
|
+
parameterName: string;
|
|
4
|
+
description: string;
|
|
5
|
+
constructor(parameterName: string, description: string);
|
|
6
|
+
toString(): string;
|
|
7
|
+
getNodeType(): string;
|
|
8
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ParamImmediatelyInvokedCallableTagValueNode = void 0;
|
|
4
|
+
const php_doc_tag_value_node_1 = require("./php-doc-tag-value-node");
|
|
5
|
+
class ParamImmediatelyInvokedCallableTagValueNode extends php_doc_tag_value_node_1.PhpDocTagValueNode {
|
|
6
|
+
constructor(parameterName, description) {
|
|
7
|
+
super();
|
|
8
|
+
this.parameterName = parameterName;
|
|
9
|
+
this.description = description;
|
|
10
|
+
}
|
|
11
|
+
toString() {
|
|
12
|
+
return `${this.parameterName} ${this.description}`.trim();
|
|
13
|
+
}
|
|
14
|
+
getNodeType() {
|
|
15
|
+
return 'ParamImmediatelyInvokedCallableTagValueNode';
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.ParamImmediatelyInvokedCallableTagValueNode = ParamImmediatelyInvokedCallableTagValueNode;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PhpDocTagValueNode } from './php-doc-tag-value-node';
|
|
2
|
+
export declare class ParamLaterInvokedCallableTagValueNode extends PhpDocTagValueNode {
|
|
3
|
+
parameterName: string;
|
|
4
|
+
description: string;
|
|
5
|
+
constructor(parameterName: string, description: string);
|
|
6
|
+
toString(): string;
|
|
7
|
+
getNodeType(): string;
|
|
8
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ParamLaterInvokedCallableTagValueNode = void 0;
|
|
4
|
+
const php_doc_tag_value_node_1 = require("./php-doc-tag-value-node");
|
|
5
|
+
class ParamLaterInvokedCallableTagValueNode extends php_doc_tag_value_node_1.PhpDocTagValueNode {
|
|
6
|
+
constructor(parameterName, description) {
|
|
7
|
+
super();
|
|
8
|
+
this.parameterName = parameterName;
|
|
9
|
+
this.description = description;
|
|
10
|
+
}
|
|
11
|
+
toString() {
|
|
12
|
+
return `${this.parameterName} ${this.description}`.trim();
|
|
13
|
+
}
|
|
14
|
+
getNodeType() {
|
|
15
|
+
return 'ParamLaterInvokedCallableTagValueNode';
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.ParamLaterInvokedCallableTagValueNode = ParamLaterInvokedCallableTagValueNode;
|
|
@@ -8,6 +8,7 @@ import type { PhpDocChildNode } from './php-doc-child-node';
|
|
|
8
8
|
import { PhpDocTagNode } from './php-doc-tag-node';
|
|
9
9
|
import { PropertyTagValueNode } from './property-tag-value-node';
|
|
10
10
|
import { ReturnTagValueNode } from './return-tag-value-node';
|
|
11
|
+
import { SealedTagValueNode } from './sealed-tag-value-node';
|
|
11
12
|
import { TemplateTagValueNode } from './template-tag-value-node';
|
|
12
13
|
import { ThrowsTagValueNode } from './throws-tag-value-node';
|
|
13
14
|
import { TypelessParamTagValueNode } from './typeless-param-tag-value-node';
|
|
@@ -29,6 +30,7 @@ export declare class PhpDocNode extends BaseNode {
|
|
|
29
30
|
getReturnTagValues(tagName?: string): ReturnTagValueNode[];
|
|
30
31
|
getThrowsTagValues(tagName?: string): ThrowsTagValueNode[];
|
|
31
32
|
getMixinTagValues(tagName?: string): MixinTagValueNode[];
|
|
33
|
+
getSealedTagValues(tagName?: string): SealedTagValueNode[];
|
|
32
34
|
getDeprecatedTagValues(): DeprecatedTagValueNode[];
|
|
33
35
|
getNodeType(): string;
|
|
34
36
|
}
|
|
@@ -10,6 +10,7 @@ const param_tag_value_node_1 = require("./param-tag-value-node");
|
|
|
10
10
|
const php_doc_tag_node_1 = require("./php-doc-tag-node");
|
|
11
11
|
const property_tag_value_node_1 = require("./property-tag-value-node");
|
|
12
12
|
const return_tag_value_node_1 = require("./return-tag-value-node");
|
|
13
|
+
const sealed_tag_value_node_1 = require("./sealed-tag-value-node");
|
|
13
14
|
const template_tag_value_node_1 = require("./template-tag-value-node");
|
|
14
15
|
const throws_tag_value_node_1 = require("./throws-tag-value-node");
|
|
15
16
|
const typeless_param_tag_value_node_1 = require("./typeless-param-tag-value-node");
|
|
@@ -93,6 +94,11 @@ class PhpDocNode extends base_node_1.BaseNode {
|
|
|
93
94
|
.map((tag) => tag.value)
|
|
94
95
|
.filter((value) => value instanceof mixin_tag_value_node_1.MixinTagValueNode);
|
|
95
96
|
}
|
|
97
|
+
getSealedTagValues(tagName = '@phpstan-sealed') {
|
|
98
|
+
return this.getTagsByName(tagName)
|
|
99
|
+
.map((tag) => tag.value)
|
|
100
|
+
.filter((value) => value instanceof sealed_tag_value_node_1.SealedTagValueNode);
|
|
101
|
+
}
|
|
96
102
|
getDeprecatedTagValues() {
|
|
97
103
|
return this.getTagsByName('@deprecated')
|
|
98
104
|
.map((tag) => tag.value)
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PhpDocTagValueNode } from './php-doc-tag-value-node';
|
|
2
|
+
export declare class PureUnlessCallableIsImpureTagValueNode extends PhpDocTagValueNode {
|
|
3
|
+
parameterName: string;
|
|
4
|
+
description: string;
|
|
5
|
+
constructor(parameterName: string, description: string);
|
|
6
|
+
toString(): string;
|
|
7
|
+
getNodeType(): string;
|
|
8
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PureUnlessCallableIsImpureTagValueNode = void 0;
|
|
4
|
+
const php_doc_tag_value_node_1 = require("./php-doc-tag-value-node");
|
|
5
|
+
class PureUnlessCallableIsImpureTagValueNode extends php_doc_tag_value_node_1.PhpDocTagValueNode {
|
|
6
|
+
constructor(parameterName, description) {
|
|
7
|
+
super();
|
|
8
|
+
this.parameterName = parameterName;
|
|
9
|
+
this.description = description;
|
|
10
|
+
}
|
|
11
|
+
toString() {
|
|
12
|
+
return `${this.parameterName} ${this.description}`.trim();
|
|
13
|
+
}
|
|
14
|
+
getNodeType() {
|
|
15
|
+
return 'PureUnlessCallableIsImpureTagValueNode';
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.PureUnlessCallableIsImpureTagValueNode = PureUnlessCallableIsImpureTagValueNode;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { TypeNode } from '../type/type-node';
|
|
2
|
+
import { PhpDocTagValueNode } from './php-doc-tag-value-node';
|
|
3
|
+
export declare class RequireExtendsTagValueNode extends PhpDocTagValueNode {
|
|
4
|
+
type: TypeNode;
|
|
5
|
+
description: string;
|
|
6
|
+
constructor(type: TypeNode, description: string);
|
|
7
|
+
toString(): string;
|
|
8
|
+
getNodeType(): string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RequireExtendsTagValueNode = void 0;
|
|
4
|
+
const php_doc_tag_value_node_1 = require("./php-doc-tag-value-node");
|
|
5
|
+
class RequireExtendsTagValueNode extends php_doc_tag_value_node_1.PhpDocTagValueNode {
|
|
6
|
+
constructor(type, description) {
|
|
7
|
+
super();
|
|
8
|
+
this.type = type;
|
|
9
|
+
this.description = description;
|
|
10
|
+
}
|
|
11
|
+
toString() {
|
|
12
|
+
return `${this.type.toString()} ${this.description}`.trim();
|
|
13
|
+
}
|
|
14
|
+
getNodeType() {
|
|
15
|
+
return 'RequireExtendsTagValueNode';
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.RequireExtendsTagValueNode = RequireExtendsTagValueNode;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { TypeNode } from '../type/type-node';
|
|
2
|
+
import { PhpDocTagValueNode } from './php-doc-tag-value-node';
|
|
3
|
+
export declare class RequireImplementsTagValueNode extends PhpDocTagValueNode {
|
|
4
|
+
type: TypeNode;
|
|
5
|
+
description: string;
|
|
6
|
+
constructor(type: TypeNode, description: string);
|
|
7
|
+
toString(): string;
|
|
8
|
+
getNodeType(): string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RequireImplementsTagValueNode = void 0;
|
|
4
|
+
const php_doc_tag_value_node_1 = require("./php-doc-tag-value-node");
|
|
5
|
+
class RequireImplementsTagValueNode extends php_doc_tag_value_node_1.PhpDocTagValueNode {
|
|
6
|
+
constructor(type, description) {
|
|
7
|
+
super();
|
|
8
|
+
this.type = type;
|
|
9
|
+
this.description = description;
|
|
10
|
+
}
|
|
11
|
+
toString() {
|
|
12
|
+
return `${this.type.toString()} ${this.description}`.trim();
|
|
13
|
+
}
|
|
14
|
+
getNodeType() {
|
|
15
|
+
return 'RequireImplementsTagValueNode';
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.RequireImplementsTagValueNode = RequireImplementsTagValueNode;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { TypeNode } from '../type/type-node';
|
|
2
|
+
import { PhpDocTagValueNode } from './php-doc-tag-value-node';
|
|
3
|
+
export declare class SealedTagValueNode extends PhpDocTagValueNode {
|
|
4
|
+
type: TypeNode;
|
|
5
|
+
description: string;
|
|
6
|
+
constructor(type: TypeNode, description: string);
|
|
7
|
+
toString(): string;
|
|
8
|
+
getNodeType(): string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SealedTagValueNode = void 0;
|
|
4
|
+
const php_doc_tag_value_node_1 = require("./php-doc-tag-value-node");
|
|
5
|
+
class SealedTagValueNode extends php_doc_tag_value_node_1.PhpDocTagValueNode {
|
|
6
|
+
constructor(type, description) {
|
|
7
|
+
super();
|
|
8
|
+
this.type = type;
|
|
9
|
+
this.description = description;
|
|
10
|
+
}
|
|
11
|
+
toString() {
|
|
12
|
+
return `${this.type.toString()} ${this.description}`.trim();
|
|
13
|
+
}
|
|
14
|
+
getNodeType() {
|
|
15
|
+
return 'SealedTagValueNode';
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.SealedTagValueNode = SealedTagValueNode;
|
|
@@ -5,7 +5,8 @@ export declare class TemplateTagValueNode extends PhpDocTagValueNode {
|
|
|
5
5
|
bound: TypeNode | null;
|
|
6
6
|
description: string;
|
|
7
7
|
defaultTypeNode: TypeNode | null;
|
|
8
|
-
|
|
8
|
+
lowerBound: TypeNode | null;
|
|
9
|
+
constructor(name: string, bound: TypeNode | null, description: string, defaultTypeNode?: TypeNode | null, lowerBound?: TypeNode | null);
|
|
9
10
|
toString(): string;
|
|
10
11
|
getNodeType(): string;
|
|
11
12
|
}
|
|
@@ -3,19 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.TemplateTagValueNode = void 0;
|
|
4
4
|
const php_doc_tag_value_node_1 = require("./php-doc-tag-value-node");
|
|
5
5
|
class TemplateTagValueNode extends php_doc_tag_value_node_1.PhpDocTagValueNode {
|
|
6
|
-
constructor(name, bound, description, defaultTypeNode = null) {
|
|
6
|
+
constructor(name, bound, description, defaultTypeNode = null, lowerBound = null) {
|
|
7
7
|
super();
|
|
8
8
|
this.name = name;
|
|
9
9
|
this.bound = bound;
|
|
10
10
|
this.description = description;
|
|
11
11
|
this.defaultTypeNode = defaultTypeNode;
|
|
12
|
+
this.lowerBound = lowerBound;
|
|
12
13
|
}
|
|
13
14
|
toString() {
|
|
14
15
|
const bound = this.bound !== null ? ` of ${this.bound.toString()}` : '';
|
|
16
|
+
const lowerBoundStr = this.lowerBound !== null ? ` super ${this.lowerBound.toString()}` : '';
|
|
15
17
|
const defaultString = this.defaultTypeNode !== null
|
|
16
18
|
? ` = ${this.defaultTypeNode.toString()}`
|
|
17
19
|
: '';
|
|
18
|
-
return `${this.name}${bound}${defaultString} ${this.description}`.trim();
|
|
20
|
+
return `${this.name}${bound}${lowerBoundStr}${defaultString} ${this.description}`.trim();
|
|
19
21
|
}
|
|
20
22
|
getNodeType() {
|
|
21
23
|
return 'TemplateTagValueNode';
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import type { ConstExprIntegerNode } from '../const-expr/const-expr-integer-node';
|
|
2
2
|
import type { ConstExprStringNode } from '../const-expr/const-expr-string-node';
|
|
3
|
+
import type { ConstFetchNode } from '../const-expr/const-fetch-node';
|
|
3
4
|
import type { IdentifierTypeNode } from './identifier-type-node';
|
|
4
5
|
import { TypeNode } from './type-node';
|
|
5
6
|
export declare class ArrayShapeItemNode extends TypeNode {
|
|
6
|
-
keyName: ConstExprIntegerNode | ConstExprStringNode | IdentifierTypeNode | null;
|
|
7
|
+
keyName: ConstExprIntegerNode | ConstExprStringNode | ConstFetchNode | IdentifierTypeNode | null;
|
|
7
8
|
optional: boolean;
|
|
8
9
|
valueType: TypeNode;
|
|
9
|
-
constructor(keyName: ConstExprIntegerNode | ConstExprStringNode | IdentifierTypeNode | null, optional: boolean, valueType: TypeNode);
|
|
10
|
+
constructor(keyName: ConstExprIntegerNode | ConstExprStringNode | ConstFetchNode | IdentifierTypeNode | null, optional: boolean, valueType: TypeNode);
|
|
10
11
|
toString(): string;
|
|
11
12
|
getNodeType(): string;
|
|
12
13
|
}
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
import type { ArrayShapeItemNode } from './array-shape-item-node';
|
|
2
|
+
import type { ArrayShapeUnsealedTypeNode } from './array-shape-unsealed-type-node';
|
|
2
3
|
import { TypeNode } from './type-node';
|
|
3
4
|
export declare enum ArrayShapeNodeKind {
|
|
4
5
|
ARRAY = "array",
|
|
5
|
-
LIST = "list"
|
|
6
|
+
LIST = "list",
|
|
7
|
+
NON_EMPTY_ARRAY = "non-empty-array",
|
|
8
|
+
NON_EMPTY_LIST = "non-empty-list"
|
|
6
9
|
}
|
|
7
10
|
export declare class ArrayShapeNode extends TypeNode {
|
|
8
11
|
items: (ArrayShapeItemNode | string)[];
|
|
9
12
|
sealed: boolean;
|
|
10
13
|
kind: ArrayShapeNodeKind;
|
|
11
|
-
|
|
14
|
+
unsealedType: ArrayShapeUnsealedTypeNode | null;
|
|
15
|
+
constructor(items: (ArrayShapeItemNode | string)[], sealed?: boolean, kind?: ArrayShapeNodeKind, unsealedType?: ArrayShapeUnsealedTypeNode | null);
|
|
16
|
+
static createSealed(items: (ArrayShapeItemNode | string)[], kind?: ArrayShapeNodeKind): ArrayShapeNode;
|
|
17
|
+
static createUnsealed(items: (ArrayShapeItemNode | string)[], unsealedType: ArrayShapeUnsealedTypeNode | null, kind?: ArrayShapeNodeKind): ArrayShapeNode;
|
|
12
18
|
toString(): string;
|
|
13
19
|
getNodeType(): string;
|
|
14
20
|
}
|
|
@@ -6,21 +6,31 @@ var ArrayShapeNodeKind;
|
|
|
6
6
|
(function (ArrayShapeNodeKind) {
|
|
7
7
|
ArrayShapeNodeKind["ARRAY"] = "array";
|
|
8
8
|
ArrayShapeNodeKind["LIST"] = "list";
|
|
9
|
+
ArrayShapeNodeKind["NON_EMPTY_ARRAY"] = "non-empty-array";
|
|
10
|
+
ArrayShapeNodeKind["NON_EMPTY_LIST"] = "non-empty-list";
|
|
9
11
|
})(ArrayShapeNodeKind || (exports.ArrayShapeNodeKind = ArrayShapeNodeKind = {}));
|
|
10
12
|
class ArrayShapeNode extends type_node_1.TypeNode {
|
|
11
|
-
constructor(items, sealed = true, kind = ArrayShapeNodeKind.ARRAY) {
|
|
13
|
+
constructor(items, sealed = true, kind = ArrayShapeNodeKind.ARRAY, unsealedType = null) {
|
|
12
14
|
super();
|
|
13
15
|
this.items = items;
|
|
14
16
|
this.sealed = sealed;
|
|
15
17
|
this.kind = kind;
|
|
18
|
+
this.unsealedType = unsealedType;
|
|
16
19
|
this.items = items;
|
|
17
20
|
this.sealed = sealed;
|
|
18
21
|
this.kind = kind;
|
|
22
|
+
this.unsealedType = unsealedType;
|
|
23
|
+
}
|
|
24
|
+
static createSealed(items, kind = ArrayShapeNodeKind.ARRAY) {
|
|
25
|
+
return new ArrayShapeNode(items, true, kind, null);
|
|
26
|
+
}
|
|
27
|
+
static createUnsealed(items, unsealedType, kind = ArrayShapeNodeKind.ARRAY) {
|
|
28
|
+
return new ArrayShapeNode(items, false, kind, unsealedType);
|
|
19
29
|
}
|
|
20
30
|
toString() {
|
|
21
|
-
const
|
|
31
|
+
const items = [...this.items];
|
|
22
32
|
if (!this.sealed) {
|
|
23
|
-
items.push('
|
|
33
|
+
items.push(`...${this.unsealedType !== null ? this.unsealedType.toString() : ''}`);
|
|
24
34
|
}
|
|
25
35
|
return `${this.kind}{${items.join(', ')}}`;
|
|
26
36
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TypeNode } from './type-node';
|
|
2
|
+
export declare class ArrayShapeUnsealedTypeNode extends TypeNode {
|
|
3
|
+
valueType: TypeNode;
|
|
4
|
+
keyType: TypeNode | null;
|
|
5
|
+
constructor(valueType: TypeNode, keyType: TypeNode | null);
|
|
6
|
+
toString(): string;
|
|
7
|
+
getNodeType(): string;
|
|
8
|
+
}
|