Skip to main content

Crate praxis_stdlib

Crate praxis_stdlib 

Source
Expand description

The method catalog schema and the Praxis prelude (§16).

The single source of truth for what built-in methods exist, what their types are, and how they lower to runtime symbols or intrinsics. Per the design’s hard rule (§20, rule 3: “never duplicate type or method knowledge between compiler and LSP”), the type checker, HIR lowering, code generator, documentation generator, and language-server completion all consume this catalog. So the schema has to carry everything each of those consumers needs in one place (§16.2).

Re-exports§

pub use builtins::builtin_catalog;
pub use capability::CapKind;
pub use catalog::MethodCatalog;
pub use catalog::MethodCatalogError;
pub use catalog::MethodEntry;
pub use catalog::MethodLowering;
pub use catalog::Purity;
pub use completion::CompletionItem;
pub use completion::completion_data;
pub use prelude::BUILTIN_TYPES;
pub use prelude::GRAPH_HELPERS;
pub use prelude::GraphHelper;
pub use prelude::GraphParam;
pub use prelude::GraphResult;
pub use prelude::NUMERIC_HELPERS;
pub use prelude::NumericHelper;
pub use prelude::PRELUDE;
pub use prelude::SIZED_CTORS;
pub use prelude::SizedCtor;
pub use prelude::TypeEntry;
pub use prelude::graph_helper;
pub use prelude::numeric_helper;
pub use prelude::prelude_doc;
pub use prelude::sized_ctor;
pub use prelude::type_doc;
pub use type_pattern::Bound;
pub use type_pattern::CollectionCtor;
pub use type_pattern::PIPELINE_RECEIVERS;
pub use type_pattern::TypePattern;
pub use type_pattern::is_pipeline_receiver;
pub use type_pattern::pattern_matches;

Modules§

abi
The runtime ABI manifest: one row per praxis_* symbol the JIT can call.
builtins
The built-in method catalog (§16.2): one structured table of every built-in method.
capability
The capability vocabulary (§5.4): the payload-free names of the structural properties the compiler decides about a type.
catalog
The method catalog (§16.2): one structured table of built-in methods, consumed by every part of the compiler and the LSP.
completion
Completion-data generation from the method catalog (§19.8).
prelude
The Praxis prelude (§16.1): symbols automatically available in every program, with no use required.
type_pattern
Schema-level type patterns used to describe receivers, parameters, and results in the method catalog (§16.2).