IncludeCPP 4.0.2__py3-none-any.whl → 4.2.2__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/CHANGELOG.md +175 -0
- includecpp/DOCUMENTATION.md +593 -0
- includecpp/__init__.py +1 -1
- includecpp/__init__.pyi +4 -1
- includecpp/cli/commands.py +698 -84
- includecpp/core/ai_integration.py +46 -13
- includecpp/core/cpp_api_extensions.pyi +350 -0
- includecpp/core/cssl/CSSL_DOCUMENTATION.md +186 -5
- includecpp/core/cssl/cssl_builtins.py +101 -4
- includecpp/core/cssl/cssl_languages.py +1757 -0
- includecpp/core/cssl/cssl_parser.py +429 -98
- includecpp/core/cssl/cssl_runtime.py +666 -51
- includecpp/core/cssl/cssl_syntax.py +88 -4
- includecpp/core/cssl/cssl_types.py +172 -1
- includecpp/core/cssl_bridge.py +194 -8
- includecpp/core/cssl_bridge.pyi +148 -10
- includecpp/generator/parser.cpp +121 -4
- includecpp/generator/parser.h +6 -0
- includecpp/vscode/cssl/package.json +43 -1
- includecpp/vscode/cssl/syntaxes/cssl.tmLanguage.json +140 -17
- {includecpp-4.0.2.dist-info → includecpp-4.2.2.dist-info}/METADATA +101 -1
- {includecpp-4.0.2.dist-info → includecpp-4.2.2.dist-info}/RECORD +26 -22
- {includecpp-4.0.2.dist-info → includecpp-4.2.2.dist-info}/WHEEL +0 -0
- {includecpp-4.0.2.dist-info → includecpp-4.2.2.dist-info}/entry_points.txt +0 -0
- {includecpp-4.0.2.dist-info → includecpp-4.2.2.dist-info}/licenses/LICENSE +0 -0
- {includecpp-4.0.2.dist-info → includecpp-4.2.2.dist-info}/top_level.txt +0 -0
includecpp/CHANGELOG.md
ADDED
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
# IncludeCPP Changelog
|
|
2
|
+
|
|
3
|
+
## v4.2.2 (2025-01-08)
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
- **Fixed bidirectional `lang$Instance` mutations** - Cross-language instance access now correctly modifies shared objects
|
|
7
|
+
- `js$GameData.score = 1337` now properly updates the original instance
|
|
8
|
+
- All mutations via `lang$Instance.member = value` are now applied bidirectionally
|
|
9
|
+
- Fixed `LANG_INSTANCE_REF` token not being recognized in `parse_program()`, `_parse_statement()`, and `_parse_action_block()`
|
|
10
|
+
- Parser now correctly handles `lang$Instance` as a valid expression start token
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## v4.2.1 (2025-01-08)
|
|
15
|
+
|
|
16
|
+
### CLI Improvements
|
|
17
|
+
- `--doc` and `--doc "term"` now load from local DOCUMENTATION.md
|
|
18
|
+
- `--changelog` now loads from local CHANGELOG.md
|
|
19
|
+
- Added `--changelog --N` (e.g., `--changelog --5`) for showing N releases
|
|
20
|
+
- Added `--changelog --all` for showing all releases
|
|
21
|
+
|
|
22
|
+
### Documentation
|
|
23
|
+
- Added comprehensive DOCUMENTATION.md for CLI reference
|
|
24
|
+
- Added CHANGELOG.md for version history
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## v4.2.0 (2025-01-08)
|
|
29
|
+
|
|
30
|
+
### Multi-Language Support
|
|
31
|
+
- Added `libinclude("language")` for loading language support modules
|
|
32
|
+
- Added `supports <lang>` keyword for writing in other language syntax
|
|
33
|
+
- Added cross-language instance sharing with `lang$InstanceName` syntax
|
|
34
|
+
- Added language transformers for Python, JavaScript, Java, C#, C++
|
|
35
|
+
- Added default parameter values in CSSL functions
|
|
36
|
+
|
|
37
|
+
### SDK Packages
|
|
38
|
+
- Added C++ SDK (`sdk/cpp/includecpp.h`)
|
|
39
|
+
- Added Java SDK (`sdk/java/src/com/includecpp/CSSL.java`)
|
|
40
|
+
- Added C# SDK (`sdk/csharp/IncludeCPP.cs`)
|
|
41
|
+
- Added JavaScript SDK (`sdk/javascript/includecpp.js`)
|
|
42
|
+
- Added `includecpp cssl sdk <lang>` command to generate SDKs
|
|
43
|
+
|
|
44
|
+
### CLI Improvements
|
|
45
|
+
- Added `--doc "searchterm"` for documentation search
|
|
46
|
+
- Added `--changelog --all`, `--changelog --N` for changelog viewing
|
|
47
|
+
- Improved error messages with line context
|
|
48
|
+
|
|
49
|
+
### Bug Fixes
|
|
50
|
+
- Fixed compound assignment operators in Python transformer (-=, +=, *=, /=)
|
|
51
|
+
- Fixed type annotation stripping in `supports python` blocks
|
|
52
|
+
- Fixed self parameter handling in Python method transformation
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## v4.1.0 (2024-12-15)
|
|
57
|
+
|
|
58
|
+
### CodeInfusion System
|
|
59
|
+
- Added `<<==` operator for code injection into functions
|
|
60
|
+
- Added `+<<==` for appending code without replacing
|
|
61
|
+
- Added method appending with `&Class::method` syntax
|
|
62
|
+
- Added `++` append mode for function definitions
|
|
63
|
+
|
|
64
|
+
### Class Improvements
|
|
65
|
+
- Added `overwrites` keyword for method replacement
|
|
66
|
+
- Added `extends Parent::method` for method-level inheritance
|
|
67
|
+
- Added `super()` and `super::method()` calls
|
|
68
|
+
- Added shuffled returns with `shuffled<T>` type
|
|
69
|
+
|
|
70
|
+
### New Containers
|
|
71
|
+
- Added `combo<T>` for filter/search operations
|
|
72
|
+
- Added `iterator<T>` for programmable iterators
|
|
73
|
+
- Added `datastruct<T>` universal container
|
|
74
|
+
|
|
75
|
+
### Python Interop
|
|
76
|
+
- Added `python::pythonize()` for returning CSSL classes to Python
|
|
77
|
+
- Added `python::wrap()` and `python::export()` aliases
|
|
78
|
+
- Added universal instances with `instance<"name">`
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## v4.0.3 (2024-11-20)
|
|
83
|
+
|
|
84
|
+
### Universal Instances
|
|
85
|
+
- Added `instance<"name">` for cross-runtime shared containers
|
|
86
|
+
- Added `cssl.getInstance("name")` Python API
|
|
87
|
+
- Added `cssl.createInstance("name")` Python API
|
|
88
|
+
- Added `cssl.deleteInstance("name")` Python API
|
|
89
|
+
- Added method injection into instances with `+<<==`
|
|
90
|
+
|
|
91
|
+
### Module System
|
|
92
|
+
- Added `CSSL.makemodule()` for creating callable modules
|
|
93
|
+
- Added `CSSL.makepayload()` for payload file registration
|
|
94
|
+
- Added payload binding with `bind=` parameter
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## v4.0.2 (2024-11-01)
|
|
99
|
+
|
|
100
|
+
### Simplified API
|
|
101
|
+
- Added `CSSL.run()` as main entry point
|
|
102
|
+
- Added `CSSL.module()` for creating modules from strings
|
|
103
|
+
- Added `CSSL.script()` for inline payload registration
|
|
104
|
+
- Improved parameter handling with `parameter.get()` and `parameter.return()`
|
|
105
|
+
|
|
106
|
+
### Shared Objects
|
|
107
|
+
- Added `cssl.share(obj, "name")` for Python object sharing
|
|
108
|
+
- Added `$name` syntax for accessing shared objects
|
|
109
|
+
- Changes in CSSL reflect back to Python objects
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## v4.0.0 (2024-10-15)
|
|
114
|
+
|
|
115
|
+
### Major Release
|
|
116
|
+
- Complete rewrite of CSSL parser and runtime
|
|
117
|
+
- Added generic container types (`stack<T>`, `vector<T>`, `map<K,V>`)
|
|
118
|
+
- Added class system with constructors and inheritance
|
|
119
|
+
- Added BruteInjection operators (`<==`, `+<==`, `-<==`)
|
|
120
|
+
- Added global variables with `@name` syntax
|
|
121
|
+
- Added captured variables with `%name` syntax
|
|
122
|
+
|
|
123
|
+
### AI Integration
|
|
124
|
+
- Added `includecpp ai` command group
|
|
125
|
+
- Added AI-assisted code analysis
|
|
126
|
+
- Added AI-powered optimization
|
|
127
|
+
- Added `includecpp ai ask` for project questions
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
## v3.2.0 (2024-09-01)
|
|
132
|
+
|
|
133
|
+
### CPPY Conversion
|
|
134
|
+
- Added `includecpp cppy convert` command
|
|
135
|
+
- Added Python to C++ conversion
|
|
136
|
+
- Added C++ to Python conversion
|
|
137
|
+
- Added AI-assisted conversion with `--ai` flag
|
|
138
|
+
- Added type mapping tables
|
|
139
|
+
|
|
140
|
+
### Build Improvements
|
|
141
|
+
- Added `--fast` flag for incremental builds
|
|
142
|
+
- Added object file caching
|
|
143
|
+
- Added SHA256 hash checking for unchanged modules
|
|
144
|
+
- Reduced rebuild time to ~0.4s when unchanged
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## v3.1.0 (2024-08-01)
|
|
149
|
+
|
|
150
|
+
### CLI Enhancements
|
|
151
|
+
- Added `includecpp auto` command
|
|
152
|
+
- Added `includecpp fix` for code analysis
|
|
153
|
+
- Added `--verbose` flag for detailed output
|
|
154
|
+
- Added `-j` flag for parallel jobs
|
|
155
|
+
|
|
156
|
+
### Plugin Format
|
|
157
|
+
- Added `DEPENDS()` for module dependencies
|
|
158
|
+
- Added `TEMPLATE_FUNC()` for template instantiation
|
|
159
|
+
- Added `METHOD_CONST()` for overloaded methods
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## v3.0.0 (2024-07-01)
|
|
164
|
+
|
|
165
|
+
### Initial CSSL
|
|
166
|
+
- Added CSSL scripting language
|
|
167
|
+
- Added basic data types and control flow
|
|
168
|
+
- Added functions and basic classes
|
|
169
|
+
- Added Python interop with shared objects
|
|
170
|
+
|
|
171
|
+
### Core Features
|
|
172
|
+
- C++ to Python binding generation
|
|
173
|
+
- Plugin file format (.cp)
|
|
174
|
+
- CMake-based build system
|
|
175
|
+
- Cross-platform support (Windows, Linux, Mac)
|