IncludeCPP 3.3.0__tar.gz → 3.3.2__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.
Files changed (38) hide show
  1. {includecpp-3.3.0 → includecpp-3.3.2/IncludeCPP.egg-info}/PKG-INFO +79 -2
  2. {includecpp-3.3.0 → includecpp-3.3.2}/IncludeCPP.egg-info/SOURCES.txt +2 -0
  3. includecpp-3.3.0/README.md → includecpp-3.3.2/PKG-INFO +666 -552
  4. includecpp-3.3.0/IncludeCPP.egg-info/PKG-INFO → includecpp-3.3.2/README.md +629 -589
  5. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/__init__.py +1 -1
  6. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/cli/commands.py +481 -0
  7. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/ai_integration.py +53 -13
  8. includecpp-3.3.2/includecpp/core/cppy_converter.py +1450 -0
  9. {includecpp-3.3.0 → includecpp-3.3.2}/pyproject.toml +1 -1
  10. {includecpp-3.3.0 → includecpp-3.3.2}/IncludeCPP.egg-info/dependency_links.txt +0 -0
  11. {includecpp-3.3.0 → includecpp-3.3.2}/IncludeCPP.egg-info/entry_points.txt +0 -0
  12. {includecpp-3.3.0 → includecpp-3.3.2}/IncludeCPP.egg-info/requires.txt +0 -0
  13. {includecpp-3.3.0 → includecpp-3.3.2}/IncludeCPP.egg-info/top_level.txt +0 -0
  14. {includecpp-3.3.0 → includecpp-3.3.2}/LICENSE +0 -0
  15. {includecpp-3.3.0 → includecpp-3.3.2}/MANIFEST.in +0 -0
  16. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/__init__.pyi +0 -0
  17. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/__main__.py +0 -0
  18. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/cli/__init__.py +0 -0
  19. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/cli/config_parser.py +0 -0
  20. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/__init__.py +0 -0
  21. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/build_manager.py +0 -0
  22. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/cpp_api.py +0 -0
  23. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/cpp_api.pyi +0 -0
  24. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/error_catalog.py +0 -0
  25. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/error_formatter.py +0 -0
  26. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/exceptions.py +0 -0
  27. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/path_discovery.py +0 -0
  28. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/core/settings_ui.py +0 -0
  29. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/generator/__init__.py +0 -0
  30. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/generator/parser.cpp +0 -0
  31. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/generator/parser.h +0 -0
  32. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/generator/type_resolver.cpp +0 -0
  33. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/generator/type_resolver.h +0 -0
  34. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/py.typed +0 -0
  35. {includecpp-3.3.0 → includecpp-3.3.2}/includecpp/templates/cpp.proj.template +0 -0
  36. {includecpp-3.3.0 → includecpp-3.3.2}/requirements.txt +0 -0
  37. {includecpp-3.3.0 → includecpp-3.3.2}/setup.cfg +0 -0
  38. {includecpp-3.3.0 → includecpp-3.3.2}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: IncludeCPP
3
- Version: 3.3.0
3
+ Version: 3.3.2
4
4
  Summary: Professional C++ Python bindings with type-generic templates, pystubs and native threading
5
5
  Home-page: https://github.com/includecpp/includecpp
6
6
  Author: IncludeCPP Team
@@ -275,6 +275,11 @@ Use `includecpp <command> --help` for details.
275
275
  | `bug` | Report an issue |
276
276
  | `--doc` | Show documentation |
277
277
  | `--changelog` | Show latest version changelog |
278
+ | `cppy convert <files> --cpp` | Convert Python to C++ |
279
+ | `cppy convert <files> --py` | Convert C++ to Python |
280
+ | `cppy convert <files> --cpp --no-h` | Convert without header |
281
+ | `cppy analyze <files>` | Analyze code structure |
282
+ | `cppy types` | Show type mapping tables |
278
283
 
279
284
  ## Build Flags
280
285
 
@@ -483,6 +488,62 @@ Generates `.pyi` stub files for autocomplete. Enable in `cpp.proj`:
483
488
  }
484
489
  ```
485
490
 
491
+ ## CPPY Code Conversion
492
+
493
+ Convert code between Python and C++ with full support for classes, functions, and type hints.
494
+
495
+ ### Python to C++
496
+
497
+ ```bash
498
+ includecpp cppy convert math_utils.py --cpp
499
+ includecpp cppy convert data.py --cpp --no-h # Skip header
500
+ includecpp cppy convert src/*.py --cpp -o include/
501
+ ```
502
+
503
+ Converts Python code to optimized C++ with:
504
+ - Type hints mapped to C++ types (int, str -> std::string, List -> std::vector)
505
+ - Classes with constructors, methods, fields
506
+ - Functions with proper signatures
507
+ - List comprehensions to STL algorithms
508
+ - Exception handling to try/catch
509
+
510
+ ### C++ to Python
511
+
512
+ ```bash
513
+ includecpp cppy convert utils.cpp --py
514
+ includecpp cppy convert mymodule.cp --py # Auto-resolve SOURCE()
515
+ ```
516
+
517
+ Converts C++ to Python with:
518
+ - STL types mapped to Python equivalents
519
+ - Classes with type hints
520
+ - Methods become class methods with self
521
+ - Structs become dataclasses
522
+
523
+ ### Analyze Code
524
+
525
+ ```bash
526
+ includecpp cppy analyze math.py # View structure
527
+ includecpp cppy analyze utils.cpp --json # JSON output
528
+ ```
529
+
530
+ ### Type Mapping
531
+
532
+ ```bash
533
+ includecpp cppy types # Show conversion tables
534
+ ```
535
+
536
+ | Python | C++ |
537
+ |--------|-----|
538
+ | int | int |
539
+ | float | double |
540
+ | str | std::string |
541
+ | bool | bool |
542
+ | List[T] | std::vector<T> |
543
+ | Dict[K,V] | std::unordered_map<K,V> |
544
+ | Optional[T] | std::optional<T> |
545
+ | Tuple[...] | std::tuple<...> |
546
+
486
547
  # Configuration
487
548
 
488
549
  ## cpp.proj
@@ -515,6 +576,22 @@ Options:
515
576
 
516
577
  # Changelog
517
578
 
579
+ ## v3.3.2
580
+ - Fixed version display bug in `includecpp update --version`
581
+ - New `cppy convert` command for Python <-> C++ code conversion
582
+ - Convert Python to optimized C++ with `--cpp` flag
583
+ - Convert C++ to Python with `--py` flag
584
+ - `--no-h` flag to skip header generation
585
+ - `cppy analyze` command to inspect code structure
586
+ - `cppy types` command to view type mapping tables
587
+ - Full support for classes, structs, functions, templates
588
+
589
+ ## v3.3.1
590
+ - Fixed `ai generate --t-new-module` not creating files (tool parser bug)
591
+ - Fixed `ai generate --t-plan` not executing after planning (now runs automatically)
592
+ - Added JSON-style tool call parsing as fallback
593
+ - Improved prompts with explicit format instructions
594
+
518
595
  ## v3.3.0
519
596
  - New `ai generate "<task>"` - Super assistant with tool execution
520
597
  - New `ai tools` - List available AI tools
@@ -586,4 +663,4 @@ Options:
586
663
 
587
664
  ---
588
665
 
589
- MIT License | v3.3.0 | [GitHub](https://github.com/liliassg/IncludeCPP)
666
+ MIT License | v3.3.2 | [GitHub](https://github.com/liliassg/IncludeCPP)
@@ -16,6 +16,7 @@ setup.py
16
16
  ./includecpp/core/build_manager.py
17
17
  ./includecpp/core/cpp_api.py
18
18
  ./includecpp/core/cpp_api.pyi
19
+ ./includecpp/core/cppy_converter.py
19
20
  ./includecpp/core/error_catalog.py
20
21
  ./includecpp/core/error_formatter.py
21
22
  ./includecpp/core/exceptions.py
@@ -45,6 +46,7 @@ includecpp/core/ai_integration.py
45
46
  includecpp/core/build_manager.py
46
47
  includecpp/core/cpp_api.py
47
48
  includecpp/core/cpp_api.pyi
49
+ includecpp/core/cppy_converter.py
48
50
  includecpp/core/error_catalog.py
49
51
  includecpp/core/error_formatter.py
50
52
  includecpp/core/exceptions.py