inkmate/lib.rs
1//! Building block contracts for Stylus
2
3// Conditional compilation attributes for no_std compatibility and ABI export features
4#![cfg_attr(not(feature = "export-abi"), no_main, no_std)]
5extern crate alloc;
6
7// Custom global allocator for the wasm32 target
8#[cfg(target_arch = "wasm32")]
9#[global_allocator]
10static ALLOC: mini_alloc::MiniAlloc = mini_alloc::MiniAlloc::INIT;
11
12// Common utility contracts from the workspace
13extern crate inkmate_common;
14
15// Conditional compilation of the ERC20 token module
16#[cfg(any(feature = "erc20", feature = "erc721"))]
17pub mod tokens;
18
19// Utility functions and helpers used across the library
20mod utils;