reifydb_routine/lib.rs
1// SPDX-License-Identifier: Apache-2.0
2// Copyright (c) 2025 ReifyDB
3
4//! Built-in functions and procedures the engine VM dispatches to. Functions are pure value transformations evaluated
5//! mid-query (math, string, json, temporal, casting); procedures are imperative routines that may mutate catalog or
6//! storage state and are invoked as named statements. Both are exposed to RQL through stable qualified names that
7//! become wire-visible identifiers.
8//!
9//! The crate registers every built-in routine with the catalog at boot and resolves user-invoked names against that
10//! registry. Renaming a registered routine is a breaking change for queries already on disk, in scripts, and in client
11//! code; new routines should be added rather than substituted.
12
13#![cfg_attr(not(debug_assertions), deny(clippy::disallowed_methods))]
14#![cfg_attr(debug_assertions, warn(clippy::disallowed_methods))]
15#![cfg_attr(not(debug_assertions), deny(warnings))]
16#![allow(clippy::tabs_in_doc_comments)]
17
18pub mod function;
19pub mod procedure;
20pub mod routine;