Crate neo_solidity

Crate neo_solidity 

Source
Expand description

Neo Solidity Compiler Library

A Solidity to NeoVM bytecode compiler for Neo N3 smart contracts.

§Architecture

The compiler is organized into the following modules:

  • solidity - Solidity source parsing and metadata extraction
  • ir - Intermediate representation for code generation
  • runtime - NeoVM execution environment
  • neo - Neo-specific utilities (NEF, manifest)
  • codegen, lexer, parser, optimizer, semantic - Yul language support

Author: Jimmy jimmy@r3e.network

Re-exports§

pub use error::*;
pub use types::*;

Modules§

abi_opt
ABI Encoding Optimization
benchmark
Benchmark Framework
bounds
Bounds Checking Module
cache
Compilation Cache Module
callgraph
Call Graph Analysis
cfg
Control Flow Graph
cli
Neo Solidity CLI Module
codegen
Yul Code Generation Module
codegen_helpers
Code Generation Helpers
context
Compiler Context
dataflow
Data Flow Analysis
diagnostic_fmt
Diagnostic Formatter
docs
Documentation Generator
error
Compiler Error Types
frontend
Solidity frontend integration using solang-parser.
ir
Canonical intermediate representation for Neo Solidity.
lexer
Yul Lexer Module
liveness
Liveness Analysis
metrics
Code Metrics Module
neo
Neo N3 Utilities Module
optimizer
Yul AST Optimizer Module
parser
Yul Parser Module
regalloc
Register Allocation
runtime
Neo Runtime Module
scheduler
Instruction Scheduler
security
Security Analysis Module
semantic
Yul Semantic Analysis Module
semantic_model
Semantic model extracted from Solidity metadata.
solidity
Solidity Metadata Extraction Module
sourcemap
Source Map Module
storage_key
Storage Key Computation Module
storage_opt
Storage Layout Optimization
testing
Testing Utilities Module
type_system
Basic Neo type representations derived from Solidity type strings.
types
Compiler Configuration Types
utils
Shared Utility Functions
validation
Input Validation Module
warning
Warning System for Neo Solidity Compiler

Constants§

VERSION
Compiler version