IncludeCPP 3.7.8__tar.gz → 3.7.10__tar.gz
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-3.7.8 → includecpp-3.7.10}/IncludeCPP.egg-info/PKG-INFO +1 -1
- {includecpp-3.7.8 → includecpp-3.7.10}/PKG-INFO +1 -1
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/__init__.py +1 -1
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/cli/commands.py +100 -64
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/vscode/cssl/syntaxes/cssl.tmLanguage.json +20 -6
- {includecpp-3.7.8 → includecpp-3.7.10}/pyproject.toml +1 -1
- {includecpp-3.7.8 → includecpp-3.7.10}/IncludeCPP.egg-info/SOURCES.txt +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/IncludeCPP.egg-info/dependency_links.txt +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/IncludeCPP.egg-info/entry_points.txt +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/IncludeCPP.egg-info/requires.txt +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/IncludeCPP.egg-info/top_level.txt +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/LICENSE +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/MANIFEST.in +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/README.md +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/__init__.pyi +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/__main__.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/cli/__init__.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/cli/config_parser.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/__init__.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/ai_integration.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/build_manager.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cpp_api.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cpp_api.pyi +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cppy_converter.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/CSSL_DOCUMENTATION.md +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/__init__.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/cssl_builtins.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/cssl_builtins.pyi +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/cssl_events.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/cssl_modules.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/cssl_parser.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/cssl_runtime.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/cssl_syntax.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl/cssl_types.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl_bridge.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/cssl_bridge.pyi +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/error_catalog.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/error_formatter.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/exceptions.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/path_discovery.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/project_ui.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/core/settings_ui.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/generator/__init__.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/generator/parser.cpp +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/generator/parser.h +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/generator/type_resolver.cpp +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/generator/type_resolver.h +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/py.typed +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/templates/cpp.proj.template +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/vscode/__init__.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/vscode/cssl/__init__.py +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/vscode/cssl/language-configuration.json +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/vscode/cssl/package.json +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/includecpp/vscode/cssl/snippets/cssl.snippets.json +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/requirements.txt +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/setup.cfg +0 -0
- {includecpp-3.7.8 → includecpp-3.7.10}/setup.py +0 -0
|
@@ -7858,26 +7858,46 @@ def cssl_vscode():
|
|
|
7858
7858
|
click.secho("CSSL extension files not found in package.", fg='red')
|
|
7859
7859
|
return
|
|
7860
7860
|
|
|
7861
|
-
#
|
|
7862
|
-
|
|
7861
|
+
# Get version from package.json
|
|
7862
|
+
pkg_json = source_ext_dir / 'package.json'
|
|
7863
|
+
current_version = "1.1.0"
|
|
7864
|
+
if pkg_json.exists():
|
|
7865
|
+
try:
|
|
7866
|
+
pkg_data = json.loads(pkg_json.read_text(encoding='utf-8'))
|
|
7867
|
+
current_version = pkg_data.get('version', '1.1.0')
|
|
7868
|
+
except:
|
|
7869
|
+
pass
|
|
7870
|
+
|
|
7871
|
+
target_dir = vscode_ext_dir / f'includecpp.cssl-{current_version}'
|
|
7863
7872
|
|
|
7864
7873
|
try:
|
|
7874
|
+
# Check for existing installations
|
|
7875
|
+
existing_version = None
|
|
7876
|
+
for existing in vscode_ext_dir.glob('includecpp.cssl-*'):
|
|
7877
|
+
existing_version = existing.name.split('-')[-1]
|
|
7878
|
+
if existing_version != current_version:
|
|
7879
|
+
click.echo(f"Removing old version: {existing_version}")
|
|
7880
|
+
shutil.rmtree(existing)
|
|
7881
|
+
|
|
7865
7882
|
if target_dir.exists():
|
|
7866
7883
|
shutil.rmtree(target_dir)
|
|
7867
7884
|
|
|
7868
7885
|
shutil.copytree(source_ext_dir, target_dir)
|
|
7869
7886
|
|
|
7870
|
-
|
|
7887
|
+
if existing_version and existing_version != current_version:
|
|
7888
|
+
click.secho(f"CSSL extension updated: v{existing_version} -> v{current_version}", fg='green', bold=True)
|
|
7889
|
+
else:
|
|
7890
|
+
click.secho(f"CSSL VSCode extension installed! (v{current_version})", fg='green', bold=True)
|
|
7871
7891
|
click.echo()
|
|
7872
7892
|
click.echo(f"Installed to: {target_dir}")
|
|
7873
7893
|
click.echo()
|
|
7874
7894
|
click.echo("Features:")
|
|
7875
7895
|
click.echo(" - Syntax highlighting for .cssl, .cssl-pl, .cssl-mod files")
|
|
7876
|
-
click.echo(" -
|
|
7877
|
-
click.echo(" -
|
|
7896
|
+
click.echo(" - OOP support: class, constructor, this->member")
|
|
7897
|
+
click.echo(" - Injection operators: <== (brute), <<== (infuse)")
|
|
7898
|
+
click.echo(" - Type highlighting: int, string, stack<T>, instance<>")
|
|
7878
7899
|
click.echo(" - Global references: @Name, r@Name, s@Name")
|
|
7879
7900
|
click.echo(" - Shared objects: $Name")
|
|
7880
|
-
click.echo(" - Filter helpers: string::contains, json::key, etc.")
|
|
7881
7901
|
click.echo()
|
|
7882
7902
|
click.secho("Restart VSCode to activate the extension.", fg='yellow')
|
|
7883
7903
|
|
|
@@ -7901,35 +7921,28 @@ cli.add_command(cssl)
|
|
|
7901
7921
|
def vscode(force, stubs_only):
|
|
7902
7922
|
"""Initialize or update VSCode configuration for IncludeCPP/CSSL.
|
|
7903
7923
|
|
|
7904
|
-
|
|
7905
|
-
- CSSL language support (syntax highlighting, snippets)
|
|
7906
|
-
- Type stubs for builtins (.pyi files)
|
|
7907
|
-
- Auto-generated stubs for your plugins and modules
|
|
7924
|
+
Installs CSSL extension globally and sets up project stubs.
|
|
7908
7925
|
|
|
7909
7926
|
\b
|
|
7910
7927
|
Usage:
|
|
7911
|
-
includecpp vscode #
|
|
7912
|
-
includecpp vscode --force # Force
|
|
7928
|
+
includecpp vscode # Install/update extension + stubs
|
|
7929
|
+
includecpp vscode --force # Force reinstall extension
|
|
7913
7930
|
includecpp vscode --stubs-only # Only update stubs
|
|
7914
7931
|
|
|
7915
7932
|
\b
|
|
7916
|
-
What it
|
|
7917
|
-
.vscode/
|
|
7918
|
-
|
|
7919
|
-
|
|
7920
|
-
stubs/ - Type stubs for IDE support
|
|
7921
|
-
cssl_builtins.pyi - CSSL builtin functions
|
|
7922
|
-
plugins/ - Stubs for your .cp plugins
|
|
7923
|
-
modules/ - Stubs for your modules
|
|
7933
|
+
What it does:
|
|
7934
|
+
1. Installs CSSL extension globally (~/.vscode/extensions/)
|
|
7935
|
+
2. Creates .vscode/settings.json with file associations
|
|
7936
|
+
3. Creates .vscode/stubs/ with type hints for IDE support
|
|
7924
7937
|
"""
|
|
7925
7938
|
from pathlib import Path as PathLib
|
|
7939
|
+
import os
|
|
7926
7940
|
|
|
7927
7941
|
cwd = PathLib.cwd()
|
|
7928
7942
|
vscode_dir = cwd / '.vscode'
|
|
7929
7943
|
stubs_dir = vscode_dir / 'stubs'
|
|
7930
7944
|
plugins_stubs_dir = stubs_dir / 'plugins'
|
|
7931
7945
|
modules_stubs_dir = stubs_dir / 'modules'
|
|
7932
|
-
cssl_ext_dir = vscode_dir / 'cssl'
|
|
7933
7946
|
|
|
7934
7947
|
# Create directories
|
|
7935
7948
|
vscode_dir.mkdir(exist_ok=True)
|
|
@@ -7945,56 +7958,79 @@ def vscode(force, stubs_only):
|
|
|
7945
7958
|
updated_count = 0
|
|
7946
7959
|
created_count = 0
|
|
7947
7960
|
|
|
7948
|
-
# 1.
|
|
7961
|
+
# 1. Install CSSL extension GLOBALLY (unless stubs-only)
|
|
7949
7962
|
if not stubs_only:
|
|
7950
|
-
click.secho("
|
|
7963
|
+
click.secho("Installing CSSL extension globally...", fg='yellow')
|
|
7951
7964
|
|
|
7952
7965
|
# Find source extension directory
|
|
7953
7966
|
source_ext_dir = PathLib(__file__).parent.parent / 'vscode' / 'cssl'
|
|
7954
7967
|
|
|
7955
7968
|
if source_ext_dir.exists():
|
|
7956
|
-
|
|
7957
|
-
|
|
7958
|
-
|
|
7959
|
-
|
|
7960
|
-
|
|
7961
|
-
|
|
7962
|
-
|
|
7963
|
-
|
|
7964
|
-
|
|
7965
|
-
|
|
7966
|
-
|
|
7967
|
-
|
|
7968
|
-
|
|
7969
|
-
|
|
7970
|
-
|
|
7971
|
-
|
|
7972
|
-
|
|
7973
|
-
|
|
7974
|
-
|
|
7975
|
-
|
|
7976
|
-
|
|
7977
|
-
|
|
7978
|
-
|
|
7979
|
-
|
|
7980
|
-
|
|
7981
|
-
|
|
7982
|
-
|
|
7983
|
-
|
|
7984
|
-
|
|
7985
|
-
|
|
7986
|
-
|
|
7987
|
-
|
|
7988
|
-
|
|
7989
|
-
|
|
7990
|
-
|
|
7991
|
-
|
|
7992
|
-
|
|
7993
|
-
|
|
7994
|
-
|
|
7995
|
-
click.echo(f"
|
|
7969
|
+
# Get version from package.json
|
|
7970
|
+
pkg_json = source_ext_dir / 'package.json'
|
|
7971
|
+
current_version = "1.1.0"
|
|
7972
|
+
if pkg_json.exists():
|
|
7973
|
+
try:
|
|
7974
|
+
pkg_data = json.loads(pkg_json.read_text(encoding='utf-8'))
|
|
7975
|
+
current_version = pkg_data.get('version', '1.1.0')
|
|
7976
|
+
except:
|
|
7977
|
+
pass
|
|
7978
|
+
|
|
7979
|
+
# Find global VSCode extensions directory
|
|
7980
|
+
if os.name == 'nt': # Windows
|
|
7981
|
+
global_ext_dir = PathLib(os.environ.get('USERPROFILE', '')) / '.vscode' / 'extensions'
|
|
7982
|
+
else: # Linux/Mac
|
|
7983
|
+
global_ext_dir = PathLib.home() / '.vscode' / 'extensions'
|
|
7984
|
+
|
|
7985
|
+
if not global_ext_dir.exists():
|
|
7986
|
+
# Try VSCode Insiders
|
|
7987
|
+
if os.name == 'nt':
|
|
7988
|
+
global_ext_dir = PathLib(os.environ.get('USERPROFILE', '')) / '.vscode-insiders' / 'extensions'
|
|
7989
|
+
else:
|
|
7990
|
+
global_ext_dir = PathLib.home() / '.vscode-insiders' / 'extensions'
|
|
7991
|
+
|
|
7992
|
+
if global_ext_dir.exists():
|
|
7993
|
+
target_dir = global_ext_dir / f'includecpp.cssl-{current_version}'
|
|
7994
|
+
|
|
7995
|
+
# Check if already installed with same or older version
|
|
7996
|
+
needs_install = force
|
|
7997
|
+
existing_version = None
|
|
7998
|
+
|
|
7999
|
+
# Find existing installations
|
|
8000
|
+
for existing in global_ext_dir.glob('includecpp.cssl-*'):
|
|
8001
|
+
existing_version = existing.name.split('-')[-1]
|
|
8002
|
+
if existing_version != current_version:
|
|
8003
|
+
# Remove old version
|
|
8004
|
+
click.echo(f" Removing old version: {existing_version}")
|
|
8005
|
+
shutil.rmtree(existing)
|
|
8006
|
+
needs_install = True
|
|
8007
|
+
elif not force:
|
|
8008
|
+
click.echo(f" Already installed: v{current_version}")
|
|
8009
|
+
needs_install = False
|
|
8010
|
+
|
|
8011
|
+
if not target_dir.exists():
|
|
8012
|
+
needs_install = True
|
|
8013
|
+
|
|
8014
|
+
if needs_install:
|
|
8015
|
+
# Remove target if exists (force reinstall)
|
|
8016
|
+
if target_dir.exists():
|
|
8017
|
+
shutil.rmtree(target_dir)
|
|
8018
|
+
|
|
8019
|
+
# Copy extension to global directory
|
|
8020
|
+
shutil.copytree(source_ext_dir, target_dir)
|
|
8021
|
+
created_count += 1
|
|
8022
|
+
|
|
8023
|
+
if existing_version and existing_version != current_version:
|
|
8024
|
+
click.secho(f" Updated: v{existing_version} -> v{current_version}", fg='green')
|
|
8025
|
+
else:
|
|
8026
|
+
click.secho(f" Installed: v{current_version}", fg='green')
|
|
7996
8027
|
|
|
7997
|
-
|
|
8028
|
+
click.echo(f" Location: {target_dir}")
|
|
8029
|
+
click.echo()
|
|
8030
|
+
click.secho(" Restart VSCode to activate the extension!", fg='yellow', bold=True)
|
|
8031
|
+
else:
|
|
8032
|
+
click.secho(" VSCode extensions directory not found.", fg='red')
|
|
8033
|
+
click.echo(" Make sure VSCode is installed.")
|
|
7998
8034
|
else:
|
|
7999
8035
|
click.secho(" Warning: CSSL extension source not found", fg='yellow')
|
|
8000
8036
|
|
|
@@ -125,6 +125,8 @@
|
|
|
125
125
|
{ "include": "#strings" },
|
|
126
126
|
{ "include": "#numbers" },
|
|
127
127
|
{ "include": "#keywords" },
|
|
128
|
+
{ "include": "#function-calls" },
|
|
129
|
+
{ "include": "#builtins" },
|
|
128
130
|
{ "include": "#operators" }
|
|
129
131
|
]
|
|
130
132
|
}
|
|
@@ -138,7 +140,7 @@
|
|
|
138
140
|
"match": "\\b(void\\s+)?([A-Z][a-zA-Z0-9_]*)\\s*(?=\\{|\\()",
|
|
139
141
|
"captures": {
|
|
140
142
|
"1": { "name": "storage.type.cssl" },
|
|
141
|
-
"2": { "name": "entity.name.function.
|
|
143
|
+
"2": { "name": "entity.name.function.cssl" }
|
|
142
144
|
}
|
|
143
145
|
}
|
|
144
146
|
]
|
|
@@ -147,10 +149,10 @@
|
|
|
147
149
|
"patterns": [
|
|
148
150
|
{
|
|
149
151
|
"name": "meta.method.cssl",
|
|
150
|
-
"match": "\\b(void|int|string|float|bool|dynamic|define)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\(",
|
|
152
|
+
"match": "\\b(void|int|string|float|bool|dynamic|define|shuffled)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\(",
|
|
151
153
|
"captures": {
|
|
152
154
|
"1": { "name": "storage.type.cssl" },
|
|
153
|
-
"2": { "name": "entity.name.function.
|
|
155
|
+
"2": { "name": "entity.name.function.cssl" }
|
|
154
156
|
}
|
|
155
157
|
}
|
|
156
158
|
]
|
|
@@ -198,12 +200,24 @@
|
|
|
198
200
|
"match": "\\b(if|else|elif|while|for|foreach|in|range|switch|case|default|break|continue|return|try|catch|finally|throw)\\b"
|
|
199
201
|
},
|
|
200
202
|
{
|
|
201
|
-
"name": "
|
|
202
|
-
"match": "\\b(class|
|
|
203
|
+
"name": "storage.type.class.cssl",
|
|
204
|
+
"match": "\\b(class|struct|structure|enum|interface)\\b"
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"name": "keyword.operator.new.cssl",
|
|
208
|
+
"match": "\\bnew\\b"
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"name": "variable.language.this.cssl",
|
|
212
|
+
"match": "\\bthis\\b"
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"name": "storage.type.function.cssl",
|
|
216
|
+
"match": "\\b(define|void|shuffled)\\b"
|
|
203
217
|
},
|
|
204
218
|
{
|
|
205
219
|
"name": "keyword.other.cssl",
|
|
206
|
-
"match": "\\b(service-init|service-run|service-include|
|
|
220
|
+
"match": "\\b(service-init|service-run|service-include|main|package|package-includes|exec|as|global|include|get|payload|convert)\\b"
|
|
207
221
|
},
|
|
208
222
|
{
|
|
209
223
|
"name": "keyword.operator.logical.cssl",
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "IncludeCPP"
|
|
7
|
-
version = "3.7.
|
|
7
|
+
version = "3.7.10"
|
|
8
8
|
description = "Professional C++ Python bindings with type-generic templates, pystubs and native threading"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|