Expand description
This module implements the backing representation of runtime values in the Nix language.
Re-exports§
pub use attrs::NixAttrs;
pub use builtin::Builtin;
pub use builtin::BuiltinResult;
pub use function::Closure;
pub use function::Lambda;
pub use list::NixList;
pub use path::canon_path;
pub use string::NixContext;
pub use string::NixContextElement;
pub use string::NixString;
pub use thunk::Thunk;
pub use self::thunk::ThunkSet;
Modules§
- arbitrary πSupport for configurable generation of arbitrary nix values
- attrs πThis module implements Nix attribute sets. They have flexible backing implementations, as they are used in very versatile use-cases that are all exposed the same way in the language surface.
- builtin πThis module implements the runtime representation of a Nix builtin.
- function πThis module implements the runtime representation of functions.
- json π
- list πThis module implements Nix lists.
- path π
- string πThis module implements Nix language strings.
- thunk πThis module implements the runtime representation of Thunks.
Macros§
- gen_cast πGenerate an
as_*
method returning a reference to the expected type, or a type error. This only works for types that implementCopy
, as returning a reference to an inner thunk value is not possible. Generate anas_*/to_*
accessor method that returns either the expected type, or a type error. - gen_cast_mut πGenerate an
as_*_mut/to_*_mut
accessor method that returns either the expected type, or a type error. - gen_is πGenerate an
is_*
type-checking method.
Structs§
- Describes what input types are allowed when coercing a
Value
to a string
Enums§
- Controls what kind of by-pointer equality comparison is allowed.
Statics§
- WRITE_FLOAT_OPTIONS π
Traits§
- TotalDisplay π
Functions§
- total_fmt_float πEmulates the C++-Nix style formatting of floats, which diverges significantly from Rustβs native float formatting.
- type_error π