Cargo Features

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

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 ^2.0 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

solver default

Enable a system-of-equations solver, in the fidget::solver module

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!(...).