Cargo Features
Devela has no features set by default.
[dependencies]
devela = { version = "0.22.1", features = ["alloc", "std", "no_std", "all", "code", "error", "data", "hash", "lang", "media", "audio", "draw", "color", "font", "image", "midi", "num", "alg", "geom", "prim", "cast", "join", "split", "rand", "unit", "wave", "phys", "time", "sys", "io", "mem", "bit", "linux", "windows", "text", "ascii", "fmt", "str", "ui", "layout", "work", "process", "sync", "thread", "safe", "safe_lang", "safe_media", "safe_draw", "safe_image", "safe_num", "safe_phys", "safe_time", "safe_sys", "safe_mem", "safe_text", "safe_ui", "safe_layout", "safe_work", "safest", "unsafe", "unsafe_array", "unsafe_async", "unsafe_hint", "unsafe_layout", "unsafe_niche", "unsafe_ptr", "unsafe_slice", "unsafe_str", "unsafe_sync", "unsafe_syscall", "unsafe_thread", "nightly", "nightly_allocator", "nightly_autodiff", "nightly_bigint", "nightly_coro", "nightly_doc", "nightly_float", "nightly_simd", "nightly_stable", "nightly_stable_next1", "nightly_stable_next2", "nightly_stable_later", "dep_all", "alloc_deps", "linux_deps", "text_deps", "work_deps", "dep_allocator_api2", "dep_atomic", "dep_bumpalo", "dep_bytemuck", "dep_const_str", "dep_crossterm", "dep_hashbrown", "dep_jiff", "dep_js_sys", "dep_kira", "dep_libm", "dep_log", "dep_memchr", "dep_midir", "dep_miniquad", "dep_nc", "dep_portable_atomic", "dep_pyo3", "dep_rand_core", "dep_rayon", "dep_raw_cpuid", "dep_regex_lite", "dep_rkyv", "dep_rodio", "dep_rustix", "dep_safe_arch", "dep_serde", "dep_stringzilla", "dep_symphonia", "dep_sysinfo", "dep_tinyaudio", "dep_tokio", "dep_tracing", "dep_unicode_segmentation", "dep_unicode_width", "dep_wasm_bindgen", "dep_web_sys", "dep_wide", "dep_winnow"] }
254/300 (46 remaining), 133 visible, 121 hidden
- alloc alloc_deps? dep_hashbrown? dep_jiff? std?
-
* Environment features *
------------------------------------------------------------------------------Enables alloc of optional allocator-api2, extern_crate_alloc of optional bytemuck, alloc of optional jiff, optional memchr, optional rand_core ^0.6.4, optional rkyv, optional rustix, optional serde, and optional winnow
Affects
ext::ExtAny.as_any_box
,buffer::DstVecUsize
,base::ColorBase.color_components_vec
,vector::VecVector
,point::VecPoints
,num_trait::NumInt.int_factors
,num_trait::NumInt.int_ref_factors
,num_trait::NumInt.int_factors_proper
,num_trait::NumInt.int_ref_factors_proper
,num_trait::NumInt.int_factors_prime
,num_trait::NumInt.int_ref_factors_prime
,num_trait::NumInt.int_factors_prime_unique
,num_trait::NumInt.int_ref_factors_prime_unique
,ref::NumRefInt.int_ref_factors
,ref::NumRefInt.int_ref_factors_proper
,ref::NumRefInt.int_ref_factors_prime
,ref::NumRefInt.int_ref_factors_prime_unique
,traits::Unit.reduce_chain_i64
,traits::Unit.reduce_chain_i128
,other::IoRead.read_to_end
… - std dep_crossterm? dep_pyo3? dep_regex_lite? dep_sysinfo? = alloc
-
Enables std of optional allocator-api2, optional atomic, and optional bumpalo, std of optional jiff, optional js-sys, optional log, optional memchr, optional nc, optional rand_core ^0.6.4, optional raw-cpuid, optional regex-lite, optional rkyv, optional rustix, optional serde, optional tracing, optional wasm-bindgen, optional web-sys, optional wide, and optional winnow and extern_crate_std of optional bytemuck
bytemuck:
Enable features requiring items from
extern crate std
.Affects
reexports::HashMapStd
,reexports::HashSetStd
,ext::ExtFuture.block_on
,fns::prime_number_theorem
,traits::Unit.reduce
,traits::Unit.reduce_chain
… - no_std
-
enables functionality incompatible with or substitute of
std
- all = code, data, lang, media, num, phys, sys, text, ui, work
-
- Module features *
They set automatic compile flags named
*··
, used for reflection. For example,num··
will be set if any num submodule feature is enabled. - code all?
- error
-
AllError, DataError, NumError, TextError…
- data all? = hash
- hash data?
-
HashFnv, HashFx
- lang all?
- media all? = audio, color, draw, font, image, midi
- audio media?
-
Affects
media::audio
… - draw media?
-
Affects
media::draw
… - color media?
-
Affects
media::color
… - font media?
-
Affects
media::font
… - image media?
-
Affects
media::image
… - midi media?
-
Affects
media::midi
… - num all? = alg, geom, prim, rand, unit, wave
- alg num?
-
algebra (linear & symbolic)
Affects
num::alg
… - geom num?
-
geometry
Affects
num::geom
… - prim num? = cast, join, split
- cast prim?
-
PrimitiveCast
- join prim?
-
PrimitiveJoin
- split prim?
-
PrimitiveSplit
- rand num?
-
random number generators
Affects
num::rand
… - unit num?
-
unit prefixes
- wave num?
-
wavelets
Affects
num::wave
… - phys all? = time
- time phys?
- sys all? = io, mem
- io sys?
-
no_std_io…
- mem sys? = bit
- bit mem?
-
BitSize
Affects
examples::enumset
… - linux linux_deps?
-
os
Affects
os::linux
… - windows
-
Enables winrt of optional midir and windows of optional crossterm
crossterm:
Disables winapi dependencies from being included into the binary (SHOULD NOT be disabled on windows).
- text all? text_deps? = ascii, fmt, str
- ascii text?
-
AsciiChar
- fmt text?
-
NumStr
- str text?
-
Str, ExtStr, ExtString
- ui all? = layout
- layout ui?
-
Affects
ui::layout
… - work all? work_deps?
-
Enables zeroable_atomics of optional bytemuck
bytemuck:
Implement
Zeroable
forstd::sync::atomic
types. - process
- sync
- thread
-
Enables rt and rt-multi-thread of optional tokio
- safe safest? = safe_code, safe_data, safe_lang, safe_media, safe_num, safe_phys, safe_sys, safe_text, safe_work
-
- Safety features *
They are prefixed with either
safe
orunsafe
. Safe features are associated to modules, and unsafe features to purposes.Usage:
- enable the desired
unsafe
feature. - don't enable the
safe
feature for that module.
The
safest
feature forbids unsafe transitively in dependencies (except for Rust'score
,alloc
andstd
).In sync with ./build/features.rs::[UN]SAFE[ST] & ./src/lib.rs::safety)
safe··
- safe_code safe_data safe_lang safe?
- safe_media safe? = safe_audio, safe_color, safe_draw, safe_font, safe_image
- safe_audio safe_color safe_draw safe_media?
- safe_font safe_image safe_media?
- safe_num safe?
- safe_phys safe? = safe_time
-
[1]
- safe_time safe_phys?
- safe_sys safe? = safe_io, safe_mem
-
[2]
- safe_io safe_mem safe_sys?
- safe_text safe?
- safe_ui = safe_layout
-
[1]
- safe_layout safe_ui?
- safe_work safe?
- safest = safe
-
safe_async
- unsafe = unsafe_array, unsafe_async, unsafe_hint, unsafe_layout, unsafe_niche, unsafe_ptr, unsafe_slice, unsafe_str, unsafe_sync, unsafe_syscall, unsafe_thread
-
unsafe··
- unsafe_array unsafe?
-
faster array initialization, UninitArray.
- unsafe_async unsafe?
-
task_waker_noop, CoroRun.
Affects
waker::task_waker_noop
… - unsafe_hint unsafe?
-
unreachable_unchecked, unchecked arithmetic.
- unsafe_layout unsafe?
-
MemPod, DSTs in the stack, ExtAny::downcast*, Mem::*.
Affects
ext::ExtAny.downcast_ref
,ext::ExtAny.downcast_mut
,data::dst
,ext::ExtMem.mem_zeroed
,ext::ExtMem.mem_transmute_copy
,pod::MemPod
… - unsafe_niche unsafe?
-
unchecked niche constructors.
- unsafe_ptr unsafe?
-
Pinned, pop methods without Clone, Ptr::*.
- unsafe_slice unsafe?
-
extra slice methods, avoid bound checks.
Affects
ext::ExtMem.mem_as_bytes
,ext::ExtMem.mem_as_bytes_mut
… - unsafe_str unsafe?
-
unchecked utf-8 char and &str conversions.
- unsafe_sync unsafe?
-
Send and Sync impls.
- unsafe_syscall unsafe?
-
os syscalls.
- unsafe_thread unsafe?
-
Logging::set_logger_racy, Env::{remove_var, set_var}.
- nightly = nightly_allocator, nightly_autodiff, nightly_bigint, nightly_coro, nightly_doc, nightly_float, nightly_simd, nightly_stable
-
- Nightly features *
They are prefixed with
nightly_
. Enabling any of these will set thenightly··
reflection flag.Links
- https://doc.rust-lang.org/unstable-book/library-features.html
- https://releases.rs/
- ./utils/release_dates.rs
- ./DOCS/NIGHTLY.md
nightly··
- nightly_allocator nightly?
-
WAIT: allocator_api
Enables nightly of optional allocator-api2, allocator_api of optional bumpalo, nightly of optional hashbrown
- nightly_autodiff nightly?
-
WAIT: autodiff autodiff
- nightly_bigint nightly?
-
WAIT: bigint_helper_methods bigint_helper_methods
- nightly_coro nightly?
-
WAIT: coroutines coroutines, coroutine_trait, iter_from_coroutine
- nightly_doc nightly?
-
WAIT: doc_cfg WAIT: doc_notable_trait not(doc_auto_cfg)
- nightly_float nightly?
-
WAIT: f16_and_f128 f16, f128
Enables nightly_float of optional bytemuck
- nightly_simd nightly?
-
WAIT: portable_simd portable_simd
- nightly_stable nightly? = nightly_stable_later, nightly_stable_next1, nightly_stable_next2
-
nightly features that should become stable soon enough.
- nightly_stable_next1 nightly_stable?
-
1.85 (+edition 2024)
- nightly_stable_next2 nightly_stable?
-
1.86
- nightly_stable_later nightly_stable?
-
1.?? stable soon enough
- _bit_u8
-
Affects
examples::bitfield
,examples::enumset
… - _char16
-
Affects
definitions::char16
… - _char7
-
Affects
definitions::char7
… - _char8
-
Affects
definitions::char8
… - _destaque_u16
-
Affects
definitions::DestaqueU16
… - _destaque_u32
-
Affects
definitions::DestaqueU32
… - _destaque_u8
-
Affects
definitions::DestaqueU8
… - _destaque_usize
-
Affects
definitions::DestaqueUsize
… - _float_f64
-
Affects
fns::prime_number_theorem
,traits::Unit.reduce
,traits::Unit.reduce_chain
… - _stack_u16
-
Affects
definitions::StackU16
… - _stack_u32
-
Affects
definitions::StackU32
… - _stack_u8
-
Affects
definitions::StackU8
… - _stack_usize
-
Affects
definitions::StackUsize
… - dep_all = dep_allocator_api2, dep_atomic, dep_bumpalo, dep_bytemuck, dep_const_str, dep_crossterm, dep_hashbrown, dep_jiff, dep_js_sys, dep_kira, dep_libm, dep_log, dep_memchr, dep_midir, dep_miniquad, dep_nc, dep_portable_atomic, dep_pyo3, dep_rand_core, dep_raw_cpuid, dep_rayon, dep_regex_lite, dep_rkyv, dep_rodio, dep_rustix, dep_safe_arch, dep_serde, dep_stringzilla, dep_symphonia, dep_sysinfo, dep_tinyaudio, dep_tokio, dep_tracing, dep_unicode_segmentation, dep_unicode_width, dep_wasm_bindgen, dep_web_sys, dep_wide, dep_winnow
-
- Dependency features *
The names are prefixed with
dep_
, using underscores in place of dashes. They are associated to optional dependencies and groups of modules. Enabling any of these will set thedep··
reflection flag.Links
In sync with ./config/dep_all.rs & ./src/_dep.rs
- alloc_deps = alloc, dep_allocator_api2, dep_bumpalo
-
misc. groups of dependencies:
- linux_deps = dep_atomic, dep_bytemuck, dep_nc, dep_rustix, linux
- text_deps = dep_const_str, dep_memchr, dep_regex_lite, dep_stringzilla, dep_unicode_segmentation, dep_unicode_width, text
- work_deps = dep_atomic, dep_portable_atomic, dep_rayon, dep_tokio, work
- dep_allocator_api2 alloc_deps? dep_all?
-
standalone dependencies:
Enables allocator-api2, allocator-api2 of optional bumpalo and optional hashbrown
- dep_atomic dep_all? linux_deps? work_deps?
-
work::sync
Enables atomic
Affects
terminal::LINUX_TERMINAL_STATE
… - dep_bumpalo alloc_deps? dep_all?
-
sys::mem::alloc
Enables bumpalo
- dep_bytemuck dep_all? linux_deps?
-
···
Enables bytemuck, bytemuck of optional safe_arch
Affects
terminal::LINUX_TERMINAL_STATE
… - dep_const_str dep_all? text_deps?
-
text::str
Enables const-str ^0.5.7
- dep_crossterm dep_all? = std
-
ui::term
Enables crossterm
- dep_hashbrown dep_all? = alloc
-
Enables hashbrown, hashbrown of optional pyo3 and hashbrown-0_15 of optional rkyv
rkyv:
External crate support
- dep_jiff dep_all? = alloc
-
phys::time
Enables jiff
- dep_js_sys dep_all?
-
lang::js
Enables js-sys
- dep_kira dep_all?
-
sys::sound
Enables kira
- dep_libm dep_all?
-
num::float
Enables libm
- dep_log dep_all?
-
sys::log
- dep_memchr dep_all? text_deps?
-
text:str
- dep_midir dep_all?
-
media::midi
Enables midir
- dep_miniquad dep_all?
-
sys::screen
Enables miniquad
- dep_nc dep_all? linux_deps?
-
sys::os::linux
Enables nc
- dep_portable_atomic dep_all? work_deps?
-
work::sync
Enables portable-atomic
- dep_pyo3 dep_all? = std
-
lang::py
Enables pyo3
- dep_rand_core dep_all?
-
num::rand
Enables rand_core ^0.6.4
- dep_rayon dep_all? work_deps?
-
work::thread
Enables rayon, multithread of optional sysinfo
- dep_raw_cpuid dep_all?
-
sys::arch
Enables raw-cpuid
- dep_regex_lite dep_all? text_deps? = std
-
text::parse
Enables regex-lite
- dep_rkyv dep_all?
-
data::serde
Enables rkyv
- dep_rodio dep_all?
-
sys::sound
Enables rodio
- dep_rustix dep_all? linux_deps?
-
sys::os
Enables rustix
- dep_safe_arch dep_all?
-
sys::arch
Enables safe_arch
- dep_serde dep_all?
-
Enables serde, serde of optional wide, serde of optional allocator-api2, optional bumpalo, and optional kira
- dep_stringzilla dep_all? text_deps?
-
text::str
Enables stringzilla
- dep_symphonia dep_all?
-
sys::sound
Enables symphonia, symphonia of optional kira and optional rodio
- dep_sysinfo dep_all? = std
-
sys::
Enables sysinfo
- dep_tinyaudio dep_all?
-
sys::sound
Enables tinyaudio
- dep_tokio dep_all? work_deps?
-
work::async
Enables tokio
- dep_tracing dep_all?
-
sys::log
Enables tracing
- dep_unicode_segmentation dep_all? text_deps?
-
text::
Enables unicode-segmentation
- dep_unicode_width dep_all? text_deps?
-
text::
Enables unicode-width
- dep_wasm_bindgen dep_all?
-
lang
Enables wasm-bindgen
- dep_web_sys dep_all?
-
ui::web
Enables web-sys
- dep_wide dep_all?
-
...
Enables wide
- dep_winnow dep_all?
-
text::parse
Enables winnow
Features from optional dependencies
41 (2 required, 39 optional)