Cargo Features

[dependencies]
fidget = { version = "0.3.0", 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 macOS, Linux, and Windows (i.e. all supported platforms except WebAssembly). There's no way to disable the feature on specific 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 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!(...).