Re-exports
pub use crate::raw_utils::EncodingError;
pub use crate::memorypool::*;
pub use crate::raw_utils::*;
pub use crate::termcolors::*;
pub use crate::parser::*;
pub use crate::stringparser::*;
Modules
Macros
Construct a expry::DecodedValue
from a JSON-like literal.
Structs
Reference to expry expression bytecode.
Self-contained expry expression bytecode.
An provided implementation of the custom function handler, that directly throws an error when invoked.
Reference to a expry value.
Self-contained expry value (in encoded form).
Enums
The central data type of Binary. It is modelled similar to JSON, however, contains a couple of noteworthy differences.
Described the different types of value expry
supports.
Traits
Trait that can be used to pass a custom user-provided function handler to expry
eval functions.
Functions
Compiles an expression to bytecode that can quickly be evaluated using expry_eval
and
expry_slice
.
Formats errors from compilation with a nice layout and underlines on the source lines, so that users can easily understand what to do. Returns the line number of the main error, and a string that can be displayed to the user.
Evaluate expression bytecode in the context of the given value
, resulting in a decoded
object.
Evaluate expression bytecode in the context of the given value
, resulting in a decoded
object. This version supports custom user defined functions.
create a binary object from individual fields
Creates an object with a single key-value pair inside. Expects value
to be binary encoded.
Evaluate expression bytecode in the context of the given value
, resulting in an encoded
object.
Evaluate expression bytecode in the context of the given value
, resulting in an encoded
object. This version supports custom user defined functions.
Returns empty key.
Calculates the key as used in this crate from a str. There is also a [u8]
version.
Calculates the key as used in this crate from an u8 slice. There is also a str
version.
Merges two objects. Left hand side take preference (so the left hand side value of keys occuring in both is taken). Always producing a compact object
Type Definitions
the text for Binary keys (in key-values).
keys in Binary uses a simple 8-bit hash to speed up look ups.