Merge pull request #2097 from ethereum/json-interface-docs

Fixes for the JSON IO documentation
This commit is contained in:
chriseth 2017-04-10 14:52:42 +02:00 committed by GitHub
commit 9fe206505b

View File

@ -124,17 +124,22 @@ Input Description
// devdoc - Developer documentation (natspec) // devdoc - Developer documentation (natspec)
// userdoc - User documentation (natspec) // userdoc - User documentation (natspec)
// metadata - Metadata // metadata - Metadata
// evm.ir - New assembly format before desugaring // ir - New assembly format before desugaring
// evm.assembly - New assembly format after desugaring // evm.assembly - New assembly format after desugaring
// evm.legacyAssemblyJSON - Old-style assembly format in JSON // evm.legacyAssembly - Old-style assembly format in JSON
// evm.opcodes - Opcodes list // evm.bytecode.object - Bytecode object
// evm.bytecode.opcodes - Opcodes list
// evm.bytecode.sourceMap - Source mapping (useful for debugging)
// evm.bytecode.linkReferences - Link references (if unlinked object)
// evm.deployedBytecode* - Deployed bytecode (has the same options as evm.bytecode)
// evm.methodIdentifiers - The list of function hashes // evm.methodIdentifiers - The list of function hashes
// evm.gasEstimates - Function gas estimates // evm.gasEstimates - Function gas estimates
// evm.bytecode - Bytecode
// evm.deployedBytecode - Deployed bytecode
// evm.sourceMap - Source mapping (useful for debugging)
// ewasm.wast - eWASM S-expressions format (not supported atm) // ewasm.wast - eWASM S-expressions format (not supported atm)
// ewasm.wasm - eWASM binary format (not supported atm) // ewasm.wasm - eWASM binary format (not supported atm)
//
// Note that using a using `evm`, `evm.bytecode`, `ewasm`, etc. will select every
// target part of that output.
//
outputSelection: { outputSelection: {
// Enable the metadata and bytecode outputs of every single contract. // Enable the metadata and bytecode outputs of every single contract.
"*": { "*": {
@ -180,6 +185,8 @@ Output Description
severity: "error", severity: "error",
// Mandatory // Mandatory
message: "Invalid keyword" message: "Invalid keyword"
// Optional: the message formatted with source location
formattedMessage: "sourceFile.sol:100: Invalid keyword"
} }
], ],
// This contains the file-level outputs. In can be limited/filtered by the outputSelection settings. // This contains the file-level outputs. In can be limited/filtered by the outputSelection settings.
@ -199,17 +206,26 @@ Output Description
// The Ethereum Contract ABI. If empty, it is represented as an empty array. // The Ethereum Contract ABI. If empty, it is represented as an empty array.
// See https://github.com/ethereum/wiki/wiki/Ethereum-Contract-ABI // See https://github.com/ethereum/wiki/wiki/Ethereum-Contract-ABI
abi: [], abi: [],
// See the Metadata Output documentation (serialised JSON string)
metadata: "{...}",
// User documentation (natspec)
userdoc: {},
// Developer documentation (natspec)
devdoc: {},
// Intermediate representation (string)
ir: "",
// EVM-related outputs
evm: { evm: {
// Intermediate representation (string)
ir: "",
// Assembly (string) // Assembly (string)
assembly: "", assembly: "",
// Old-style assembly (string) // Old-style assembly (object)
legacyAssemblyJSON: [], legacyAssembly: [],
// Bytecode and related details. // Bytecode and related details.
bytecode: { bytecode: {
// The bytecode as a hex string. // The bytecode as a hex string.
object: "00fe", object: "00fe",
// Opcodes list (string)
opcodes: "",
// The source mapping as a string. See the source mapping definition. // The source mapping as a string. See the source mapping definition.
sourceMap: "", sourceMap: "",
// If given, this is an unlinked object. // If given, this is an unlinked object.
@ -222,14 +238,12 @@ Output Description
] ]
} }
} }
} },
// The same layout as above. // The same layout as above.
deployedBytecode: { }, deployedBytecode: { },
// Opcodes list (string)
opcodes: "",
// The list of function hashes // The list of function hashes
methodIdentifiers: { methodIdentifiers: {
"5c19a95c": "delegate(address)", "delegate(address)": "5c19a95c"
}, },
// Function gas estimates // Function gas estimates
gasEstimates: { gasEstimates: {
@ -246,18 +260,13 @@ Output Description
} }
} }
}, },
// See the Metadata Output documentation // eWASM related outputs
metadata: {},
ewasm: { ewasm: {
// S-expressions format // S-expressions format
wast: "", wast: "",
// Binary format (hex string) // Binary format (hex string)
wasm: "" wasm: ""
}, }
// User documentation (natspec)
userdoc: {},
// Developer documentation (natspec)
devdoc: {}
} }
} }
}, },