openscad-cpp-evaluator 0.4.6__tar.gz → 0.4.7__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.
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/PKG-INFO +1 -1
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/pyproject.toml +1 -1
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/expr_eval.cpp +17 -1
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_expr_eval.cpp +17 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/.github/workflows/ci.yml +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/.github/workflows/wheels.yml +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/.gitignore +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/.gitmodules +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/CLAUDE.md +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/LICENSE +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/README.md +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/bindings/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/bindings/module.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/cmake/embed_font.cmake +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/examples/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/examples/eval_perf_benchmark.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/examples/manifold_cache_reuse.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/examples/minimal_debugger.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/.github/workflows/ci.yml +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/.gitignore +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/CLAUDE.md +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/README.md +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/api.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/ast_node.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/comments.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/declarations.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/expression.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/module_instantiation.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/scope_builder.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/vector_element.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/comments.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/position.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/pretty_print.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/scope.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/serialization.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/include/openscad_cpp_parser/source_map.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/api.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/ast/ast_node.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/ast/declarations.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/ast/expression.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/ast/format_utils.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/ast/module_instantiation.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/ast/scope_builder.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/ast/vector_element.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/comment_attach_internal.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/comments.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/grammar/driver.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/grammar/driver.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/grammar/lexer.l +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/grammar/lexer_api.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/grammar/oscad_location.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/grammar/parser.y +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/inline_comment_attach.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/position.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/pretty_print.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/scope.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/serialization/json_io.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/serialization/yaml_io.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/src/source_map.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_assignments.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_ast_generation.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_comments_and_files.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_const_borrow.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_control.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_expressions.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_functions.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_helpers.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_inline_comments.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_lexical.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_modules.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_node_str.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_pretty_print.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_scope.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_serialization.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_smoke.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_source_map.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_use_include.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tests/test_vectors.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tools/cli/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/tools/cli/main.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/bound_args.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/bytecode.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/bytecode_compiler.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/bytecode_vm.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/call_args.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/colored_body.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/csg_node.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/css_colors.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/debug_hooks.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/debug_repl.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/dispatch.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/dxf_svg_import.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/eval_context.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/eval_error.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/eval_use.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/evaluator.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/export.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/font_provider.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/function_builtins.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/import_builtin.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/manifold_cache.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/mesh_import.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/osc_range.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/profile.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/scope_trail.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/segments.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/stb_font_provider.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/surface_load.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/text_metrics.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/value.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/include/openscad_cpp_evaluator/zip_stored.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/python/openscad_cpp_evaluator/__init__.py +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/resources/fonts/LICENSE +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/resources/fonts/LiberationSans-Regular.ttf +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/booleans.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/builtins.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/call_args.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/color.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/control.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/extrude.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/function_builtins.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/import.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/modifiers.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/primitives_2d.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/primitives_3d.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/registry.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/roof.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/segments.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/surface.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/text.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/topology.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/transforms.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/bytecode_compiler.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/bytecode_vm.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/colored_body.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/csg_generate.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/csg_resolve.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/css_colors.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/debug/debug_repl.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/debug_profile.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/eval_context.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/eval_error.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/eval_use.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/export.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/import/dxf_import.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/import/mesh_import.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/import/surface_load.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/import/svg_import.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/manifold_cache.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/stmt_eval.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/text/stb_font_provider.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/text/text_metrics.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/user_calls.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/value.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/zip_stored.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_booleans.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_bytecode_compiler.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_cli.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_control_flow.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_csg_tree.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_debug_hooks.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_dxf_svg_import.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_eval_context.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_export.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_extrude_roof.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_function_builtins.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_helpers.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_import_export.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_manifold_cache.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_multi_color_merge.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_primitives.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_profiling.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_python_bindings.py +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_scope_trail.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_scoping.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_surface.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_tail_calls.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_text.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_transforms.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_use.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_value.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_viewport_params.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_zip_stored.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tools/cli/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tools/cli/cli_lib.cpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tools/cli/cli_lib.hpp +0 -0
- {openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tools/cli/main.cpp +0 -0
|
@@ -103,7 +103,23 @@ Value Evaluator::evalIdentifier(const std::string& name, const oscad::Position*
|
|
|
103
103
|
if (const Value* v = ctx.let_->find(name)) return *v;
|
|
104
104
|
|
|
105
105
|
if (!name.empty() && name[0] == '$') {
|
|
106
|
-
|
|
106
|
+
// $-prefixed names are dynamic variables: a completely separate
|
|
107
|
+
// namespace from lexically-scoped identifiers, never requiring a
|
|
108
|
+
// scope declaration (unlike a bare identifier). Found via
|
|
109
|
+
// BelfrySCAD/BOSL2's constants.scad `get_slop()`
|
|
110
|
+
// (`is_undef($slop) ? 0 : $slop` with $slop never assigned
|
|
111
|
+
// anywhere) producing a spurious "Ignoring unknown variable
|
|
112
|
+
// '$slop'" warning here but not through the bytecode VM's
|
|
113
|
+
// Op::LoadDyn (bytecode_vm.cpp), which already does exactly
|
|
114
|
+
// this -- find in ctx.dyn, undef if absent, no scope-lookup
|
|
115
|
+
// fallback, no warning, ever. Verified against real OpenSCAD.app:
|
|
116
|
+
// no warning for a never-set $-variable. Must return here
|
|
117
|
+
// unconditionally rather than falling through to the
|
|
118
|
+
// scope->lookupVariable() check below, which can never resolve a
|
|
119
|
+
// $-name anyway (dynamic variables aren't scope-declarable) and
|
|
120
|
+
// exists only for plain identifiers.
|
|
121
|
+
const Value* v = ctx.dyn->find(name);
|
|
122
|
+
return v ? *v : Value{};
|
|
107
123
|
}
|
|
108
124
|
|
|
109
125
|
if (name == "PI") return Value{std::numbers::pi};
|
|
@@ -52,6 +52,23 @@ TEST(ExprEvalIdentifiers, UnknownVariableWarnsAndIsUndef) {
|
|
|
52
52
|
EXPECT_NE(lastWarning.find("Ignoring unknown variable 'nope'"), std::string::npos);
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
+
TEST(ExprEvalIdentifiers, UndefinedDollarVariableIsUndefWithNoWarning) {
|
|
56
|
+
// Found via BOSL2's constants.scad: `function get_slop() = is_undef($slop)
|
|
57
|
+
// ? 0 : $slop;` with $slop never assigned anywhere in the script. Real
|
|
58
|
+
// OpenSCAD.app produces no warning at all -- $-prefixed names are a
|
|
59
|
+
// separate, always-implicitly-available namespace, never requiring a
|
|
60
|
+
// scope declaration the way a bare identifier does. This port's
|
|
61
|
+
// bytecode VM (Op::LoadDyn, bytecode_vm.cpp) already got this right by
|
|
62
|
+
// construction; the plain interpreter incorrectly fell through to the
|
|
63
|
+
// same "Ignoring unknown variable" path a genuinely undeclared bare
|
|
64
|
+
// identifier hits.
|
|
65
|
+
std::string lastWarning;
|
|
66
|
+
Evaluator ev([&](const std::string& msg) { lastWarning = msg; });
|
|
67
|
+
Value v = evalSrc("$slop", ev);
|
|
68
|
+
EXPECT_TRUE(std::holds_alternative<std::monostate>(v));
|
|
69
|
+
EXPECT_TRUE(lastWarning.empty());
|
|
70
|
+
}
|
|
71
|
+
|
|
55
72
|
TEST(ExprEvalIdentifiers, ResolvesViaScopeFallbackWhenNotEagerlyBound) {
|
|
56
73
|
// "a" is a real top-level declaration but evalChildren() was never run,
|
|
57
74
|
// so ctx.let_ has no eager binding for it -- this exercises
|
|
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
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/examples/eval_perf_benchmark.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/examples/manifold_cache_reuse.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/CLAUDE.md
RENAMED
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/external/openscad_cpp_parser/README.md
RENAMED
|
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
|
|
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
|
|
File without changes
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/function_builtins.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/primitives_2d.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/builtins/primitives_3d.cpp
RENAMED
|
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
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/src/text/stb_font_provider.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_bytecode_compiler.cpp
RENAMED
|
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
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_function_builtins.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_multi_color_merge.cpp
RENAMED
|
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
|
{openscad_cpp_evaluator-0.4.6 → openscad_cpp_evaluator-0.4.7}/tests/test_viewport_params.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|