Contracts compiler

[blockchain/ethereum/Contracts compiler]


Compiles specified Solidity contracts using the specified compiler settings and outputs the selected compiled contract data


Input ports

  • contracts:

    {
      "contracts": any,
      "outputList": string[],
      "compileSettings": {
        "includeRoots": string[],
        "solidityVersion": string,
        "compileOptions": {string: any}
      }
    }["contracts"]

    Receives the source code of the contracts to compile.

  • output list:

    {
      "contracts": any,
      "outputList": string[],
      "compileSettings": {
        "includeRoots": string[],
        "solidityVersion": string,
        "compileOptions": {string: any}
      }
    }["outputList"]

    Receives the list of selected files from the contracts dictionary that should be passed to the Solidity compiler as 'root' sources. The other entries in 'contracts' should contain the dependencies.

  • compile settings:

    {
      "contracts": any,
      "outputList": string[],
      "compileSettings": {
        "includeRoots": string[],
        "solidityVersion": string,
        "compileOptions": {string: any}
      }
    }["compileSettings"]

    Receives the settings for the compilation.

Output ports

  • compiled contracts:

    {string: {"abi": {string: any}[], "evm": {"bytecode": {"object": string}}}}

    Sends out the compiled artifacts (abi, evm bytecode) of the compiled contracts.

  • error: {"error": string}

    Sends out any error that happened during compilation.

Last updated