openscad-cpp-evaluator 0.13.9__tar.gz → 0.13.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.
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/PKG-INFO +1 -1
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/pyproject.toml +1 -1
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/booleans.cpp +17 -1
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_booleans.cpp +19 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/.github/workflows/ci.yml +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/.github/workflows/wheels.yml +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/.gitignore +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/.gitmodules +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/CLAUDE.md +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/LICENSE +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/README.md +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/bindings/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/bindings/module.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/cmake/embed_font.cmake +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/examples/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/examples/eval_perf_benchmark.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/examples/manifold_cache_reuse.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/examples/minimal_debugger.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/.github/workflows/ci.yml +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/.gitignore +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/CLAUDE.md +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/README.md +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/api.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/ast_node.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/comments.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/declarations.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/expression.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/module_instantiation.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/scope_builder.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast/vector_element.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/ast.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/comments.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/position.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/pretty_print.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/scope.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/serialization.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/include/openscad_cpp_parser/source_map.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/api.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/ast/ast_node.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/ast/declarations.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/ast/expression.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/ast/format_utils.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/ast/module_instantiation.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/ast/scope_builder.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/ast/vector_element.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/comment_attach_internal.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/comments.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/grammar/driver.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/grammar/driver.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/grammar/lexer.l +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/grammar/lexer_api.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/grammar/oscad_location.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/grammar/parser.y +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/inline_comment_attach.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/position.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/pretty_print.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/scope.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/serialization/json_io.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/serialization/yaml_io.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/src/source_map.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_assignments.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_ast_generation.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_comments_and_files.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_const_borrow.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_control.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_expressions.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_functions.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_helpers.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_inline_comments.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_lexical.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_modules.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_node_str.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_pretty_print.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_scope.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_serialization.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_smoke.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_source_map.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_use_include.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tests/test_vectors.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tools/cli/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/external/openscad_cpp_parser/tools/cli/main.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/bound_args.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/bytecode.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/bytecode_compiler.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/bytecode_vm.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/call_args.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/colored_body.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/csg_node.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/css_colors.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/debug_hooks.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/debug_repl.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/dispatch.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/dxf_svg_import.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/eval_context.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/eval_error.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/eval_use.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/evaluator.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/export.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/font_provider.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/function_builtins.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/import_builtin.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/manifold_cache.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/mesh_import.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/osc_range.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/profile.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/scope_trail.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/segments.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/stb_font_provider.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/surface_load.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/text_metrics.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/value.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/include/openscad_cpp_evaluator/zip_stored.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/python/openscad_cpp_evaluator/__init__.py +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/resources/fonts/LICENSE +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/resources/fonts/LiberationSans-Regular.ttf +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/builtins.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/call_args.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/color.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/control.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/extrude.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/function_builtins.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/import.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/modifiers.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/primitives_2d.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/primitives_3d.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/registry.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/roof.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/segments.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/surface.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/text.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/topology.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/transforms.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/bytecode_compiler.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/bytecode_vm.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/colored_body.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/csg_generate.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/csg_resolve.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/css_colors.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/debug/debug_repl.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/debug_profile.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/eval_context.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/eval_error.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/eval_use.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/export.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/expr_eval.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/import/dxf_import.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/import/mesh_import.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/import/surface_load.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/import/svg_import.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/manifold_cache.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/stmt_eval.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/text/stb_font_provider.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/text/text_metrics.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/user_calls.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/value.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/zip_stored.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_bytecode_compiler.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_cli.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_control_flow.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_csg_tree.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_debug_hooks.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_dxf_svg_import.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_eval_context.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_export.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_expr_eval.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_extrude_roof.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_function_builtins.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_helpers.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_import_export.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_manifold_cache.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_multi_color_merge.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_primitives.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_profiling.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_python_bindings.py +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_scope_trail.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_scoping.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_surface.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_tail_calls.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_text.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_transforms.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_use.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_value.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_viewport_params.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_zip_stored.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tools/cli/CMakeLists.txt +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tools/cli/cli_lib.cpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tools/cli/cli_lib.hpp +0 -0
- {openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tools/cli/main.cpp +0 -0
|
@@ -176,7 +176,23 @@ std::vector<ColoredBody> generateCsg(Evaluator& ev, const CSGParams& params, con
|
|
|
176
176
|
|
|
177
177
|
std::vector<ColoredBody> bodies3d, sections2d;
|
|
178
178
|
for (const ColoredBody& c : split.foreground) {
|
|
179
|
-
|
|
179
|
+
// A body whose own Manifold::Status() isn't NoError (e.g.
|
|
180
|
+
// NonFiniteVertex, from a degenerate accumulated transform deep
|
|
181
|
+
// in an unrelated ancestor's positioning math -- found via a
|
|
182
|
+
// real user script, snappy-reprap's z_tower_assembly chain,
|
|
183
|
+
// where one already-invalid sub-part silently zeroed out an
|
|
184
|
+
// entire 65-operand union of otherwise-valid geometry) must
|
|
185
|
+
// never reach Manifold's own `+`/`-`/`^` operators: unlike a
|
|
186
|
+
// genuinely empty operand (0 triangles, NoError), Manifold
|
|
187
|
+
// propagates a non-NoError status through boolean ops onto the
|
|
188
|
+
// WHOLE result instead of treating it as a no-op contributor,
|
|
189
|
+
// so a single bad part silently discards every valid sibling.
|
|
190
|
+
// Real OpenSCAD's CGAL backend doesn't hit this at all here
|
|
191
|
+
// (more robust to the same input) -- dropping the one invalid
|
|
192
|
+
// operand and unioning everything else is the closest match to
|
|
193
|
+
// its own behavior available without new numerical-robustness
|
|
194
|
+
// work on Manifold's own boolean ops.
|
|
195
|
+
if (c.body && c.body->Status() == manifold::Manifold::Error::NoError) bodies3d.push_back(c);
|
|
180
196
|
}
|
|
181
197
|
for (const ColoredBody& c : split.foreground) {
|
|
182
198
|
if (c.section) sections2d.push_back(c);
|
|
@@ -87,6 +87,25 @@ TEST(Difference, EmptySubtractorLeavesBaseUnchanged) {
|
|
|
87
87
|
EXPECT_NEAR(e.bodies[0].body->Volume(), 64.0, 1e-6);
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
+
TEST(Union, OneInvalidOperandDoesNotDiscardValidSiblings) {
|
|
91
|
+
// Regression: Manifold's own `+` propagates a non-NoError Status()
|
|
92
|
+
// (e.g. NonFiniteVertex, from a degenerate NaN-vertex polyhedron here --
|
|
93
|
+
// in the wild, from an accumulated transform deep in an unrelated
|
|
94
|
+
// ancestor's own positioning math) onto the WHOLE combined result
|
|
95
|
+
// instead of treating the bad operand as a no-op contributor. Before
|
|
96
|
+
// filtering invalid operands out in generateCsg, a single bad part
|
|
97
|
+
// anywhere in a many-operand union() silently discarded every valid
|
|
98
|
+
// sibling too -- found via a real user project (snappy-reprap) where
|
|
99
|
+
// this zeroed out an entire ~65-part extruder assembly with no warning.
|
|
100
|
+
Evaluated e = evalSrc("union() {"
|
|
101
|
+
" polyhedron(points=[[0,0,0],[2,0,0],[0,2,0],[0/0,0,2]],"
|
|
102
|
+
" faces=[[0,1,2],[0,3,1],[0,2,3],[1,3,2]]);"
|
|
103
|
+
" translate([10,0,0]) cube(2);"
|
|
104
|
+
"}");
|
|
105
|
+
ASSERT_EQ(e.bodies.size(), 1u);
|
|
106
|
+
EXPECT_NEAR(e.bodies[0].body->Volume(), 8.0, 1e-6); // just the valid cube -- the NaN polyhedron is dropped, not fatal
|
|
107
|
+
}
|
|
108
|
+
|
|
90
109
|
// -- 2D-native boolean CSG (union/difference/intersection applied directly
|
|
91
110
|
// to 2D children, not mediated through linear_extrude()) -----------------
|
|
92
111
|
|
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/.github/workflows/wheels.yml
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
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/examples/eval_perf_benchmark.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/examples/manifold_cache_reuse.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/examples/minimal_debugger.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
|
|
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.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/function_builtins.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/primitives_2d.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/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
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/builtins/transforms.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
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/src/import/surface_load.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/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
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_bytecode_compiler.cpp
RENAMED
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_control_flow.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_dxf_svg_import.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_eval_context.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_extrude_roof.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_function_builtins.cpp
RENAMED
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_import_export.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_manifold_cache.cpp
RENAMED
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_multi_color_merge.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscad_cpp_evaluator-0.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_python_bindings.py
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.13.9 → openscad_cpp_evaluator-0.13.10}/tests/test_viewport_params.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|