@spyglassmc/mcdoc 0.3.2 → 0.3.4
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/lib/binder/index.d.ts +3 -3
- package/lib/binder/index.js +19 -10
- package/lib/common.d.ts +1 -1
- package/lib/node/index.d.ts +218 -220
- package/lib/node/index.js +465 -311
- package/lib/parser/index.d.ts +1 -1
- package/lib/parser/index.js +19 -14
- package/lib/type/index.d.ts +22 -22
- package/lib/type/index.js +1 -0
- package/package.json +3 -3
package/lib/node/index.d.ts
CHANGED
|
@@ -4,134 +4,134 @@ export interface ModuleNode extends AstNode {
|
|
|
4
4
|
type: 'mcdoc:module';
|
|
5
5
|
children: TopLevelNode[];
|
|
6
6
|
}
|
|
7
|
-
export declare
|
|
8
|
-
is(node: AstNode | undefined): node is ModuleNode;
|
|
9
|
-
}
|
|
10
|
-
export
|
|
11
|
-
export declare
|
|
12
|
-
is(node: AstNode | undefined): node is TopLevelNode;
|
|
13
|
-
}
|
|
7
|
+
export declare namespace ModuleNode {
|
|
8
|
+
function is(node: AstNode | undefined): node is ModuleNode;
|
|
9
|
+
}
|
|
10
|
+
export type TopLevelNode = CommentNode | DispatchStatementNode | EnumNode | InjectionNode | StructNode | TypeAliasNode | UseStatementNode;
|
|
11
|
+
export declare namespace TopLevelNode {
|
|
12
|
+
function is(node: AstNode | undefined): node is TopLevelNode;
|
|
13
|
+
}
|
|
14
14
|
export interface DispatchStatementNode extends AstNode {
|
|
15
15
|
type: 'mcdoc:dispatch_statement';
|
|
16
|
-
children: (CommentNode |
|
|
16
|
+
children: (CommentNode | PrelimNode | LiteralNode | ResourceLocationNode | IndexBodyNode | TypeParamBlockNode | TypeNode)[];
|
|
17
17
|
}
|
|
18
|
-
export declare
|
|
19
|
-
destruct(node: DispatchStatementNode): {
|
|
18
|
+
export declare namespace DispatchStatementNode {
|
|
19
|
+
function destruct(node: DispatchStatementNode): {
|
|
20
20
|
attributes: AttributeNode[];
|
|
21
21
|
location?: ResourceLocationNode;
|
|
22
22
|
index?: IndexBodyNode;
|
|
23
23
|
target?: TypeNode;
|
|
24
24
|
typeParams?: TypeParamBlockNode;
|
|
25
25
|
};
|
|
26
|
-
is(node: AstNode | undefined): node is DispatchStatementNode;
|
|
27
|
-
}
|
|
26
|
+
function is(node: AstNode | undefined): node is DispatchStatementNode;
|
|
27
|
+
}
|
|
28
28
|
export interface LiteralNode extends AstNode {
|
|
29
29
|
type: 'mcdoc:literal';
|
|
30
30
|
value: string;
|
|
31
31
|
colorTokenType?: ColorTokenType;
|
|
32
32
|
}
|
|
33
|
-
export declare
|
|
34
|
-
is(node: AstNode | undefined): node is LiteralNode;
|
|
35
|
-
}
|
|
33
|
+
export declare namespace LiteralNode {
|
|
34
|
+
function is(node: AstNode | undefined): node is LiteralNode;
|
|
35
|
+
}
|
|
36
36
|
export interface IndexBodyNode extends AstNode {
|
|
37
37
|
type: 'mcdoc:index_body';
|
|
38
38
|
children: (CommentNode | IndexNode)[];
|
|
39
39
|
}
|
|
40
|
-
export declare
|
|
41
|
-
destruct(node: IndexBodyNode): {
|
|
40
|
+
export declare namespace IndexBodyNode {
|
|
41
|
+
function destruct(node: IndexBodyNode): {
|
|
42
42
|
parallelIndices: IndexNode[];
|
|
43
43
|
};
|
|
44
|
-
is(node: AstNode | undefined): node is IndexBodyNode;
|
|
45
|
-
}
|
|
46
|
-
export
|
|
47
|
-
export declare
|
|
48
|
-
is(node: AstNode | undefined): node is IndexNode;
|
|
49
|
-
}
|
|
50
|
-
export
|
|
51
|
-
export declare
|
|
52
|
-
is(node: AstNode | undefined): node is StaticIndexNode;
|
|
53
|
-
}
|
|
44
|
+
function is(node: AstNode | undefined): node is IndexBodyNode;
|
|
45
|
+
}
|
|
46
|
+
export type IndexNode = StaticIndexNode | DynamicIndexNode;
|
|
47
|
+
export declare namespace IndexNode {
|
|
48
|
+
function is(node: AstNode | undefined): node is IndexNode;
|
|
49
|
+
}
|
|
50
|
+
export type StaticIndexNode = LiteralNode | IdentifierNode | StringNode | ResourceLocationNode;
|
|
51
|
+
export declare namespace StaticIndexNode {
|
|
52
|
+
function is(node: AstNode | undefined): node is StaticIndexNode;
|
|
53
|
+
}
|
|
54
54
|
export interface IdentifierNode extends SymbolBaseNode {
|
|
55
55
|
type: 'mcdoc:identifier';
|
|
56
56
|
}
|
|
57
|
-
export declare
|
|
58
|
-
is(node: AstNode | undefined): node is IdentifierNode;
|
|
59
|
-
}
|
|
57
|
+
export declare namespace IdentifierNode {
|
|
58
|
+
function is(node: AstNode | undefined): node is IdentifierNode;
|
|
59
|
+
}
|
|
60
60
|
export interface DynamicIndexNode extends AstNode {
|
|
61
61
|
type: 'mcdoc:dynamic_index';
|
|
62
62
|
children: (CommentNode | AccessorKeyNode)[];
|
|
63
63
|
}
|
|
64
|
-
export declare
|
|
65
|
-
destruct(node: DynamicIndexNode): {
|
|
64
|
+
export declare namespace DynamicIndexNode {
|
|
65
|
+
function destruct(node: DynamicIndexNode): {
|
|
66
66
|
keys: AccessorKeyNode[];
|
|
67
67
|
};
|
|
68
|
-
is(node: AstNode | undefined): node is DynamicIndexNode;
|
|
69
|
-
}
|
|
70
|
-
export
|
|
71
|
-
export declare
|
|
72
|
-
is(node: AstNode | undefined): node is AccessorKeyNode;
|
|
73
|
-
}
|
|
74
|
-
export
|
|
75
|
-
export declare
|
|
76
|
-
is(node: AstNode | undefined): node is TypeNode;
|
|
77
|
-
}
|
|
68
|
+
function is(node: AstNode | undefined): node is DynamicIndexNode;
|
|
69
|
+
}
|
|
70
|
+
export type AccessorKeyNode = LiteralNode | IdentifierNode | StringNode;
|
|
71
|
+
export declare namespace AccessorKeyNode {
|
|
72
|
+
function is(node: AstNode | undefined): node is AccessorKeyNode;
|
|
73
|
+
}
|
|
74
|
+
export type TypeNode = AnyTypeNode | BooleanTypeNode | StringTypeNode | LiteralTypeNode | NumericTypeNode | PrimitiveArrayTypeNode | ListTypeNode | TupleTypeNode | EnumNode | StructNode | ReferenceTypeNode | DispatcherTypeNode | UnionTypeNode;
|
|
75
|
+
export declare namespace TypeNode {
|
|
76
|
+
function is(node: AstNode | undefined): node is TypeNode;
|
|
77
|
+
}
|
|
78
78
|
export interface TypeBaseNode<CN extends AstNode> extends AstNode {
|
|
79
79
|
type: `mcdoc:${string}`;
|
|
80
80
|
children: (CommentNode | AttributeNode | IndexBodyNode | TypeArgBlockNode | CN)[];
|
|
81
81
|
}
|
|
82
|
-
export declare
|
|
83
|
-
destruct(node: TypeBaseNode<any>): {
|
|
82
|
+
export declare namespace TypeBaseNode {
|
|
83
|
+
function destruct(node: TypeBaseNode<any>): {
|
|
84
84
|
appendixes: (IndexBodyNode | TypeArgBlockNode)[];
|
|
85
85
|
attributes: AttributeNode[];
|
|
86
86
|
};
|
|
87
|
-
}
|
|
87
|
+
}
|
|
88
88
|
export interface AttributeNode extends AstNode {
|
|
89
89
|
type: 'mcdoc:attribute';
|
|
90
90
|
children: (CommentNode | IdentifierNode | AttributeValueNode)[];
|
|
91
91
|
}
|
|
92
|
-
export declare
|
|
93
|
-
destruct(node: AttributeNode): {
|
|
92
|
+
export declare namespace AttributeNode {
|
|
93
|
+
function destruct(node: AttributeNode): {
|
|
94
94
|
name: IdentifierNode;
|
|
95
95
|
value: AttributeValueNode | undefined;
|
|
96
96
|
};
|
|
97
|
-
is(node: AstNode | undefined): node is AttributeNode;
|
|
98
|
-
}
|
|
99
|
-
export
|
|
100
|
-
export declare
|
|
101
|
-
is(node: AstNode | undefined): node is AttributeValueNode;
|
|
102
|
-
}
|
|
97
|
+
function is(node: AstNode | undefined): node is AttributeNode;
|
|
98
|
+
}
|
|
99
|
+
export type AttributeValueNode = TypeNode | AttributeTreeNode;
|
|
100
|
+
export declare namespace AttributeValueNode {
|
|
101
|
+
function is(node: AstNode | undefined): node is AttributeValueNode;
|
|
102
|
+
}
|
|
103
103
|
export interface AttributeTreeNode extends AstNode {
|
|
104
104
|
type: 'mcdoc:attribute/tree';
|
|
105
105
|
children: (CommentNode | AttributeTreePosValuesNode | AttributeTreeNamedValuesNode)[];
|
|
106
106
|
delim: '(' | '[' | '{';
|
|
107
107
|
}
|
|
108
|
-
export declare
|
|
109
|
-
destruct(node: AttributeTreeNode): {
|
|
108
|
+
export declare namespace AttributeTreeNode {
|
|
109
|
+
function destruct(node: AttributeTreeNode): {
|
|
110
110
|
positional?: AttributeTreePosValuesNode;
|
|
111
111
|
named?: AttributeTreeNamedValuesNode;
|
|
112
112
|
};
|
|
113
|
-
is(node: AstNode | undefined): node is AttributeTreeNode;
|
|
114
|
-
}
|
|
113
|
+
function is(node: AstNode | undefined): node is AttributeTreeNode;
|
|
114
|
+
}
|
|
115
115
|
export interface AttributeTreePosValuesNode extends AstNode {
|
|
116
116
|
type: 'mcdoc:attribute/tree/pos';
|
|
117
117
|
children: (CommentNode | AttributeValueNode)[];
|
|
118
118
|
}
|
|
119
|
-
export declare
|
|
120
|
-
destruct(node: AttributeTreePosValuesNode): {
|
|
119
|
+
export declare namespace AttributeTreePosValuesNode {
|
|
120
|
+
function destruct(node: AttributeTreePosValuesNode): {
|
|
121
121
|
values: AttributeValueNode[];
|
|
122
122
|
};
|
|
123
|
-
is(node: AstNode | undefined): node is AttributeTreePosValuesNode;
|
|
124
|
-
}
|
|
123
|
+
function is(node: AstNode | undefined): node is AttributeTreePosValuesNode;
|
|
124
|
+
}
|
|
125
125
|
export interface AttributeTreeNamedValuesNode extends AstNode {
|
|
126
126
|
type: 'mcdoc:attribute/tree/named';
|
|
127
127
|
children: (CommentNode | IdentifierNode | StringNode | AttributeValueNode)[];
|
|
128
128
|
}
|
|
129
|
-
export declare
|
|
130
|
-
destruct(node: AttributeTreeNamedValuesNode): {
|
|
129
|
+
export declare namespace AttributeTreeNamedValuesNode {
|
|
130
|
+
function destruct(node: AttributeTreeNamedValuesNode): {
|
|
131
131
|
values: AttributeTreeNamedKeyValuePair[];
|
|
132
132
|
};
|
|
133
|
-
is(node: AstNode | undefined): node is AttributeTreeNamedValuesNode;
|
|
134
|
-
}
|
|
133
|
+
function is(node: AstNode | undefined): node is AttributeTreeNamedValuesNode;
|
|
134
|
+
}
|
|
135
135
|
export interface AttributeTreeNamedKeyValuePair {
|
|
136
136
|
key: IdentifierNode | StringNode;
|
|
137
137
|
value: AttributeValueNode;
|
|
@@ -140,346 +140,345 @@ export interface TypeArgBlockNode extends AstNode {
|
|
|
140
140
|
type: 'mcdoc:type_arg_block';
|
|
141
141
|
children: (CommentNode | TypeNode)[];
|
|
142
142
|
}
|
|
143
|
-
export declare
|
|
144
|
-
destruct(node: TypeArgBlockNode): {
|
|
143
|
+
export declare namespace TypeArgBlockNode {
|
|
144
|
+
function destruct(node: TypeArgBlockNode): {
|
|
145
145
|
args: TypeNode[];
|
|
146
146
|
};
|
|
147
|
-
is(node: AstNode | undefined): node is TypeArgBlockNode;
|
|
148
|
-
}
|
|
147
|
+
function is(node: AstNode | undefined): node is TypeArgBlockNode;
|
|
148
|
+
}
|
|
149
149
|
export interface AnyTypeNode extends TypeBaseNode<LiteralNode> {
|
|
150
150
|
type: 'mcdoc:type/any';
|
|
151
151
|
}
|
|
152
|
-
export declare
|
|
153
|
-
is(node: AstNode | undefined): node is AnyTypeNode;
|
|
154
|
-
}
|
|
152
|
+
export declare namespace AnyTypeNode {
|
|
153
|
+
function is(node: AstNode | undefined): node is AnyTypeNode;
|
|
154
|
+
}
|
|
155
155
|
export interface BooleanTypeNode extends TypeBaseNode<LiteralNode> {
|
|
156
156
|
type: 'mcdoc:type/boolean';
|
|
157
157
|
}
|
|
158
|
-
export declare
|
|
159
|
-
is(node: AstNode | undefined): node is BooleanTypeNode;
|
|
160
|
-
}
|
|
158
|
+
export declare namespace BooleanTypeNode {
|
|
159
|
+
function is(node: AstNode | undefined): node is BooleanTypeNode;
|
|
160
|
+
}
|
|
161
161
|
export interface IntRangeNode extends AstNode {
|
|
162
162
|
type: 'mcdoc:int_range';
|
|
163
163
|
children: (IntegerNode | LiteralNode)[];
|
|
164
164
|
}
|
|
165
|
-
export declare
|
|
166
|
-
destruct(node: IntRangeNode): {
|
|
165
|
+
export declare namespace IntRangeNode {
|
|
166
|
+
function destruct(node: IntRangeNode): {
|
|
167
167
|
kind: RangeKind;
|
|
168
168
|
min?: IntegerNode;
|
|
169
169
|
max?: IntegerNode;
|
|
170
170
|
};
|
|
171
|
-
is(node: AstNode | undefined): node is IntRangeNode;
|
|
172
|
-
}
|
|
171
|
+
function is(node: AstNode | undefined): node is IntRangeNode;
|
|
172
|
+
}
|
|
173
173
|
export interface LiteralTypeNode extends TypeBaseNode<LiteralTypeValueNode> {
|
|
174
174
|
type: 'mcdoc:type/literal';
|
|
175
175
|
}
|
|
176
|
-
export declare
|
|
177
|
-
destruct(node: LiteralTypeNode): {
|
|
176
|
+
export declare namespace LiteralTypeNode {
|
|
177
|
+
function destruct(node: LiteralTypeNode): {
|
|
178
178
|
value: LiteralTypeValueNode;
|
|
179
179
|
};
|
|
180
|
-
is(node: AstNode | undefined): node is LiteralTypeNode;
|
|
181
|
-
}
|
|
182
|
-
export
|
|
183
|
-
export declare
|
|
184
|
-
is(node: AstNode | undefined): node is LiteralTypeValueNode;
|
|
185
|
-
}
|
|
180
|
+
function is(node: AstNode | undefined): node is LiteralTypeNode;
|
|
181
|
+
}
|
|
182
|
+
export type LiteralTypeValueNode = LiteralNode | TypedNumberNode | StringNode;
|
|
183
|
+
export declare namespace LiteralTypeValueNode {
|
|
184
|
+
function is(node: AstNode | undefined): node is LiteralTypeValueNode;
|
|
185
|
+
}
|
|
186
186
|
export interface TypedNumberNode extends AstNode {
|
|
187
187
|
type: 'mcdoc:typed_number';
|
|
188
188
|
children: (FloatNode | LiteralNode)[];
|
|
189
189
|
}
|
|
190
|
-
export declare
|
|
191
|
-
destruct(node: TypedNumberNode): {
|
|
190
|
+
export declare namespace TypedNumberNode {
|
|
191
|
+
function destruct(node: TypedNumberNode): {
|
|
192
192
|
value: FloatNode;
|
|
193
193
|
suffix?: LiteralNode;
|
|
194
194
|
};
|
|
195
|
-
is(node: AstNode | undefined): node is TypedNumberNode;
|
|
196
|
-
}
|
|
195
|
+
function is(node: AstNode | undefined): node is TypedNumberNode;
|
|
196
|
+
}
|
|
197
197
|
export interface NumericTypeNode extends TypeBaseNode<LiteralNode | FloatRangeNode | IntRangeNode> {
|
|
198
198
|
type: 'mcdoc:type/numeric_type';
|
|
199
199
|
}
|
|
200
|
-
export declare
|
|
201
|
-
destruct(node: NumericTypeNode): {
|
|
200
|
+
export declare namespace NumericTypeNode {
|
|
201
|
+
function destruct(node: NumericTypeNode): {
|
|
202
202
|
numericKind: LiteralNode;
|
|
203
203
|
valueRange?: FloatRangeNode | IntRangeNode;
|
|
204
204
|
};
|
|
205
|
-
is(node: AstNode | undefined): node is NumericTypeNode;
|
|
206
|
-
}
|
|
205
|
+
function is(node: AstNode | undefined): node is NumericTypeNode;
|
|
206
|
+
}
|
|
207
207
|
export declare const RangeExclusiveChar = "<";
|
|
208
208
|
/**
|
|
209
209
|
* A 2-bit binary number is used to represent the kind of range.
|
|
210
210
|
* The first bit from the left represents the start, the second bit from the left represents the end.
|
|
211
211
|
* The bit is turned on if the range is exclusive on that end.
|
|
212
212
|
*/
|
|
213
|
-
export
|
|
213
|
+
export type RangeKind = 0b00 | 0b01 | 0b10 | 0b11;
|
|
214
214
|
export declare function getRangeDelimiter(kind: RangeKind): string;
|
|
215
215
|
export interface FloatRangeNode extends AstNode {
|
|
216
216
|
type: 'mcdoc:float_range';
|
|
217
217
|
children: (FloatNode | LiteralNode)[];
|
|
218
218
|
}
|
|
219
|
-
export declare
|
|
220
|
-
destruct(node: FloatRangeNode): {
|
|
219
|
+
export declare namespace FloatRangeNode {
|
|
220
|
+
function destruct(node: FloatRangeNode): {
|
|
221
221
|
kind: RangeKind;
|
|
222
222
|
min?: FloatNode;
|
|
223
223
|
max?: FloatNode;
|
|
224
224
|
};
|
|
225
|
-
is(node: AstNode | undefined): node is FloatRangeNode;
|
|
226
|
-
}
|
|
225
|
+
function is(node: AstNode | undefined): node is FloatRangeNode;
|
|
226
|
+
}
|
|
227
227
|
export interface PrimitiveArrayTypeNode extends TypeBaseNode<LiteralNode | IntRangeNode> {
|
|
228
228
|
type: 'mcdoc:type/primitive_array';
|
|
229
229
|
}
|
|
230
|
-
export declare
|
|
231
|
-
destruct(node: PrimitiveArrayTypeNode): {
|
|
230
|
+
export declare namespace PrimitiveArrayTypeNode {
|
|
231
|
+
function destruct(node: PrimitiveArrayTypeNode): {
|
|
232
232
|
arrayKind: LiteralNode;
|
|
233
|
-
lengthRange?: IntRangeNode
|
|
234
|
-
valueRange?: IntRangeNode
|
|
233
|
+
lengthRange?: IntRangeNode;
|
|
234
|
+
valueRange?: IntRangeNode;
|
|
235
235
|
};
|
|
236
|
-
is(node: AstNode | undefined): node is PrimitiveArrayTypeNode;
|
|
237
|
-
}
|
|
236
|
+
function is(node: AstNode | undefined): node is PrimitiveArrayTypeNode;
|
|
237
|
+
}
|
|
238
238
|
export interface ListTypeNode extends TypeBaseNode<TypeNode | IntRangeNode> {
|
|
239
239
|
type: 'mcdoc:type/list';
|
|
240
240
|
}
|
|
241
|
-
export declare
|
|
242
|
-
destruct(node: ListTypeNode): {
|
|
241
|
+
export declare namespace ListTypeNode {
|
|
242
|
+
function destruct(node: ListTypeNode): {
|
|
243
243
|
item: TypeNode;
|
|
244
244
|
lengthRange?: IntRangeNode;
|
|
245
245
|
};
|
|
246
|
-
is(node: AstNode | undefined): node is ListTypeNode;
|
|
247
|
-
}
|
|
246
|
+
function is(node: AstNode | undefined): node is ListTypeNode;
|
|
247
|
+
}
|
|
248
248
|
export interface StringTypeNode extends TypeBaseNode<LiteralNode | IntRangeNode> {
|
|
249
249
|
type: 'mcdoc:type/string';
|
|
250
250
|
}
|
|
251
|
-
export declare
|
|
252
|
-
destruct(node: StringTypeNode): {
|
|
251
|
+
export declare namespace StringTypeNode {
|
|
252
|
+
function destruct(node: StringTypeNode): {
|
|
253
253
|
lengthRange?: IntRangeNode;
|
|
254
254
|
};
|
|
255
|
-
is(node: AstNode | undefined): node is StringTypeNode;
|
|
256
|
-
}
|
|
255
|
+
function is(node: AstNode | undefined): node is StringTypeNode;
|
|
256
|
+
}
|
|
257
257
|
export interface TupleTypeNode extends TypeBaseNode<TypeNode> {
|
|
258
258
|
type: 'mcdoc:type/tuple';
|
|
259
259
|
}
|
|
260
|
-
export declare
|
|
261
|
-
destruct(node: TupleTypeNode): {
|
|
260
|
+
export declare namespace TupleTypeNode {
|
|
261
|
+
function destruct(node: TupleTypeNode): {
|
|
262
262
|
items: TypeNode[];
|
|
263
263
|
};
|
|
264
|
-
is(node: AstNode | undefined): node is TupleTypeNode;
|
|
265
|
-
}
|
|
264
|
+
function is(node: AstNode | undefined): node is TupleTypeNode;
|
|
265
|
+
}
|
|
266
266
|
export interface EnumNode extends TypeBaseNode<DocCommentsNode | LiteralNode | IdentifierNode | EnumBlockNode> {
|
|
267
267
|
type: 'mcdoc:enum';
|
|
268
268
|
}
|
|
269
|
-
|
|
270
|
-
export declare
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
destruct(node: EnumNode): {
|
|
269
|
+
export type EnumKind = typeof EnumNode.Kinds extends Set<infer V> ? V : never;
|
|
270
|
+
export declare namespace EnumNode {
|
|
271
|
+
const Kinds: Set<"string" | "float" | "byte" | "short" | "int" | "long" | "double">;
|
|
272
|
+
function destruct(node: EnumNode): {
|
|
274
273
|
block: EnumBlockNode;
|
|
275
274
|
docComments?: DocCommentsNode;
|
|
276
275
|
enumKind?: EnumKind;
|
|
277
276
|
identifier?: IdentifierNode;
|
|
278
277
|
keyword: LiteralNode;
|
|
279
278
|
};
|
|
280
|
-
is(node: AstNode | undefined): node is EnumNode;
|
|
281
|
-
}
|
|
279
|
+
function is(node: AstNode | undefined): node is EnumNode;
|
|
280
|
+
}
|
|
282
281
|
export interface DocCommentsNode extends AstNode {
|
|
283
282
|
type: 'mcdoc:doc_comments';
|
|
284
283
|
children: CommentNode[];
|
|
285
284
|
}
|
|
286
|
-
export declare
|
|
285
|
+
export declare namespace DocCommentsNode {
|
|
287
286
|
/**
|
|
288
287
|
* @returns The text content of this doc comment block.
|
|
289
288
|
*/
|
|
290
|
-
asText(node: DocCommentsNode | undefined): string | undefined;
|
|
291
|
-
is(node: AstNode | undefined): node is DocCommentsNode;
|
|
292
|
-
}
|
|
289
|
+
function asText(node: DocCommentsNode | undefined): string | undefined;
|
|
290
|
+
function is(node: AstNode | undefined): node is DocCommentsNode;
|
|
291
|
+
}
|
|
293
292
|
export interface EnumBlockNode extends AstNode {
|
|
294
293
|
type: 'mcdoc:enum/block';
|
|
295
294
|
children: (CommentNode | EnumFieldNode)[];
|
|
296
295
|
}
|
|
297
|
-
export declare
|
|
298
|
-
destruct(node: EnumBlockNode): {
|
|
296
|
+
export declare namespace EnumBlockNode {
|
|
297
|
+
function destruct(node: EnumBlockNode): {
|
|
299
298
|
fields: EnumFieldNode[];
|
|
300
299
|
};
|
|
301
|
-
is(node: AstNode | undefined): node is EnumBlockNode;
|
|
302
|
-
}
|
|
300
|
+
function is(node: AstNode | undefined): node is EnumBlockNode;
|
|
301
|
+
}
|
|
303
302
|
export interface EnumFieldNode extends AstNode {
|
|
304
303
|
type: 'mcdoc:enum/field';
|
|
305
304
|
children: (CommentNode | PrelimNode | IdentifierNode | EnumValueNode)[];
|
|
306
305
|
}
|
|
307
|
-
export declare
|
|
308
|
-
destruct(node: EnumFieldNode): {
|
|
306
|
+
export declare namespace EnumFieldNode {
|
|
307
|
+
function destruct(node: EnumFieldNode): {
|
|
309
308
|
attributes: AttributeNode[];
|
|
310
309
|
identifier: IdentifierNode;
|
|
311
310
|
value: EnumValueNode;
|
|
312
311
|
};
|
|
313
|
-
is(node: AstNode | undefined): node is EnumFieldNode;
|
|
314
|
-
}
|
|
315
|
-
export
|
|
316
|
-
export declare
|
|
317
|
-
is(node: AstNode | undefined): node is EnumValueNode;
|
|
318
|
-
}
|
|
319
|
-
export
|
|
320
|
-
export declare
|
|
321
|
-
is(node: AstNode | undefined): node is PrelimNode;
|
|
322
|
-
}
|
|
312
|
+
function is(node: AstNode | undefined): node is EnumFieldNode;
|
|
313
|
+
}
|
|
314
|
+
export type EnumValueNode = TypedNumberNode | StringNode;
|
|
315
|
+
export declare namespace EnumValueNode {
|
|
316
|
+
function is(node: AstNode | undefined): node is EnumValueNode;
|
|
317
|
+
}
|
|
318
|
+
export type PrelimNode = AttributeNode | DocCommentsNode;
|
|
319
|
+
export declare namespace PrelimNode {
|
|
320
|
+
function is(node: AstNode | undefined): node is PrelimNode;
|
|
321
|
+
}
|
|
323
322
|
export interface StructNode extends TypeBaseNode<DocCommentsNode | LiteralNode | IdentifierNode | StructBlockNode> {
|
|
324
323
|
type: 'mcdoc:struct';
|
|
325
324
|
}
|
|
326
|
-
export declare
|
|
327
|
-
destruct(node: StructNode): {
|
|
325
|
+
export declare namespace StructNode {
|
|
326
|
+
function destruct(node: StructNode): {
|
|
328
327
|
block: StructBlockNode;
|
|
329
328
|
docComments?: DocCommentsNode;
|
|
330
329
|
identifier?: IdentifierNode;
|
|
331
330
|
keyword: LiteralNode;
|
|
332
331
|
};
|
|
333
|
-
is(node: AstNode | undefined): node is StructNode;
|
|
334
|
-
}
|
|
332
|
+
function is(node: AstNode | undefined): node is StructNode;
|
|
333
|
+
}
|
|
335
334
|
export interface ReferenceTypeNode extends TypeBaseNode<PathNode> {
|
|
336
335
|
type: 'mcdoc:type/reference';
|
|
337
336
|
}
|
|
338
|
-
export declare
|
|
339
|
-
destruct(node: ReferenceTypeNode): {
|
|
337
|
+
export declare namespace ReferenceTypeNode {
|
|
338
|
+
function destruct(node: ReferenceTypeNode): {
|
|
340
339
|
path: PathNode;
|
|
341
340
|
};
|
|
342
|
-
is(node: AstNode | undefined): node is ReferenceTypeNode;
|
|
343
|
-
}
|
|
341
|
+
function is(node: AstNode | undefined): node is ReferenceTypeNode;
|
|
342
|
+
}
|
|
344
343
|
export interface TypeParamBlockNode extends AstNode {
|
|
345
344
|
type: 'mcdoc:type_param_block';
|
|
346
345
|
children: (CommentNode | TypeParamNode)[];
|
|
347
346
|
}
|
|
348
|
-
export declare
|
|
349
|
-
destruct(node: TypeParamBlockNode): {
|
|
347
|
+
export declare namespace TypeParamBlockNode {
|
|
348
|
+
function destruct(node: TypeParamBlockNode): {
|
|
350
349
|
params: TypeParamNode[];
|
|
351
350
|
};
|
|
352
|
-
is(node: AstNode | undefined): node is TypeParamBlockNode;
|
|
353
|
-
}
|
|
351
|
+
function is(node: AstNode | undefined): node is TypeParamBlockNode;
|
|
352
|
+
}
|
|
354
353
|
export interface TypeParamNode extends AstNode {
|
|
355
354
|
type: 'mcdoc:type_param';
|
|
356
355
|
children: (CommentNode | IdentifierNode | LiteralNode)[];
|
|
357
356
|
}
|
|
358
|
-
export declare
|
|
359
|
-
destruct(node: TypeParamNode): {
|
|
357
|
+
export declare namespace TypeParamNode {
|
|
358
|
+
function destruct(node: TypeParamNode): {
|
|
360
359
|
identifier: IdentifierNode;
|
|
361
360
|
};
|
|
362
|
-
is(node: AstNode | undefined): node is TypeParamNode;
|
|
363
|
-
}
|
|
361
|
+
function is(node: AstNode | undefined): node is TypeParamNode;
|
|
362
|
+
}
|
|
364
363
|
export interface PathNode extends AstNode {
|
|
365
364
|
type: 'mcdoc:path';
|
|
366
365
|
children: (LiteralNode | IdentifierNode)[];
|
|
367
366
|
isAbsolute?: boolean;
|
|
368
367
|
}
|
|
369
|
-
export declare
|
|
370
|
-
destruct(node: PathNode | undefined): {
|
|
368
|
+
export declare namespace PathNode {
|
|
369
|
+
function destruct(node: PathNode | undefined): {
|
|
371
370
|
children: (LiteralNode | IdentifierNode)[];
|
|
372
371
|
isAbsolute?: boolean;
|
|
373
372
|
lastIdentifier?: IdentifierNode;
|
|
374
373
|
};
|
|
375
|
-
is(node: AstNode | undefined): node is PathNode;
|
|
376
|
-
}
|
|
374
|
+
function is(node: AstNode | undefined): node is PathNode;
|
|
375
|
+
}
|
|
377
376
|
export interface StructBlockNode extends AstNode {
|
|
378
377
|
type: 'mcdoc:struct/block';
|
|
379
378
|
children: (CommentNode | StructFieldNode)[];
|
|
380
379
|
}
|
|
381
|
-
export declare
|
|
382
|
-
destruct(node: StructBlockNode): {
|
|
380
|
+
export declare namespace StructBlockNode {
|
|
381
|
+
function destruct(node: StructBlockNode): {
|
|
383
382
|
fields: StructFieldNode[];
|
|
384
383
|
};
|
|
385
|
-
is(node: AstNode | undefined): node is StructBlockNode;
|
|
386
|
-
}
|
|
387
|
-
export
|
|
388
|
-
export declare
|
|
389
|
-
is(node: AstNode | undefined): node is StructFieldNode;
|
|
390
|
-
}
|
|
384
|
+
function is(node: AstNode | undefined): node is StructBlockNode;
|
|
385
|
+
}
|
|
386
|
+
export type StructFieldNode = StructPairFieldNode | StructSpreadFieldNode;
|
|
387
|
+
export declare namespace StructFieldNode {
|
|
388
|
+
function is(node: AstNode | undefined): node is StructFieldNode;
|
|
389
|
+
}
|
|
391
390
|
export interface StructPairFieldNode extends AstNode {
|
|
392
391
|
type: 'mcdoc:struct/field/pair';
|
|
393
392
|
children: (CommentNode | PrelimNode | StructKeyNode | TypeNode)[];
|
|
394
393
|
isOptional?: boolean;
|
|
395
394
|
}
|
|
396
|
-
export declare
|
|
397
|
-
destruct(node: StructPairFieldNode): {
|
|
395
|
+
export declare namespace StructPairFieldNode {
|
|
396
|
+
function destruct(node: StructPairFieldNode): {
|
|
398
397
|
attributes: AttributeNode[];
|
|
399
398
|
key: StructKeyNode;
|
|
400
399
|
type: TypeNode;
|
|
401
400
|
isOptional?: boolean;
|
|
402
401
|
};
|
|
403
|
-
is(node: AstNode | undefined): node is StructPairFieldNode;
|
|
404
|
-
}
|
|
405
|
-
export
|
|
406
|
-
export declare
|
|
407
|
-
is(node: AstNode | undefined): node is StructKeyNode;
|
|
408
|
-
}
|
|
402
|
+
function is(node: AstNode | undefined): node is StructPairFieldNode;
|
|
403
|
+
}
|
|
404
|
+
export type StructKeyNode = StringNode | IdentifierNode | StructMapKeyNode;
|
|
405
|
+
export declare namespace StructKeyNode {
|
|
406
|
+
function is(node: AstNode | undefined): node is StructKeyNode;
|
|
407
|
+
}
|
|
409
408
|
export interface StructMapKeyNode extends AstNode {
|
|
410
409
|
type: 'mcdoc:struct/map_key';
|
|
411
410
|
children: (CommentNode | TypeNode)[];
|
|
412
411
|
}
|
|
413
|
-
export declare
|
|
414
|
-
destruct(node: StructMapKeyNode): {
|
|
412
|
+
export declare namespace StructMapKeyNode {
|
|
413
|
+
function destruct(node: StructMapKeyNode): {
|
|
415
414
|
type: TypeNode;
|
|
416
415
|
};
|
|
417
|
-
is(node: AstNode | undefined): node is StructMapKeyNode;
|
|
418
|
-
}
|
|
416
|
+
function is(node: AstNode | undefined): node is StructMapKeyNode;
|
|
417
|
+
}
|
|
419
418
|
export interface StructSpreadFieldNode extends AstNode {
|
|
420
419
|
type: 'mcdoc:struct/field/spread';
|
|
421
420
|
children: (CommentNode | AttributeNode | TypeNode)[];
|
|
422
421
|
}
|
|
423
|
-
export declare
|
|
424
|
-
destruct(node: StructSpreadFieldNode): {
|
|
422
|
+
export declare namespace StructSpreadFieldNode {
|
|
423
|
+
function destruct(node: StructSpreadFieldNode): {
|
|
425
424
|
attributes: AttributeNode[];
|
|
426
425
|
type: TypeNode;
|
|
427
426
|
};
|
|
428
|
-
is(node: AstNode | undefined): node is StructSpreadFieldNode;
|
|
429
|
-
}
|
|
427
|
+
function is(node: AstNode | undefined): node is StructSpreadFieldNode;
|
|
428
|
+
}
|
|
430
429
|
export interface DispatcherTypeNode extends TypeBaseNode<ResourceLocationNode | IndexBodyNode> {
|
|
431
430
|
type: 'mcdoc:type/dispatcher';
|
|
432
431
|
}
|
|
433
|
-
export declare
|
|
434
|
-
destruct(node: DispatcherTypeNode): {
|
|
432
|
+
export declare namespace DispatcherTypeNode {
|
|
433
|
+
function destruct(node: DispatcherTypeNode): {
|
|
435
434
|
location: ResourceLocationNode;
|
|
436
435
|
index: IndexBodyNode;
|
|
437
436
|
};
|
|
438
|
-
is(node: AstNode | undefined): node is DispatcherTypeNode;
|
|
439
|
-
}
|
|
437
|
+
function is(node: AstNode | undefined): node is DispatcherTypeNode;
|
|
438
|
+
}
|
|
440
439
|
export interface UnionTypeNode extends TypeBaseNode<TypeNode> {
|
|
441
440
|
type: 'mcdoc:type/union';
|
|
442
441
|
}
|
|
443
|
-
export declare
|
|
444
|
-
destruct(node: UnionTypeNode): {
|
|
442
|
+
export declare namespace UnionTypeNode {
|
|
443
|
+
function destruct(node: UnionTypeNode): {
|
|
445
444
|
members: TypeNode[];
|
|
446
445
|
};
|
|
447
|
-
is(node: AstNode | undefined): node is UnionTypeNode;
|
|
448
|
-
}
|
|
446
|
+
function is(node: AstNode | undefined): node is UnionTypeNode;
|
|
447
|
+
}
|
|
449
448
|
export interface InjectionNode extends AstNode {
|
|
450
449
|
type: 'mcdoc:injection';
|
|
451
450
|
children: (CommentNode | LiteralNode | InjectionContentNode)[];
|
|
452
451
|
}
|
|
453
|
-
export declare
|
|
454
|
-
destruct(node: InjectionNode): {
|
|
452
|
+
export declare namespace InjectionNode {
|
|
453
|
+
function destruct(node: InjectionNode): {
|
|
455
454
|
injection: InjectionContentNode;
|
|
456
455
|
};
|
|
457
|
-
is(node: AstNode | undefined): node is InjectionNode;
|
|
458
|
-
}
|
|
459
|
-
export
|
|
460
|
-
export declare
|
|
461
|
-
is(node: AstNode | undefined): node is InjectionContentNode;
|
|
462
|
-
}
|
|
456
|
+
function is(node: AstNode | undefined): node is InjectionNode;
|
|
457
|
+
}
|
|
458
|
+
export type InjectionContentNode = EnumInjectionNode | StructInjectionNode;
|
|
459
|
+
export declare namespace InjectionContentNode {
|
|
460
|
+
function is(node: AstNode | undefined): node is InjectionContentNode;
|
|
461
|
+
}
|
|
463
462
|
export interface EnumInjectionNode extends AstNode {
|
|
464
463
|
type: 'mcdoc:injection/enum';
|
|
465
464
|
children: (CommentNode | LiteralNode | PathNode | EnumBlockNode)[];
|
|
466
465
|
}
|
|
467
|
-
export declare
|
|
468
|
-
is(node: AstNode | undefined): node is EnumInjectionNode;
|
|
469
|
-
}
|
|
466
|
+
export declare namespace EnumInjectionNode {
|
|
467
|
+
function is(node: AstNode | undefined): node is EnumInjectionNode;
|
|
468
|
+
}
|
|
470
469
|
export interface StructInjectionNode extends AstNode {
|
|
471
470
|
type: 'mcdoc:injection/struct';
|
|
472
471
|
children: (CommentNode | LiteralNode | PathNode | StructBlockNode)[];
|
|
473
472
|
}
|
|
474
|
-
export declare
|
|
475
|
-
is(node: AstNode | undefined): node is StructInjectionNode;
|
|
476
|
-
}
|
|
473
|
+
export declare namespace StructInjectionNode {
|
|
474
|
+
function is(node: AstNode | undefined): node is StructInjectionNode;
|
|
475
|
+
}
|
|
477
476
|
export interface TypeAliasNode extends AstNode {
|
|
478
477
|
type: 'mcdoc:type_alias';
|
|
479
478
|
children: (CommentNode | PrelimNode | LiteralNode | IdentifierNode | TypeParamBlockNode | TypeNode)[];
|
|
480
479
|
}
|
|
481
|
-
export declare
|
|
482
|
-
destruct(node: TypeAliasNode): {
|
|
480
|
+
export declare namespace TypeAliasNode {
|
|
481
|
+
function destruct(node: TypeAliasNode): {
|
|
483
482
|
attributes: AttributeNode[];
|
|
484
483
|
docComments?: DocCommentsNode;
|
|
485
484
|
identifier: IdentifierNode;
|
|
@@ -487,18 +486,17 @@ export declare const TypeAliasNode: Readonly<{
|
|
|
487
486
|
typeParams?: TypeParamBlockNode;
|
|
488
487
|
rhs?: TypeNode;
|
|
489
488
|
};
|
|
490
|
-
is(node: AstNode | undefined): node is TypeAliasNode;
|
|
491
|
-
}
|
|
489
|
+
function is(node: AstNode | undefined): node is TypeAliasNode;
|
|
490
|
+
}
|
|
492
491
|
export interface UseStatementNode extends AstNode {
|
|
493
492
|
type: 'mcdoc:use_statement';
|
|
494
493
|
children: (CommentNode | LiteralNode | PathNode | IdentifierNode)[];
|
|
495
494
|
}
|
|
496
|
-
export declare
|
|
497
|
-
destruct(node: UseStatementNode): {
|
|
495
|
+
export declare namespace UseStatementNode {
|
|
496
|
+
function destruct(node: UseStatementNode): {
|
|
498
497
|
binding?: IdentifierNode;
|
|
499
498
|
path?: PathNode;
|
|
500
499
|
};
|
|
501
|
-
is(node: AstNode | undefined): node is UseStatementNode;
|
|
502
|
-
}
|
|
503
|
-
export {};
|
|
500
|
+
function is(node: AstNode | undefined): node is UseStatementNode;
|
|
501
|
+
}
|
|
504
502
|
//# sourceMappingURL=index.d.ts.map
|