Cargo Features

devela has no features set by default.

[dependencies]
devela = { version = "0.21.2", features = ["alloc", "std", "no_std", "all", "data", "exec", "mem", "mem_bit", "num", "num_geom", "num_rand", "time", "safe", "safe_mem", "safe_time", "unsafe", "unsafe_array", "unsafe_async", "unsafe_const", "unsafe_dyn", "unsafe_niche", "unsafe_ptr", "unsafe_slice", "unsafe_str", "unsafe_thread", "nightly", "nightly_coro", "nightly_doc", "nightly_simd", "nightly_stabilized", "dep_all", "dep_exec", "dep_text", "atomic", "const-str", "hashbrown", "libm", "log", "memchr", "portable-atomic", "rand_core", "unicode-segmentation", "unicode-width", "wide"] }

198 (300 max)

alloc hashbrown? std?

* Environment features *
------------------------------------------------------------------------------

Enables extern_crate_alloc of bytemuck, alloc of optional memchr and optional rand_core

Affects ext::ExtAny.as_any_box, buffer::DstVecUsize, coro::CoroRun, ext::ExtSlice.slice_into_vec, ext::ExtSlice.slice_try_into_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, other::Read.read_to_end

std = alloc

Enables std of optional atomic, std of optional log, optional memchr, optional rand_core, and optional wide and extern_crate_std of bytemuck

bytemuck:

Enable features requiring items from extern crate std.

Affects ext::ExtFuture.block_on, project::crate_root, project::crate_root_string, int::prime_number_theorem

no_std
all = code, data, exec, mem, num, sys, text, time

* Modules features trees *
------------------------------------------------------------------------------

code data all?
exec all?

Enables zeroable_atomics of bytemuck

bytemuck:

Implement Zeroable for std::sync::atomic types.

mem all? = mem_bit
mem_bit mem?

BitSize

Affects examples::bitfield, examples::enumset

num all? = num_geom, num_rand
num_geom num?

geometric types and operations.

Affects num::geom

num_rand num?

random number generators.

Affects num::rand

sys text time all?
safe = safe_code, safe_data, safe_exec, safe_mem, safe_num, safe_sys, safe_text, safe_time
  • Safety features trees *

To use unsafe functionality:

  1. enable the desired unsafe feature.
  2. don't enable the safe feature for that module. in specific modules:
safe_code safe_data safe_exec safe_mem safe?
safe_num safe_sys safe_text safe_time safe?
unsafe = unsafe_array, unsafe_async, unsafe_const, unsafe_dyn, unsafe_niche, unsafe_ptr, unsafe_slice, unsafe_str, unsafe_thread

for specific purposes:

unsafe_array unsafe?

faster array initialization, UninitArray.

unsafe_async unsafe?

task_waker_noop, CoroRun.

Affects waker::task_waker_noop

unsafe_const unsafe?

extra const methods.

unsafe_dyn unsafe?

DSTs in the stack, no_std Error dyn impls, ExtAny::downcast*.

Affects ext::ExtAny.downcast_ref, ext::ExtAny.downcast_mut, data::dst

unsafe_niche unsafe?

unchecked niche constructors.

unsafe_ptr unsafe?

Pinned, pop methods without Clone.

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_thread unsafe?

Logging::set_logger_racy.

nightly = nightly_coro, nightly_doc, nightly_simd, nightly_stabilized

* Nightly features tree *
------------------------------------------------------------------------------
enables all the following features:

nightly_coro nightly?

coroutines, coroutine_trait, iter_from_coroutine

nightly_doc nightly?

doc_cfg, doc_notable_trait

nightly_simd nightly?

portable_simd

nightly_stabilized nightly?

stabilized features to be released soon:

_bit_u8

Affects examples::bitfield, examples::enumset

_destaque_u16

Affects definitions::DestaqueU16

_destaque_u32

Affects definitions::DestaqueU32

_destaque_u8

Affects definitions::DestaqueU8

_destaque_usize

Affects definitions::DestaqueUsize

_float_f64

Affects int::prime_number_theorem

_stack_u16

Affects definitions::StackU16

_stack_u32

Affects definitions::StackU32

_stack_u8

Affects definitions::StackU8

_stack_usize

Affects definitions::StackUsize

dep_all = atomic, const-str, hashbrown, libm, log, memchr, portable-atomic, rand_core, unicode-segmentation, unicode-width, wide

* Dependencies features *
------------------------------------------------------------------------------
enable groups of dependencies:

dep_exec = atomic, portable-atomic
dep_text = const-str, memchr, unicode-segmentation, unicode-width
atomic dep_all? dep_exec?

Enables atomic

const-str dep_all? dep_text?

Enables const-str

optional:

hashbrown dep_all? = alloc

Enables hashbrown ^0.14.5

libm dep_all?

Enables libm

log dep_all?

Enables log

memchr dep_all? dep_text?

Enables memchr

portable-atomic dep_all? dep_exec?

Enables portable-atomic

rand_core dep_all?

Enables rand_core

unicode-segmentation dep_all? dep_text?

Enables unicode-segmentation

unicode-width dep_all? dep_text?

Enables unicode-width ^0.1.13

wide dep_all?

Enables wide