doge-runtime 0.2.0

Runtime for the Doge programming language — Value model, operators, builtins, and catchable errors.
Documentation
mod builtins;
mod display;
mod error;
mod functions;
mod methods;
mod objects;
mod ops;
mod ordered_map;
mod stdlib;
mod value;

pub use builtins::{bark, gib, interp, len, range, to_float, to_int, to_str};
pub use error::{
    assert_error, bonk_error, enter_call, error_field, error_value, exit_call, DogeError,
    DogeResult, ErrorKind,
};
pub use functions::{callee_function, cell_get, cell_set, function_arity_error};
pub use methods::{builtin_method, has_builtin_method};
pub use objects::{
    attr_get, attr_get_or_bind, attr_set, method_arity_error, no_such_method, object_class_id,
};
pub use ops::{
    add, bitand, bitnot, bitor, bitxor, div, eq, floordiv, ge, gt, in_, index_get, index_set,
    iter_value, le, lt, mul, ne, neg, not_, not_in, pow, rem, shl, shr, slice_get, sub,
    unpack_value, values_equal,
};
pub use ordered_map::OrderedMap;
pub use stdlib::env::{env_args, env_get, set_script_args};
pub use stdlib::fetch::{fetch_append, fetch_delete, fetch_exists, fetch_read, fetch_write};
pub use stdlib::nerd::{
    nerd_abs, nerd_ceil, nerd_floor, nerd_max, nerd_min, nerd_pow, nerd_round, nerd_sqrt,
};
pub use stdlib::strings::{
    strings_beeg, strings_contains, strings_join, strings_replace, strings_smoll, strings_split,
    strings_trim,
};
pub use value::{BoundMethodData, Cell, FunctionData, Value};

// Re-exported so the generated glue can build capture cells without importing
// std directly — it only ever writes `use doge_runtime::*;`.
pub use std::cell::RefCell;
pub use std::rc::Rc;