 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- type Ast
- type CompilerInput
- type CompilerInputMetadata
- type CompilerOutput
- type CompilerOutputBytecode
- type CompilerOutputContract
- type CompilerOutputContracts
- type CompilerOutputEvm
- type CompilerOutputSource
- type CompilerOutputSources
- type CompilerSettings
- type LinkReference
- type LinkReferenceOffset
- type LinkReferences
- type OptimizerSettings
- type StorageLayout
- type StorageLayoutEntry
- type StorageLayoutType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CompilerInput ¶
type CompilerInput struct {
	Language string                       `json:"language"`
	Sources  map[string]map[string]string `json:"sources"`
	Settings CompilerSettings             `json:"settings"`
}
    type CompilerInputMetadata ¶
type CompilerInputMetadata struct {
	UseLiteralContent bool `json:"useLiteralContent"`
}
    type CompilerOutput ¶
type CompilerOutput struct {
	Contracts map[string]CompilerOutputContracts `json:"contracts"`
	Sources   CompilerOutputSources              `json:"sources"`
}
    type CompilerOutputBytecode ¶
type CompilerOutputBytecode struct {
	Object         string         `json:"object"`
	Opcodes        string         `json:"opcodes"`
	SourceMap      string         `json:"sourceMap"`
	LinkReferences LinkReferences `json:"linkReferences"`
}
    Object must be a string because its not guaranteed to be a hex string
type CompilerOutputContract ¶
type CompilerOutputContract struct {
	Abi           abi.ABI           `json:"abi"`
	Evm           CompilerOutputEvm `json:"evm"`
	Metadata      string            `json:"metadata"`
	StorageLayout StorageLayout     `json:"storageLayout"`
}
    TODO(tynes): ignoring devdoc and userdoc for now
type CompilerOutputContracts ¶
type CompilerOutputContracts map[string]CompilerOutputContract
type CompilerOutputEvm ¶
type CompilerOutputEvm struct {
	Bytecode          CompilerOutputBytecode       `json:"bytecode"`
	DeployedBytecode  CompilerOutputBytecode       `json:"deployedBytecode"`
	GasEstimates      map[string]map[string]string `json:"gasEstimates"`
	MethodIdentifiers map[string]string            `json:"methodIdentifiers"`
}
    type CompilerOutputSource ¶
type CompilerOutputSources ¶
type CompilerOutputSources map[string]CompilerOutputSource
type CompilerSettings ¶
type CompilerSettings struct {
	Optimizer       OptimizerSettings              `json:"optimizer"`
	Metadata        CompilerInputMetadata          `json:"metadata"`
	OutputSelection map[string]map[string][]string `json:"outputSelection"`
	EvmVersion      string                         `json:"evmVersion,omitempty"`
	Libraries       map[string]map[string]string   `json:"libraries,omitempty"`
}
    type LinkReference ¶
type LinkReference map[string][]LinkReferenceOffset
type LinkReferenceOffset ¶
type LinkReferences ¶
type LinkReferences map[string]LinkReference
type OptimizerSettings ¶
type StorageLayout ¶
type StorageLayout struct {
	Storage []StorageLayoutEntry         `json:"storage"`
	Types   map[string]StorageLayoutType `json:"types"`
}
    type StorageLayoutEntry ¶
 Click to show internal directories. 
   Click to hide internal directories.