umple-lsp-server 0.2.0 → 0.2.2
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/completions.scm +21 -6
- package/definitions.scm +4 -0
- package/out/completionAnalysis.d.ts +44 -0
- package/out/completionAnalysis.js +391 -0
- package/out/completionAnalysis.js.map +1 -0
- package/out/completionBuilder.d.ts +28 -0
- package/out/completionBuilder.js +251 -0
- package/out/completionBuilder.js.map +1 -0
- package/out/documentSymbolBuilder.d.ts +13 -0
- package/out/documentSymbolBuilder.js +95 -0
- package/out/documentSymbolBuilder.js.map +1 -0
- package/out/formatter.d.ts +31 -0
- package/out/formatter.js +96 -0
- package/out/formatter.js.map +1 -0
- package/out/hoverBuilder.d.ts +21 -0
- package/out/hoverBuilder.js +308 -0
- package/out/hoverBuilder.js.map +1 -0
- package/out/importGraph.d.ts +28 -0
- package/out/importGraph.js +91 -0
- package/out/importGraph.js.map +1 -0
- package/out/referenceSearch.d.ts +22 -0
- package/out/referenceSearch.js +271 -0
- package/out/referenceSearch.js.map +1 -0
- package/out/resolver.d.ts +21 -0
- package/out/resolver.js +174 -0
- package/out/resolver.js.map +1 -0
- package/out/server.js +350 -328
- package/out/server.js.map +1 -1
- package/out/symbolIndex.d.ts +86 -94
- package/out/symbolIndex.js +357 -399
- package/out/symbolIndex.js.map +1 -1
- package/out/symbolTypes.d.ts +34 -0
- package/out/symbolTypes.js +9 -0
- package/out/symbolTypes.js.map +1 -0
- package/out/tokenAnalysis.d.ts +24 -0
- package/out/tokenAnalysis.js +195 -0
- package/out/tokenAnalysis.js.map +1 -0
- package/out/tokenTypes.d.ts +46 -0
- package/out/tokenTypes.js +28 -0
- package/out/tokenTypes.js.map +1 -0
- package/out/treeUtils.d.ts +32 -0
- package/out/treeUtils.js +89 -0
- package/out/treeUtils.js.map +1 -0
- package/package.json +4 -2
- package/references.scm +78 -10
- package/tree-sitter-umple.wasm +0 -0
package/references.scm
CHANGED
|
@@ -18,17 +18,35 @@
|
|
|
18
18
|
(interface_definition name: (identifier) @reference.interface)
|
|
19
19
|
(trait_definition name: (identifier) @reference.trait)
|
|
20
20
|
(enum_definition name: (identifier) @reference.enum)
|
|
21
|
+
|
|
22
|
+
; =====================
|
|
23
|
+
; TRAIT PARAMETER REFERENCES
|
|
24
|
+
; =====================
|
|
25
|
+
; Constraint interfaces in <TP isA I1 & I2> — must be interfaces
|
|
26
|
+
(trait_parameter_constraint (qualified_name (identifier) @reference.interface))
|
|
27
|
+
; Default types in <TP = DefaultClass> — can be any named type
|
|
28
|
+
(trait_parameter default: (qualified_name (identifier) @reference.class_interface_trait))
|
|
29
|
+
; Binding values in isA T<TP = C1> — can be any named type
|
|
30
|
+
(trait_binding value: (qualified_name (identifier) @reference.class_interface_trait))
|
|
31
|
+
; Trait SM binding: isA T<sm1 as sm.s2>
|
|
32
|
+
; param references trait-side statemachine; value path references class-side SM/state
|
|
33
|
+
(trait_sm_binding param: (identifier) @reference.statemachine)
|
|
34
|
+
(trait_sm_binding value: (qualified_name (identifier) @reference.statemachine_state))
|
|
35
|
+
(enum_value name: (identifier) @reference.enum_value)
|
|
36
|
+
(external_definition name: (identifier) @reference.class)
|
|
21
37
|
(mixset_definition name: (identifier) @reference.mixset)
|
|
22
38
|
(requirement_definition name: (identifier) @reference.requirement)
|
|
23
39
|
(association_class_definition name: (identifier) @reference.class)
|
|
24
40
|
(statemachine_definition name: (identifier) @reference.statemachine)
|
|
25
41
|
(state_machine name: (identifier) @reference.statemachine)
|
|
26
|
-
(referenced_statemachine name: (identifier) @reference.statemachine)
|
|
27
42
|
(referenced_statemachine definition: (identifier) @reference.statemachine)
|
|
28
43
|
(state name: (identifier) @reference.state)
|
|
29
44
|
(association_definition name: (identifier) @reference.association)
|
|
30
45
|
(attribute_declaration name: (identifier) @reference.attribute)
|
|
46
|
+
(const_declaration name: (identifier) @reference.const)
|
|
31
47
|
(method_declaration name: (identifier) @reference.method)
|
|
48
|
+
(method_signature name: (identifier) @reference.method)
|
|
49
|
+
(trait_method_signature name: (identifier) @reference.method)
|
|
32
50
|
|
|
33
51
|
; =====================
|
|
34
52
|
; TYPE REFERENCES
|
|
@@ -37,6 +55,21 @@
|
|
|
37
55
|
|
|
38
56
|
(type_name (qualified_name (identifier) @reference.class_interface_trait_enum))
|
|
39
57
|
|
|
58
|
+
; =====================
|
|
59
|
+
; ATTRIBUTE/CONST DEFAULT VALUE REFERENCES
|
|
60
|
+
; =====================
|
|
61
|
+
; Default values can reference attributes, consts, or enum values
|
|
62
|
+
; (qualified_name directly under attribute/const_declaration is the value position,
|
|
63
|
+
; not the type (which is inside type_name) or the name (which is a field identifier))
|
|
64
|
+
|
|
65
|
+
; Non-final segment (qualifier): "Status" in "Status.ACTIVE" → enum reference
|
|
66
|
+
(attribute_declaration (qualified_name (identifier) @reference.enum . (identifier)))
|
|
67
|
+
(const_declaration (qualified_name (identifier) @reference.enum . (identifier)))
|
|
68
|
+
|
|
69
|
+
; Final or only segment: "ACTIVE" in "Status.ACTIVE", or "MAX" in "x = MAX" → value reference
|
|
70
|
+
(attribute_declaration (qualified_name (identifier) @reference.attribute_const_enum_value .))
|
|
71
|
+
(const_declaration (qualified_name (identifier) @reference.attribute_const_enum_value .))
|
|
72
|
+
|
|
40
73
|
; =====================
|
|
41
74
|
; ISA (INHERITANCE)
|
|
42
75
|
; =====================
|
|
@@ -59,21 +92,32 @@
|
|
|
59
92
|
|
|
60
93
|
(req_implementation (identifier) @reference.requirement)
|
|
61
94
|
|
|
95
|
+
; =====================
|
|
96
|
+
; TOP-LEVEL CODE INJECTION
|
|
97
|
+
; =====================
|
|
98
|
+
; before/after/around { ClassName } — target must be a class
|
|
99
|
+
(toplevel_code_injection target: (identifier) @reference.class)
|
|
100
|
+
; before/after/around { ClassName } operation() — method reference
|
|
101
|
+
(toplevel_code_injection operation: (identifier) @reference.method)
|
|
102
|
+
|
|
103
|
+
; before/after method hook — method name reference
|
|
104
|
+
(before_after (identifier) @reference.method)
|
|
105
|
+
|
|
62
106
|
; =====================
|
|
63
107
|
; ASSOCIATION TYPE REFERENCES
|
|
64
108
|
; =====================
|
|
65
|
-
; Types in associations can
|
|
109
|
+
; Types in associations — can be classes, interfaces, or traits
|
|
66
110
|
|
|
67
|
-
(association_inline right_type: (identifier) @reference.
|
|
68
|
-
(association_member left_type: (identifier) @reference.
|
|
69
|
-
(association_member right_type: (identifier) @reference.
|
|
70
|
-
(single_association_end type: (identifier) @reference.
|
|
111
|
+
(association_inline right_type: (identifier) @reference.class_interface_trait)
|
|
112
|
+
(association_member left_type: (identifier) @reference.class_interface_trait)
|
|
113
|
+
(association_member right_type: (identifier) @reference.class_interface_trait)
|
|
114
|
+
(single_association_end type: (identifier) @reference.class_interface_trait)
|
|
71
115
|
|
|
72
116
|
; =====================
|
|
73
117
|
; STATE REFERENCES
|
|
74
118
|
; =====================
|
|
75
119
|
|
|
76
|
-
(transition target: (identifier) @reference.state)
|
|
120
|
+
(transition target: (qualified_name (identifier) @reference.state))
|
|
77
121
|
(standalone_transition from_state: (identifier) @reference.state)
|
|
78
122
|
(standalone_transition to_state: (identifier) @reference.state)
|
|
79
123
|
|
|
@@ -85,11 +129,25 @@
|
|
|
85
129
|
(key_definition (identifier) @reference.attribute)
|
|
86
130
|
|
|
87
131
|
; =====================
|
|
88
|
-
; CONSTRAINT IDENTIFIERS
|
|
132
|
+
; CONSTRAINT & GUARD IDENTIFIERS
|
|
89
133
|
; =====================
|
|
90
|
-
; Identifiers inside constraints reference attributes
|
|
134
|
+
; Identifiers inside constraints/guards reference attributes or constants
|
|
91
135
|
|
|
92
|
-
(constraint (identifier) @reference.
|
|
136
|
+
(constraint (identifier) @reference.attribute_const_enum_value)
|
|
137
|
+
(guard (identifier) @reference.attribute_const_enum_value_method)
|
|
138
|
+
|
|
139
|
+
; =====================
|
|
140
|
+
; TRACE ENTITY REFERENCES
|
|
141
|
+
; =====================
|
|
142
|
+
; "trace count;" — identifier after "trace" keyword references attribute or method
|
|
143
|
+
; Uses anonymous node anchor to skip tracecase/activate/deactivate identifiers
|
|
144
|
+
(trace_statement "trace" . (identifier) @reference.attribute_method)
|
|
145
|
+
; "record x" in trace postfix — additional entity reference
|
|
146
|
+
(trace_postfix "record" . (identifier) @reference.attribute_method)
|
|
147
|
+
; tracecase definition name and activate/deactivate references
|
|
148
|
+
(trace_statement name: (identifier) @reference.tracecase)
|
|
149
|
+
(trace_statement "activate" . (identifier) @reference.tracecase)
|
|
150
|
+
(trace_statement "deactivate" . (identifier) @reference.tracecase)
|
|
93
151
|
|
|
94
152
|
; =====================
|
|
95
153
|
; EMIT METHOD & TEMPLATE
|
|
@@ -97,3 +155,13 @@
|
|
|
97
155
|
(emit_method name: (identifier) @reference.method)
|
|
98
156
|
(template_attribute name: (identifier) @reference.template)
|
|
99
157
|
(template_list template_name: (identifier) @reference.template)
|
|
158
|
+
|
|
159
|
+
; =====================
|
|
160
|
+
; FILTER VALUE CLASS REFERENCES
|
|
161
|
+
; =====================
|
|
162
|
+
; include ClassName; — plain names (no wildcards) reference classes.
|
|
163
|
+
; Wildcard/exclusion patterns (Conn*, ~Foo, ?) are skipped via the
|
|
164
|
+
; match predicate: only tokens that look like plain identifiers qualify.
|
|
165
|
+
(filter_value
|
|
166
|
+
(filter_pattern) @reference.class
|
|
167
|
+
(#match? @reference.class "^[A-Za-z_][A-Za-z0-9_]*$"))
|
package/tree-sitter-umple.wasm
CHANGED
|
Binary file
|