#![allow(clippy::too_many_arguments)]
pub mod consts;
pub mod ordered_map;
pub mod re;
pub mod value;
mod major;
mod mini;
pub use value::{Sentinel, Value, DELETE, SKIP};
pub use consts::{
M_KEYPOST, M_KEYPRE, M_VAL, T_ANY, T_BOOLEAN, T_DECIMAL, T_FUNCTION, T_INSTANCE, T_INTEGER,
T_LIST, T_MAP, T_NODE, T_NOVAL, T_NULL, T_NUMBER, T_SCALAR, T_STRING, T_SYMBOL,
};
pub use mini::{
clone, del_prop, esc_re, esc_url, filter, filter_vals, flatten, get_def, get_elem,
get_elem_or_else, get_prop, has_key, is_empty, is_func, is_key, is_list, is_map, is_node,
items, jm, join, join_vals, jsonify, jt, keys_of, keysof_vec, lookup, pad, pathify, re_compile,
re_escape, re_find, re_find_all, re_replace, re_test, set_prop, size, slice, str_key,
stringify, type_name, typify,
};
pub use major::{
check_placement, get_path, get_path_inj, inject, inject_child, injector_args, merge, select,
set_path, transform, validate, walk, Inj, InjectDef, Injection, Modify, NativeFn, WalkClosure,
};
pub use mini::JsonFlags;
#[derive(Debug, Clone)]
pub struct StructError {
pub message: String,
}
impl std::fmt::Display for StructError {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.write_str(&self.message)
}
}
impl std::error::Error for StructError {}
pub struct StructUtility;
impl StructUtility {
pub fn new() -> Self {
StructUtility
}
}
impl Default for StructUtility {
fn default() -> Self {
StructUtility
}
}