Module cli

Module cli 

Source
Expand description

Neo Solidity CLI Module

Command-line interface for the Neo Solidity compiler. This module provides the main entry point for compiling Solidity contracts to NeoVM bytecode.

Β§Features

  • Single file and multi-file compilation
  • Standard JSON input/output (Solidity compiler compatible)
  • NEF (Neo Executable Format) generation
  • Manifest generation for Neo N3 deployment
  • Multiple optimization levels (0-3)
  • Verbose output

Β§Submodules

Β§Usage

neo-solc input.sol -o build/
neo-solc --standard-json < input.json > output.json
neo-solc --standard-json --input input.json --output output.json

ModulesΒ§

bytecode πŸ”’
NeoVM Bytecode Generation Module
ir_optimize πŸ”’
IR Optimization Module
standard_json πŸ”’
Standard JSON Compilation Interface

StructsΒ§

AbstractState πŸ”’
CompilationArtifacts
CompileOptions πŸ”’
ContractCallRequirement πŸ”’
ManifestPermissionsOverride πŸ”’
OutputConfig πŸ”’
ResolvedSoliditySources πŸ”’
StandardsDetectionResult πŸ”’
Result of standards detection: detected standards + any diagnostics.
StandardsDiagnostic πŸ”’
A diagnostic emitted during standards detection.

EnumsΒ§

AbstractValue πŸ”’
CompileError
ManifestPermissionMethods πŸ”’
ManifestPermissionsMode πŸ”’
PermissionMethods πŸ”’
StandardsDiagnosticLevel πŸ”’
Severity level for standards-detection diagnostics.

ConstantsΒ§

COMPILER_EMAIL πŸ”’
COMPILER_ID πŸ”’
VERSION_STR πŸ”’

FunctionsΒ§

analyze_contract_calls πŸ”’
apply_instruction πŸ”’
apply_manifest_custom_overrides πŸ”’
build_cli_command πŸ”’
build_manifest πŸ”’
build_matches πŸ”’
check_transfer_params πŸ”’
Hint when the transfer method parameter count doesn’t match the standard.
collect_contract_call_permissions πŸ”’
collect_native_permissions πŸ”’
compile_contracts
compile_contracts_with_options πŸ”’
compile_input_or_exit πŸ”’
compile_metadata πŸ”’
compiler_version_string_4 πŸ”’
contract_output_prefix πŸ”’
descriptor_from_literal πŸ”’
detect_supported_standards πŸ”’
emit_contract_warnings πŸ”’
emit_error πŸ”’
emit_warning πŸ”’
emit_warning_with_suggestion πŸ”’
ensure_deploy_stub πŸ”’
ensure_output_dir πŸ”’
infer_permissions πŸ”’
Infer contract permissions based on method signatures and behavior
load_manifest_permissions_override πŸ”’
manifest_permissions_to_json πŸ”’
merge_manifest_permissions πŸ”’
method_name_from_literal πŸ”’
parse_json_or_string πŸ”’
parse_json_value πŸ”’
parse_manifest_permissions_array πŸ”’
parse_manifest_permissions_from_manifest πŸ”’
parse_manifest_permissions_mode πŸ”’
pop_n πŸ”’
pop_value πŸ”’
require_native_method πŸ”’
resolve_solidity_sources_with_imports πŸ”’
run
run_single_file πŸ”’
split_extension πŸ”’
try_run_standard_json πŸ”’
upsert_manifest_extra πŸ”’
validate_transfer_event πŸ”’
Check that a Transfer event exists with the expected parameter count.
write_assembly_file πŸ”’
write_contract_outputs πŸ”’
write_json_file πŸ”’
write_manifest_file πŸ”’
write_nef_file πŸ”’

Type AliasesΒ§

ManifestPermissionMap πŸ”’