carbon_macros/
lib.rs

1//! # Carbon Macros
2//!
3//! This crate provides powerful macros for building and processing transaction
4//! schemas and decoding instructions dynamically. It includes two main modules:
5//!
6//! - **`schema`**: Offers the `schema!` macro to construct hierarchical
7//!   transaction schemas with flexible node types, ideal for organizing and
8//!   validating complex transaction structures.
9//! - **`try_decode_ix`**: Includes the `try_decode_instructions!` macro,
10//!   enabling dynamic decoding of instructions into various types based on
11//!   specified patterns.
12//!
13//! ## Overview
14//!
15//! These modules are designed for applications that utilize Carbon, where
16//! transaction processing and decoding are essential. The macros in this crate
17//! simplify handling diverse instruction types and assembling transaction
18//! schemas, reducing boilerplate code and enhancing flexibility in transaction
19//! management.
20//!
21//! ## Modules
22//!
23//! - **`schema`**: For building transaction schemas.
24//! - **`try_decode_ix`**: For decoding instructions dynamically.
25#![no_std]
26
27pub mod schemas;
28pub mod try_decode_ixs;