crytic_compile package¶
Subpackages¶
- crytic_compile.compiler package
- crytic_compile.cryticparser package
- crytic_compile.platform package
- Submodules
- crytic_compile.platform.abstract_platform module
- crytic_compile.platform.all_export module
- crytic_compile.platform.all_platforms module
- crytic_compile.platform.archive module
- crytic_compile.platform.brownie module
- crytic_compile.platform.dapp module
- crytic_compile.platform.embark module
- crytic_compile.platform.etherlime module
- crytic_compile.platform.etherscan module
- crytic_compile.platform.exceptions module
- crytic_compile.platform.solc module
- crytic_compile.platform.solc_standard_json module
- crytic_compile.platform.standard module
- crytic_compile.platform.truffle module
- crytic_compile.platform.types module
- crytic_compile.platform.vyper module
- crytic_compile.platform.waffle module
- Module contents
- crytic_compile.utils package
Submodules¶
crytic_compile.crytic_compile module¶
CryticCompile main module. Handle the compilation.
-
class
crytic_compile.crytic_compile.
CryticCompile
(target: Union[str, crytic_compile.platform.abstract_platform.AbstractPlatform], **kwargs)[source]¶ Bases:
object
Main class.
-
abis
¶ Return the ABIs
Returns:
-
asts
¶ Return the ASTs
Returns: dict (absolute filename -> AST)
-
bytecode_init
(name: str, libraries: Union[None, Dict[str, str]] = None) → str[source]¶ Return the init bytecode of the contract. If library is provided, patch the bytecode
Parameters: - name –
- libraries –
Returns:
-
bytecode_only
¶ Return true if only the bytecode was retrieved
Returns:
-
bytecode_runtime
(name: str, libraries: Union[None, Dict[str, str]] = None) → str[source]¶ Return the runtime bytecode of the contract. If library is provided, patch the bytecode
Parameters: - name –
- libraries –
Returns:
-
bytecodes_init
¶ Return the init bytecodes
Returns:
-
bytecodes_runtime
¶ Return the runtime bytecodes
Returns:
-
compiler_version
¶ Return the compiler used as a namedtuple(compiler, version)
Returns:
-
contracts_absolute_filenames
¶ Return a dict (contract_name -> absolute filename)
Returns:
-
contracts_filenames
¶ Return a dict contract_name -> Filename namedtuple (absolute, used)
Returns: dict(name -> utils.namings.Filename)
-
contracts_names
¶ Return the contracts names
Returns:
-
contracts_names_without_libraries
¶ Return the contracts names (without the librairies)
Returns:
-
dependencies
¶ Return the dependencies files
Returns:
-
export
(**kwargs) → Optional[str][source]¶ Export to json. The json format can be crytic-compile, solc or truffle.
-
filename_lookup
(filename: str) → crytic_compile.utils.naming.Filename[source]¶ Return a crytic_compile.naming.Filename from a any filename form (used/absolute/relative)
Parameters: filename – str Returns: crytic_compile.naming.Filename
-
filename_of_contract
(name: str) → crytic_compile.utils.naming.Filename[source]¶ Returns: utils.namings.Filename
-
filenames
¶ Returns: set(naming.Filename)
-
find_absolute_filename_from_used_filename
(used_filename: str) → str[source]¶ Return the absolute filename based on the used one
Parameters: used_filename – Returns: absolute filename
-
hashes
(name: str) → Dict[str, int][source]¶ Return the hashes of the functions
Parameters: name – Returns:
-
static
import_archive_compilations
(compiled_archive: Union[str, Dict[KT, VT]]) → List[crytic_compile.crytic_compile.CryticCompile][source]¶ Import from an archive. compiled_archive is either a json file or the loaded dictionary The dictionary myst contain the “compilations” keyword
Parameters: compiled_archive – Returns:
-
is_dependency
(filename: str) → bool[source]¶ Check if the filename is a dependency
Parameters: filename – Returns:
-
libraries
¶ Return the libraries used (contract_name -> [(library, pattern))])
Returns:
-
libraries_names
(name: str) → List[str][source]¶ Return the name of the libraries used by the contract
Parameters: name – contract Returns: list of libraries name
-
libraries_names_and_patterns
(name)[source]¶ Return the name of the libraries used by the contract
Parameters: name – contract Returns: list of (libraries name, pattern)
-
natspec
¶ Return the natspec of the contractse
Returns: Dict[str, Natspec]
-
package
¶ Return the package name
Returns:
-
package_name
¶ Returns: str or None
-
platform
¶ Return the platform module
Returns:
-
relative_filename_from_absolute_filename
(absolute_filename: str) → str[source]¶ Return the relative file based on the absolute name
Parameters: absolute_filename – Returns:
-
src_content
¶ Return the source content, filename -> source_code
Returns:
-
src_content_for_file
(filename_absolute: str) → Optional[str][source]¶ Get the source code of the file
Parameters: filename_absolute – Returns:
-
srcmaps_init
¶ Return the init srcmap
Returns:
-
srcmaps_runtime
¶ Return the runtime srcmap
Returns:
-
target
¶ Return the target (project)
Returns:
-
type
¶ Return the type of the platform used
Returns:
-
working_dir
¶ Return the working dir
Returns:
-
-
crytic_compile.crytic_compile.
compile_all
(target: str, **kwargs) → List[crytic_compile.crytic_compile.CryticCompile][source]¶ Given a direct or glob pattern target, compiles all underlying sources and returns all the relevant instances of CryticCompile.
Parameters: - target – A string representing a file/directory path or glob pattern denoting where compilation shouldoccur.
- kwargs – The remainder of the arguments passed through to all compilation steps.
Returns: Returns a list of CryticCompile instances for all compilations which occurred.
Module contents¶
Init module