Skip to main content

Crate thalir_core

Crate thalir_core 

Source
Expand description

Core IR types and builders for smart contract analysis.

Auditing requires a structured representation where security-critical operations are explicit. This crate provides the building blocks to construct and manipulate IR that preserves Solidity’s semantics while exposing the patterns auditors care about.

Re-exports§

pub use block::BasicBlock;
pub use block::BlockId;
pub use block::BlockParam;
pub use block::Terminator;
pub use builder::ContractBuilder;
pub use builder::FunctionBuilder;
pub use contract::Contract;
pub use contract::ContractMetadata;
pub use contract::StorageLayout;
pub use function::Function;
pub use function::FunctionBody;
pub use function::FunctionSignature;
pub use function::Mutability;
pub use function::Visibility;
pub use instructions::Instruction;
pub use metadata::OptimizationHints;
pub use metadata::SecurityMetadata;
pub use obfuscation::ObfuscationConfig;
pub use obfuscation::ObfuscationLevel;
pub use obfuscation::ObfuscationMapping;
pub use obfuscation::ObfuscationPass;
pub use obfuscation::VulnerabilityMapper;
pub use source_location::SourceFiles;
pub use types::Type;
pub use types::TypeRegistry;
pub use values::Constant;
pub use values::Location;
pub use values::SourceLocation;
pub use values::Value;

Modules§

analysis
Analyze control flow, data flow, and program structure.
block
builder
Fluent API for constructing IR programmatically.
codegen
Lower high-level IR to Cranelift for compilation.
contract
cursor
extensions
EVM-specific operations beyond standard IR.
format
function
inst_builder
instructions
ir_persist
metadata
obfuscation
Strip names and metadata for confidential auditing.
source_location
types
values

Enums§

IrError

Type Aliases§

Result