IncludeCPP 3.8.0__py3-none-any.whl → 3.8.9__py3-none-any.whl
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.
- includecpp/__init__.py +1 -1
- includecpp/core/cssl/CSSL_DOCUMENTATION.md +411 -1
- includecpp/core/cssl/cssl_builtins.py +133 -0
- includecpp/core/cssl/cssl_parser.py +480 -8
- includecpp/core/cssl/cssl_runtime.py +616 -16
- includecpp/core/cssl/cssl_types.py +58 -9
- includecpp/vscode/cssl/package.json +1 -1
- includecpp/vscode/cssl/syntaxes/cssl.tmLanguage.json +250 -3
- {includecpp-3.8.0.dist-info → includecpp-3.8.9.dist-info}/METADATA +1 -1
- {includecpp-3.8.0.dist-info → includecpp-3.8.9.dist-info}/RECORD +14 -14
- {includecpp-3.8.0.dist-info → includecpp-3.8.9.dist-info}/WHEEL +0 -0
- {includecpp-3.8.0.dist-info → includecpp-3.8.9.dist-info}/entry_points.txt +0 -0
- {includecpp-3.8.0.dist-info → includecpp-3.8.9.dist-info}/licenses/LICENSE +0 -0
- {includecpp-3.8.0.dist-info → includecpp-3.8.9.dist-info}/top_level.txt +0 -0
|
@@ -1448,17 +1448,62 @@ class CSSLClass:
|
|
|
1448
1448
|
|
|
1449
1449
|
Stores class name, member variables, methods, and constructor.
|
|
1450
1450
|
Used by the runtime to instantiate CSSLInstance objects.
|
|
1451
|
+
Supports inheritance via the 'parent' attribute.
|
|
1451
1452
|
"""
|
|
1452
1453
|
|
|
1453
1454
|
def __init__(self, name: str, members: Dict[str, Any] = None,
|
|
1454
|
-
methods: Dict[str, Any] = None, constructor: Any = None
|
|
1455
|
+
methods: Dict[str, Any] = None, constructor: Any = None,
|
|
1456
|
+
parent: Any = None):
|
|
1455
1457
|
self.name = name
|
|
1456
1458
|
self.members = members or {} # Default member values/types
|
|
1457
1459
|
self.methods = methods or {} # Method AST nodes
|
|
1458
1460
|
self.constructor = constructor # Constructor AST node
|
|
1461
|
+
self.parent = parent # Parent class (CSSLClass or CSSLizedPythonObject)
|
|
1462
|
+
|
|
1463
|
+
def get_all_members(self) -> Dict[str, Any]:
|
|
1464
|
+
"""Get all members including inherited ones."""
|
|
1465
|
+
all_members = {}
|
|
1466
|
+
# First add parent members (can be overridden)
|
|
1467
|
+
if self.parent:
|
|
1468
|
+
if hasattr(self.parent, 'get_all_members'):
|
|
1469
|
+
all_members.update(self.parent.get_all_members())
|
|
1470
|
+
elif hasattr(self.parent, 'members'):
|
|
1471
|
+
all_members.update(self.parent.members)
|
|
1472
|
+
elif hasattr(self.parent, '_python_obj'):
|
|
1473
|
+
# CSSLizedPythonObject - get attributes from Python object
|
|
1474
|
+
py_obj = self.parent._python_obj
|
|
1475
|
+
if hasattr(py_obj, '__dict__'):
|
|
1476
|
+
for key, val in py_obj.__dict__.items():
|
|
1477
|
+
if not key.startswith('_'):
|
|
1478
|
+
all_members[key] = {'type': 'dynamic', 'default': val}
|
|
1479
|
+
# Then add own members (override parent)
|
|
1480
|
+
all_members.update(self.members)
|
|
1481
|
+
return all_members
|
|
1482
|
+
|
|
1483
|
+
def get_all_methods(self) -> Dict[str, Any]:
|
|
1484
|
+
"""Get all methods including inherited ones."""
|
|
1485
|
+
all_methods = {}
|
|
1486
|
+
# First add parent methods (can be overridden)
|
|
1487
|
+
if self.parent:
|
|
1488
|
+
if hasattr(self.parent, 'get_all_methods'):
|
|
1489
|
+
all_methods.update(self.parent.get_all_methods())
|
|
1490
|
+
elif hasattr(self.parent, 'methods'):
|
|
1491
|
+
all_methods.update(self.parent.methods)
|
|
1492
|
+
elif hasattr(self.parent, '_python_obj'):
|
|
1493
|
+
# CSSLizedPythonObject - get methods from Python object
|
|
1494
|
+
py_obj = self.parent._python_obj
|
|
1495
|
+
for name in dir(py_obj):
|
|
1496
|
+
if not name.startswith('_'):
|
|
1497
|
+
attr = getattr(py_obj, name, None)
|
|
1498
|
+
if callable(attr):
|
|
1499
|
+
all_methods[name] = ('python_method', attr)
|
|
1500
|
+
# Then add own methods (override parent)
|
|
1501
|
+
all_methods.update(self.methods)
|
|
1502
|
+
return all_methods
|
|
1459
1503
|
|
|
1460
1504
|
def __repr__(self):
|
|
1461
|
-
|
|
1505
|
+
parent_info = f" extends {self.parent.name}" if self.parent and hasattr(self.parent, 'name') else ""
|
|
1506
|
+
return f"<CSSLClass '{self.name}'{parent_info} with {len(self.methods)} methods>"
|
|
1462
1507
|
|
|
1463
1508
|
|
|
1464
1509
|
class CSSLInstance:
|
|
@@ -1471,8 +1516,9 @@ class CSSLInstance:
|
|
|
1471
1516
|
def __init__(self, class_def: CSSLClass):
|
|
1472
1517
|
self._class = class_def
|
|
1473
1518
|
self._members: Dict[str, Any] = {}
|
|
1474
|
-
# Initialize members with defaults from class definition
|
|
1475
|
-
|
|
1519
|
+
# Initialize members with defaults from class definition (including inherited)
|
|
1520
|
+
all_members = class_def.get_all_members() if hasattr(class_def, 'get_all_members') else class_def.members
|
|
1521
|
+
for name, default in all_members.items():
|
|
1476
1522
|
if isinstance(default, dict):
|
|
1477
1523
|
# Type declaration with optional default
|
|
1478
1524
|
member_type = default.get('type')
|
|
@@ -1541,14 +1587,17 @@ class CSSLInstance:
|
|
|
1541
1587
|
return name in self._members
|
|
1542
1588
|
|
|
1543
1589
|
def get_method(self, name: str) -> Any:
|
|
1544
|
-
"""Get method AST node by name"""
|
|
1545
|
-
|
|
1546
|
-
|
|
1590
|
+
"""Get method AST node by name (including inherited methods)"""
|
|
1591
|
+
# Use get_all_methods to include inherited methods
|
|
1592
|
+
all_methods = self._class.get_all_methods() if hasattr(self._class, 'get_all_methods') else self._class.methods
|
|
1593
|
+
if name in all_methods:
|
|
1594
|
+
return all_methods[name]
|
|
1547
1595
|
raise AttributeError(f"'{self._class.name}' has no method '{name}'")
|
|
1548
1596
|
|
|
1549
1597
|
def has_method(self, name: str) -> bool:
|
|
1550
|
-
"""Check if method exists"""
|
|
1551
|
-
|
|
1598
|
+
"""Check if method exists (including inherited methods)"""
|
|
1599
|
+
all_methods = self._class.get_all_methods() if hasattr(self._class, 'get_all_methods') else self._class.methods
|
|
1600
|
+
return name in all_methods
|
|
1552
1601
|
|
|
1553
1602
|
def __getattr__(self, name: str) -> Any:
|
|
1554
1603
|
"""Allow direct attribute access for members"""
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "cssl",
|
|
3
3
|
"displayName": "CSSL Language",
|
|
4
4
|
"description": "Professional syntax highlighting, snippets, and language support for CSSL scripts (.cssl, .cssl-pl, .cssl-mod)",
|
|
5
|
-
"version": "1.
|
|
5
|
+
"version": "1.6.0",
|
|
6
6
|
"publisher": "IncludeCPP",
|
|
7
7
|
"icon": "images/cssl.png",
|
|
8
8
|
"engines": {
|
|
@@ -7,7 +7,12 @@
|
|
|
7
7
|
{ "include": "#comments" },
|
|
8
8
|
{ "include": "#strings" },
|
|
9
9
|
{ "include": "#numbers" },
|
|
10
|
+
{ "include": "#append-operator" },
|
|
11
|
+
{ "include": "#append-reference" },
|
|
10
12
|
{ "include": "#class-definition" },
|
|
13
|
+
{ "include": "#function-definitions" },
|
|
14
|
+
{ "include": "#constructor-definition" },
|
|
15
|
+
{ "include": "#super-call" },
|
|
11
16
|
{ "include": "#sql-types" },
|
|
12
17
|
{ "include": "#keywords" },
|
|
13
18
|
{ "include": "#types" },
|
|
@@ -28,9 +33,86 @@
|
|
|
28
33
|
{ "include": "#builtins" },
|
|
29
34
|
{ "include": "#operators" },
|
|
30
35
|
{ "include": "#constants" },
|
|
36
|
+
{ "include": "#non-null-declarations" },
|
|
31
37
|
{ "include": "#variables" }
|
|
32
38
|
],
|
|
33
39
|
"repository": {
|
|
40
|
+
"append-operator": {
|
|
41
|
+
"patterns": [
|
|
42
|
+
{
|
|
43
|
+
"comment": "++ append operator for constructor/function extension - orange",
|
|
44
|
+
"name": "constant.character.escape.infuse.cssl",
|
|
45
|
+
"match": "\\+\\+(?=\\s*\\{)"
|
|
46
|
+
}
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
"append-reference": {
|
|
50
|
+
"patterns": [
|
|
51
|
+
{
|
|
52
|
+
"comment": "&ClassName::member or &$var::member - all yellow for append reference",
|
|
53
|
+
"name": "entity.name.tag.super.cssl",
|
|
54
|
+
"match": "&(\\$?[a-zA-Z_][a-zA-Z0-9_]*)(::)([a-zA-Z_][a-zA-Z0-9_]*)"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"comment": "&FunctionName - yellow for direct function reference",
|
|
58
|
+
"name": "entity.name.tag.super.cssl",
|
|
59
|
+
"match": "&([a-zA-Z_][a-zA-Z0-9_]*)(?=\\s*\\+\\+)"
|
|
60
|
+
}
|
|
61
|
+
]
|
|
62
|
+
},
|
|
63
|
+
"non-null-declarations": {
|
|
64
|
+
"patterns": [
|
|
65
|
+
{
|
|
66
|
+
"comment": "Non-null class: class *ClassName - turquoise",
|
|
67
|
+
"name": "meta.class.non-null.cssl",
|
|
68
|
+
"match": "\\b(class)\\s+(\\*)([a-zA-Z_][a-zA-Z0-9_]*)",
|
|
69
|
+
"captures": {
|
|
70
|
+
"1": { "name": "storage.type.class.cssl" },
|
|
71
|
+
"2": { "name": "keyword.operator.non-null.cssl" },
|
|
72
|
+
"3": { "name": "support.class.non-null.cssl" }
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"comment": "Non-null function: define *FuncName - light pink",
|
|
77
|
+
"name": "meta.function.non-null.cssl",
|
|
78
|
+
"match": "\\b(define)\\s+(\\*)([a-zA-Z_][a-zA-Z0-9_]*)",
|
|
79
|
+
"captures": {
|
|
80
|
+
"1": { "name": "storage.type.function.cssl" },
|
|
81
|
+
"2": { "name": "keyword.operator.non-null.cssl" },
|
|
82
|
+
"3": { "name": "entity.name.function.non-null.cssl" }
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"comment": "Non-null typed variable: type<T> *varName - light pink",
|
|
87
|
+
"name": "meta.declaration.non-null.cssl",
|
|
88
|
+
"match": "\\b(int|string|float|bool|dynamic|vector|stack|array|list|dict|json|datastruct|iterator)\\s*(<[^>]+>)?\\s+(\\*)([a-zA-Z_][a-zA-Z0-9_]*)",
|
|
89
|
+
"captures": {
|
|
90
|
+
"1": { "name": "storage.type.cssl" },
|
|
91
|
+
"2": { "name": "storage.type.generic.cssl" },
|
|
92
|
+
"3": { "name": "keyword.operator.non-null.cssl" },
|
|
93
|
+
"4": { "name": "variable.other.non-null.cssl" }
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"comment": "Non-null open parameter: open *Params - light pink",
|
|
98
|
+
"name": "meta.parameter.non-null.cssl",
|
|
99
|
+
"match": "\\b(open)\\s+(\\*)([a-zA-Z_][a-zA-Z0-9_]*)",
|
|
100
|
+
"captures": {
|
|
101
|
+
"1": { "name": "storage.modifier.open.cssl" },
|
|
102
|
+
"2": { "name": "keyword.operator.non-null.cssl" },
|
|
103
|
+
"3": { "name": "variable.parameter.non-null.cssl" }
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"comment": "Return type -> * (non-null return)",
|
|
108
|
+
"name": "meta.return-type.non-null.cssl",
|
|
109
|
+
"match": "->\\s*\\*",
|
|
110
|
+
"captures": {
|
|
111
|
+
"0": { "name": "keyword.operator.non-null.return.cssl" }
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
]
|
|
115
|
+
},
|
|
34
116
|
"super-functions": {
|
|
35
117
|
"patterns": [
|
|
36
118
|
{
|
|
@@ -110,12 +192,74 @@
|
|
|
110
192
|
},
|
|
111
193
|
"class-definition": {
|
|
112
194
|
"patterns": [
|
|
195
|
+
{
|
|
196
|
+
"comment": "Class with extends AND overwrites: class X : extends Y : overwrites Z { }",
|
|
197
|
+
"name": "meta.class.extends-overwrites.cssl",
|
|
198
|
+
"begin": "\\b(class)\\s+(\\*?)([a-zA-Z_][a-zA-Z0-9_]*)\\s*:\\s*(extends)\\s+(\\$?[a-zA-Z_][a-zA-Z0-9_]*)\\s*:\\s*(overwrites)\\s+(\\$?[a-zA-Z_][a-zA-Z0-9_]*)(\\(\\))?\\s*\\{",
|
|
199
|
+
"beginCaptures": {
|
|
200
|
+
"1": { "name": "storage.type.class.cssl" },
|
|
201
|
+
"2": { "name": "keyword.operator.non-null.cssl" },
|
|
202
|
+
"3": { "name": "support.class.cssl" },
|
|
203
|
+
"4": { "name": "storage.modifier.extends.cssl" },
|
|
204
|
+
"5": { "name": "support.class.inherited.cssl" },
|
|
205
|
+
"6": { "name": "storage.modifier.overwrites.cssl" },
|
|
206
|
+
"7": { "name": "support.class.overwritten.cssl" }
|
|
207
|
+
},
|
|
208
|
+
"end": "\\}",
|
|
209
|
+
"patterns": [
|
|
210
|
+
{ "include": "#comments" },
|
|
211
|
+
{ "include": "#constructor-definition" },
|
|
212
|
+
{ "include": "#class-method-definition" },
|
|
213
|
+
{ "include": "#class-member-declaration" },
|
|
214
|
+
{ "include": "#types" },
|
|
215
|
+
{ "include": "#this-access" },
|
|
216
|
+
{ "include": "#captured-references" },
|
|
217
|
+
{ "include": "#global-references" },
|
|
218
|
+
{ "include": "#shared-references" },
|
|
219
|
+
{ "include": "#strings" },
|
|
220
|
+
{ "include": "#numbers" },
|
|
221
|
+
{ "include": "#keywords" },
|
|
222
|
+
{ "include": "#function-calls" },
|
|
223
|
+
{ "include": "#builtins" },
|
|
224
|
+
{ "include": "#operators" }
|
|
225
|
+
]
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
"comment": "Class with inheritance: class Child : extends Parent { }",
|
|
229
|
+
"name": "meta.class.extends.cssl",
|
|
230
|
+
"begin": "\\b(class)\\s+(\\*?)([a-zA-Z_][a-zA-Z0-9_]*)\\s*:\\s*(extends)\\s+(\\$?[a-zA-Z_][a-zA-Z0-9_]*)\\s*\\{",
|
|
231
|
+
"beginCaptures": {
|
|
232
|
+
"1": { "name": "storage.type.class.cssl" },
|
|
233
|
+
"2": { "name": "keyword.operator.non-null.cssl" },
|
|
234
|
+
"3": { "name": "support.class.cssl" },
|
|
235
|
+
"4": { "name": "storage.modifier.extends.cssl" },
|
|
236
|
+
"5": { "name": "support.class.inherited.cssl" }
|
|
237
|
+
},
|
|
238
|
+
"end": "\\}",
|
|
239
|
+
"patterns": [
|
|
240
|
+
{ "include": "#comments" },
|
|
241
|
+
{ "include": "#constructor-definition" },
|
|
242
|
+
{ "include": "#class-method-definition" },
|
|
243
|
+
{ "include": "#class-member-declaration" },
|
|
244
|
+
{ "include": "#types" },
|
|
245
|
+
{ "include": "#this-access" },
|
|
246
|
+
{ "include": "#captured-references" },
|
|
247
|
+
{ "include": "#global-references" },
|
|
248
|
+
{ "include": "#shared-references" },
|
|
249
|
+
{ "include": "#strings" },
|
|
250
|
+
{ "include": "#numbers" },
|
|
251
|
+
{ "include": "#keywords" },
|
|
252
|
+
{ "include": "#function-calls" },
|
|
253
|
+
{ "include": "#builtins" },
|
|
254
|
+
{ "include": "#operators" }
|
|
255
|
+
]
|
|
256
|
+
},
|
|
113
257
|
{
|
|
114
258
|
"name": "meta.class.cssl",
|
|
115
259
|
"begin": "\\b(class)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\{",
|
|
116
260
|
"beginCaptures": {
|
|
117
261
|
"1": { "name": "storage.type.class.cssl" },
|
|
118
|
-
"2": { "name": "
|
|
262
|
+
"2": { "name": "support.class.cssl" }
|
|
119
263
|
},
|
|
120
264
|
"end": "\\}",
|
|
121
265
|
"patterns": [
|
|
@@ -140,6 +284,28 @@
|
|
|
140
284
|
},
|
|
141
285
|
"constructor-definition": {
|
|
142
286
|
"patterns": [
|
|
287
|
+
{
|
|
288
|
+
"comment": "New-style constructor with constr keyword and extends: constr Name() :: extends Parent::Name { }",
|
|
289
|
+
"name": "meta.constructor.constr.extends.cssl",
|
|
290
|
+
"match": "\\b(constr)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\([^)]*\\)\\s*(::)?\\s*(extends)\\s+(\\$?[a-zA-Z_][a-zA-Z0-9_]*)(::[a-zA-Z_][a-zA-Z0-9_]*)?",
|
|
291
|
+
"captures": {
|
|
292
|
+
"1": { "name": "storage.type.constructor.cssl" },
|
|
293
|
+
"2": { "name": "entity.name.function.constructor.cssl" },
|
|
294
|
+
"3": { "name": "punctuation.accessor.double-colon.cssl" },
|
|
295
|
+
"4": { "name": "storage.modifier.extends.cssl" },
|
|
296
|
+
"5": { "name": "entity.other.inherited-class.cssl" },
|
|
297
|
+
"6": { "name": "entity.name.function.inherited.cssl" }
|
|
298
|
+
}
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
"comment": "New-style constructor with constr keyword: constr ConstructorName() { }",
|
|
302
|
+
"name": "meta.constructor.constr.cssl",
|
|
303
|
+
"match": "\\b(constr)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\(",
|
|
304
|
+
"captures": {
|
|
305
|
+
"1": { "name": "storage.type.constructor.cssl" },
|
|
306
|
+
"2": { "name": "entity.name.function.constructor.cssl" }
|
|
307
|
+
}
|
|
308
|
+
},
|
|
143
309
|
{
|
|
144
310
|
"comment": "Constructor: ClassName { ... } or void ClassName(...)",
|
|
145
311
|
"name": "meta.constructor.cssl",
|
|
@@ -151,6 +317,28 @@
|
|
|
151
317
|
}
|
|
152
318
|
]
|
|
153
319
|
},
|
|
320
|
+
"super-call": {
|
|
321
|
+
"patterns": [
|
|
322
|
+
{
|
|
323
|
+
"comment": "super::method() - call parent method",
|
|
324
|
+
"name": "meta.super-call.method.cssl",
|
|
325
|
+
"match": "\\b(super)(::)([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\(",
|
|
326
|
+
"captures": {
|
|
327
|
+
"1": { "name": "keyword.other.super.cssl" },
|
|
328
|
+
"2": { "name": "punctuation.accessor.double-colon.cssl" },
|
|
329
|
+
"3": { "name": "entity.name.function.parent.cssl" }
|
|
330
|
+
}
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"comment": "super() - call parent constructor",
|
|
334
|
+
"name": "meta.super-call.constructor.cssl",
|
|
335
|
+
"match": "\\b(super)\\s*\\(",
|
|
336
|
+
"captures": {
|
|
337
|
+
"1": { "name": "keyword.other.super.cssl" }
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
]
|
|
341
|
+
},
|
|
154
342
|
"class-method-definition": {
|
|
155
343
|
"patterns": [
|
|
156
344
|
{
|
|
@@ -209,6 +397,19 @@
|
|
|
209
397
|
"name": "storage.type.class.cssl",
|
|
210
398
|
"match": "\\b(class|struct|structure|enum|interface)\\b"
|
|
211
399
|
},
|
|
400
|
+
{
|
|
401
|
+
"name": "storage.modifier.extends.cssl",
|
|
402
|
+
"match": "\\b(extends|overwrites)\\b"
|
|
403
|
+
},
|
|
404
|
+
{
|
|
405
|
+
"comment": "new ClassName() - class instantiation with turquoise class name",
|
|
406
|
+
"name": "meta.new-expression.cssl",
|
|
407
|
+
"match": "\\b(new)\\s+([A-Z][a-zA-Z0-9_]*)\\s*\\(",
|
|
408
|
+
"captures": {
|
|
409
|
+
"1": { "name": "keyword.operator.new.cssl" },
|
|
410
|
+
"2": { "name": "support.class.cssl" }
|
|
411
|
+
}
|
|
412
|
+
},
|
|
212
413
|
{
|
|
213
414
|
"name": "keyword.operator.new.cssl",
|
|
214
415
|
"match": "\\bnew\\b"
|
|
@@ -219,7 +420,11 @@
|
|
|
219
420
|
},
|
|
220
421
|
{
|
|
221
422
|
"name": "storage.type.function.cssl",
|
|
222
|
-
"match": "\\b(define|void|shuffled)\\b"
|
|
423
|
+
"match": "\\b(define|void|shuffled|constr)\\b"
|
|
424
|
+
},
|
|
425
|
+
{
|
|
426
|
+
"name": "keyword.other.super.cssl",
|
|
427
|
+
"match": "\\bsuper\\b"
|
|
223
428
|
},
|
|
224
429
|
{
|
|
225
430
|
"name": "keyword.other.cssl",
|
|
@@ -322,7 +527,7 @@
|
|
|
322
527
|
},
|
|
323
528
|
{
|
|
324
529
|
"name": "support.function.namespace.python.cssl",
|
|
325
|
-
"match": "\\bpython::(pythonize|wrap|export)\\b"
|
|
530
|
+
"match": "\\bpython::(pythonize|wrap|export|csslize|import)\\b"
|
|
326
531
|
},
|
|
327
532
|
{
|
|
328
533
|
"name": "support.function.namespace.filter.cssl",
|
|
@@ -461,6 +666,48 @@
|
|
|
461
666
|
}
|
|
462
667
|
]
|
|
463
668
|
},
|
|
669
|
+
"function-definitions": {
|
|
670
|
+
"patterns": [
|
|
671
|
+
{
|
|
672
|
+
"comment": "Function with extends AND overwrites: define func : extends X : overwrites Y() { }",
|
|
673
|
+
"name": "meta.function.extends-overwrites.cssl",
|
|
674
|
+
"match": "\\b(define)\\s+(\\*?)([a-zA-Z_][a-zA-Z0-9_]*)\\s*:\\s*(extends)\\s+(\\$?[a-zA-Z_][a-zA-Z0-9_]*)(\\(\\))?\\s*:\\s*(overwrites)\\s+(\\$?[a-zA-Z_][a-zA-Z0-9_]*)(\\(\\))?",
|
|
675
|
+
"captures": {
|
|
676
|
+
"1": { "name": "storage.type.function.cssl" },
|
|
677
|
+
"2": { "name": "keyword.operator.non-null.cssl" },
|
|
678
|
+
"3": { "name": "entity.name.function.cssl" },
|
|
679
|
+
"4": { "name": "storage.modifier.extends.cssl" },
|
|
680
|
+
"5": { "name": "entity.other.inherited-function.cssl" },
|
|
681
|
+
"7": { "name": "storage.modifier.overwrites.cssl" },
|
|
682
|
+
"8": { "name": "entity.other.overwritten-function.cssl" }
|
|
683
|
+
}
|
|
684
|
+
},
|
|
685
|
+
{
|
|
686
|
+
"comment": "Function with extends: define func : extends otherFunc() { }",
|
|
687
|
+
"name": "meta.function.extends.cssl",
|
|
688
|
+
"match": "\\b(define)\\s+(\\*?)([a-zA-Z_][a-zA-Z0-9_]*)\\s*:\\s*(extends)\\s+(\\$?[a-zA-Z_][a-zA-Z0-9_]*)(\\(\\))?",
|
|
689
|
+
"captures": {
|
|
690
|
+
"1": { "name": "storage.type.function.cssl" },
|
|
691
|
+
"2": { "name": "keyword.operator.non-null.cssl" },
|
|
692
|
+
"3": { "name": "entity.name.function.cssl" },
|
|
693
|
+
"4": { "name": "storage.modifier.extends.cssl" },
|
|
694
|
+
"5": { "name": "entity.other.inherited-function.cssl" }
|
|
695
|
+
}
|
|
696
|
+
},
|
|
697
|
+
{
|
|
698
|
+
"comment": "Function with overwrites: define func : overwrites target() { }",
|
|
699
|
+
"name": "meta.function.overwrites.cssl",
|
|
700
|
+
"match": "\\b(define)\\s+(\\*?)([a-zA-Z_][a-zA-Z0-9_]*)\\s*:\\s*(overwrites)\\s+(\\$?[a-zA-Z_][a-zA-Z0-9_]*)(\\(\\))?",
|
|
701
|
+
"captures": {
|
|
702
|
+
"1": { "name": "storage.type.function.cssl" },
|
|
703
|
+
"2": { "name": "keyword.operator.non-null.cssl" },
|
|
704
|
+
"3": { "name": "entity.name.function.cssl" },
|
|
705
|
+
"4": { "name": "storage.modifier.overwrites.cssl" },
|
|
706
|
+
"5": { "name": "entity.other.overwritten-function.cssl" }
|
|
707
|
+
}
|
|
708
|
+
}
|
|
709
|
+
]
|
|
710
|
+
},
|
|
464
711
|
"function-calls": {
|
|
465
712
|
"patterns": [
|
|
466
713
|
{
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
includecpp/__init__.py,sha256=
|
|
1
|
+
includecpp/__init__.py,sha256=bKXVpFFAmREaA5tWkovN7kfgZV0Pv18AJZBwMP1Gwi0,1672
|
|
2
2
|
includecpp/__init__.pyi,sha256=uSDYlbqd2TinmrdepmE_zvN25jd3Co2cgyPzXgDpopM,7193
|
|
3
3
|
includecpp/__main__.py,sha256=d6QK0PkvUe1ENofpmHRAg3bwNbZr8PiRscfI3-WRfVg,72
|
|
4
4
|
includecpp/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -19,16 +19,16 @@ includecpp/core/exceptions.py,sha256=szeF4qdzi_q8hBBZi7mJxkliyQ0crplkLYe0ymlBGtk
|
|
|
19
19
|
includecpp/core/path_discovery.py,sha256=jI0oSq6Hsd4LKXmU4dOiGSrXcEO_KWMXfQ5_ylBmXvU,2561
|
|
20
20
|
includecpp/core/project_ui.py,sha256=la2EQZKmUkJGuJxnbs09hH1ZhBh9bfndo6okzZsk2dQ,141134
|
|
21
21
|
includecpp/core/settings_ui.py,sha256=B2SlwgdplF2KiBk5UYf2l8Jjifjd0F-FmBP0DPsVCEQ,11798
|
|
22
|
-
includecpp/core/cssl/CSSL_DOCUMENTATION.md,sha256=
|
|
22
|
+
includecpp/core/cssl/CSSL_DOCUMENTATION.md,sha256=ffeW2QwWCcZLB_Sx583imqaSeo4DpPun_c2E43eTnYw,50536
|
|
23
23
|
includecpp/core/cssl/__init__.py,sha256=scDXRBNK2L6A8qmlpNyaqQj6BFcSfPInBlucdeNfMF0,1975
|
|
24
|
-
includecpp/core/cssl/cssl_builtins.py,sha256=
|
|
24
|
+
includecpp/core/cssl/cssl_builtins.py,sha256=oPsPyQk5b0b1I02Y80oIaDX39GOeG32-nBPEqwbo_Pw,105110
|
|
25
25
|
includecpp/core/cssl/cssl_builtins.pyi,sha256=3ai2V4LyhzPBhAKjRRf0rLVu_bg9ECmTfTkdFKM64iA,127430
|
|
26
26
|
includecpp/core/cssl/cssl_events.py,sha256=nupIcXW_Vjdud7zCU6hdwkQRQ0MujlPM7Tk2u7eDAiY,21013
|
|
27
27
|
includecpp/core/cssl/cssl_modules.py,sha256=cUg0-zdymMnWWTsA_BUrW5dx4R04dHpKcUhm-Wfiwwo,103006
|
|
28
|
-
includecpp/core/cssl/cssl_parser.py,sha256=
|
|
29
|
-
includecpp/core/cssl/cssl_runtime.py,sha256=
|
|
28
|
+
includecpp/core/cssl/cssl_parser.py,sha256=BGS_rGZ2Jh7bp3JmUL-h-Jed_pTtNFMomLKB2P6qklQ,140173
|
|
29
|
+
includecpp/core/cssl/cssl_runtime.py,sha256=nub0UA4wtjhYPDQ61Jq6UKH1pVqwH3I7yb-Gmz7fWM0,184679
|
|
30
30
|
includecpp/core/cssl/cssl_syntax.py,sha256=bgo3NFehoPTQa5dqwNd_CstkVGVCNYAXbGYUcu5BEN0,16982
|
|
31
|
-
includecpp/core/cssl/cssl_types.py,sha256=
|
|
31
|
+
includecpp/core/cssl/cssl_types.py,sha256=7jbrtZf3xmVQJA_mnL9iYrmdjhjuc4--mxxNigi7fsk,53425
|
|
32
32
|
includecpp/generator/__init__.py,sha256=Rsy41bwimaEloD3gDRR_znPfIJzIsCFuWZgCTJBLJlc,62
|
|
33
33
|
includecpp/generator/parser.cpp,sha256=hbhHdtFH65rzp6prnARN9pNFF_ssr0NseVVcxq0fJh4,76833
|
|
34
34
|
includecpp/generator/parser.h,sha256=EDm0b-pEesIIIQQ2PvH5h2qwlqJU9BH8SiMV7MWbsTo,11073
|
|
@@ -39,14 +39,14 @@ includecpp/vscode/__init__.py,sha256=yLKw-_7MTX1Rx3jLk5JjharJQfFXbwtZVE7YqHpM7yg
|
|
|
39
39
|
includecpp/vscode/cssl/__init__.py,sha256=rQJAx5X05v-mAwqX1Qb-rbZO219iR73MziFNRUCNUIo,31
|
|
40
40
|
includecpp/vscode/cssl/extension.js,sha256=FZaKfOpzo2jXtubVCZmnhDZd4eUVHltm5VW_fgNnSkE,4327
|
|
41
41
|
includecpp/vscode/cssl/language-configuration.json,sha256=61Q00cKI9may5L8YpxMmvfo6PAc-abdJqApfR85DWuw,904
|
|
42
|
-
includecpp/vscode/cssl/package.json,sha256=
|
|
42
|
+
includecpp/vscode/cssl/package.json,sha256=5MCJts7zYIgF8EdWcBnn98deIMyZamlGXvt1acO0Q1U,4853
|
|
43
43
|
includecpp/vscode/cssl/images/cssl.png,sha256=BxAGsnfS0ZzzCvqV6Zb1OAJAZpDUoXlR86MsvUGlSZw,510
|
|
44
44
|
includecpp/vscode/cssl/images/cssl_pl.png,sha256=z4WMk7g6YCTbUUbSFk343BO6yi_OmNEVYkRenWGydwM,799
|
|
45
45
|
includecpp/vscode/cssl/snippets/cssl.snippets.json,sha256=uV3nHJyQ5f7Pr3FzfbQT2VZOEY3AlGs4wrmqe884jm4,37372
|
|
46
|
-
includecpp/vscode/cssl/syntaxes/cssl.tmLanguage.json,sha256=
|
|
47
|
-
includecpp-3.8.
|
|
48
|
-
includecpp-3.8.
|
|
49
|
-
includecpp-3.8.
|
|
50
|
-
includecpp-3.8.
|
|
51
|
-
includecpp-3.8.
|
|
52
|
-
includecpp-3.8.
|
|
46
|
+
includecpp/vscode/cssl/syntaxes/cssl.tmLanguage.json,sha256=FZw1_VDz1ll4ZBZeGqo-935CK5RuF2kD75rNp5tVdC0,35068
|
|
47
|
+
includecpp-3.8.9.dist-info/licenses/LICENSE,sha256=fWCsGGsiWZir0UzDd20Hh-3wtRyk1zqUntvtVuAWhvc,1093
|
|
48
|
+
includecpp-3.8.9.dist-info/METADATA,sha256=fKlj1rXZq7nbfWOdJn0iZtDcFRlr9tj0hHZQqdPksnI,22510
|
|
49
|
+
includecpp-3.8.9.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
50
|
+
includecpp-3.8.9.dist-info/entry_points.txt,sha256=6A5Mif9gi0139Bf03W5plAb3wnAgbNaEVe1HJoGE-2o,59
|
|
51
|
+
includecpp-3.8.9.dist-info/top_level.txt,sha256=RFUaR1KG-M6mCYwP6w4ydP5Cgc8yNbP78jxGAvyjMa8,11
|
|
52
|
+
includecpp-3.8.9.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|