Crate blockchain_runtime

Crate blockchain_runtime 

Source
Expand description

§Blockchain Runtime

Blockchain-agnostic runtime abstraction for dynamic analysis, testing, and simulation.

§Features

  • Blockchain-Agnostic: Works with any blockchain (Ethereum, Solana, etc.)
  • Dynamic Analysis: Execute code in runtime environments
  • Testing: Spin up test networks for contract testing
  • Simulation: Simulate transactions and monitor state changes
  • Metrics Collection: Track gas, compute units, state changes
  • Event Monitoring: Capture events and logs
  • Async-First: Non-blocking runtime operations
  • Security: Built-in security validation and monitoring

§Quick Start

use blockchain_runtime::{BlockchainRuntime, RuntimeConfig, NetworkMode, DefaultBlockchainRuntime};

// Configure runtime
let config = RuntimeConfig::default();

// Create runtime
let runtime = DefaultBlockchainRuntime::new("ethereum".to_string());
let env = runtime.create_environment(config).await?;

// Execute code
// let result = runtime.execute(&env, code_path, inputs).await?;
// println!("Execution result: {:?}", result.success);

Structs§

AccessControlCheck
Access control check result
DefaultBlockchainRuntime
Default implementation of blockchain runtime
ExecutionContext
Execution context
ExecutionInputs
Execution inputs
ExecutionResult
Execution result with security information
RuntimeCapabilities
Runtime capabilities
RuntimeConfig
Runtime configuration with security features
RuntimeConfigBuilder
Builder pattern for runtime configuration
RuntimeEnvironment
Runtime environment instance
RuntimeEvent
Runtime event
RuntimeMetricDefinition
Runtime metric definition
SecureExecutionContext
Execution context with security tracking
SecurityConfig
Security configuration for runtime execution
SecurityContext
Security context manager for tracking security state
SecurityValidator
Security validator for runtime operations
SecurityViolation
Security violation detected during execution
StateChange
State change during execution

Enums§

EnvironmentState
Environment state
MetricType
Metric type for runtime monitoring
NetworkMode
Network mode for runtime
RuntimeType
Runtime type for environment
SecuritySeverity
Security severity level
SecurityViolationType
Security violation type
StateChangeType
State change type

Traits§

BlockchainRuntime
Main blockchain runtime trait