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 extractionir- Intermediate representation for code generationruntime- NeoVM execution environmentneo- Neo-specific utilities (NEF, manifest)codegen,lexer,parser,optimizer,semantic- Yul language support
Author: Jimmy jimmy@r3e.network
Re-exports§
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