Cargo Features

[dependencies]
fidget = { version = "0.2.6", default-features = false, features = ["jit", "rhai", "render", "mesh", "eval-tests"] }
default = jit, mesh, render, rhai

These default features are set whenever fidget is added without default-features = false somewhere in the dependency tree.

jit default

Enables fast evaluation via a JIT compiler. This is exposed in the fidget::jit module, and is supported on aarch64-apple-darwin, aarch64-unknown-linux-*, and x86_64-unknown-linux-*. There's no way to disable the feature on other platforms (Cargo issue); users will have to disable it manually via default-features = false.

Enables dynasmrt and libc

dynasmrt:

JIT

rhai default

Enable Rhai bindings, in the fidget::rhai module

Enables rhai

Rhai

render default

Enable 2D and 3D rendering, in the fidget::render module

mesh default

Enable 3D meshing, in the fidget::mesh module

Enables crossbeam-deque

Meshing

eval-tests

Enable eval-tests if you're writing your own Shape / evaluators and want to unit-test them. When enabled, the crate exports a set of macros to test each evaluator type, e.g. float_slice_tests!(...).