diff options
Diffstat (limited to 'packages/sol-compiler/src/utils')
-rw-r--r-- | packages/sol-compiler/src/utils/compiler.ts | 2 | ||||
-rw-r--r-- | packages/sol-compiler/src/utils/types.ts | 74 |
2 files changed, 1 insertions, 75 deletions
diff --git a/packages/sol-compiler/src/utils/compiler.ts b/packages/sol-compiler/src/utils/compiler.ts index 968fcc5b2..c918ed1f3 100644 --- a/packages/sol-compiler/src/utils/compiler.ts +++ b/packages/sol-compiler/src/utils/compiler.ts @@ -1,10 +1,10 @@ import { ContractSource } from '@0xproject/sol-resolver'; import { logUtils } from '@0xproject/utils'; +import { ContractArtifact } from 'ethereum-types'; import * as _ from 'lodash'; import * as path from 'path'; import { fsWrapper } from './fs_wrapper'; -import { ContractArtifact } from './types'; /** * Gets contract data on network or returns if an artifact does not exist. diff --git a/packages/sol-compiler/src/utils/types.ts b/packages/sol-compiler/src/utils/types.ts index e2e7a4e53..b211cfcbc 100644 --- a/packages/sol-compiler/src/utils/types.ts +++ b/packages/sol-compiler/src/utils/types.ts @@ -1,5 +1,3 @@ -import * as solc from 'solc'; - export enum AbiType { Function = 'function', Constructor = 'constructor', @@ -7,82 +5,10 @@ export enum AbiType { Fallback = 'fallback', } -/** - * This type defines the schema of the artifact.json file generated by Sol-compiler - * schemaVersion: The version of the artifact schema - * contractName: The contract name it represents - * networks: Network specific information by network (address, id, constructor args, etc...) - * compilerOutput: The Solidity compiler output generated from the specified compiler input - * description (http://solidity.readthedocs.io/en/v0.4.24/using-the-compiler.html#compiler-input-and-output-json-description) - * compiler: The compiler settings used - * sourceCodes: The source code of the contract and all it's dependencies - * sources: A mapping from source filePath to sourceMap id - * sourceTreeHashHex: A unique hash generated from the contract source and that of it's dependencies. - * If any of the sources change, the hash would change notifying us that a re-compilation is necessary - */ -export interface ContractArtifact extends ContractVersionData { - schemaVersion: string; - contractName: string; - networks: ContractNetworks; -} - -export interface GeneratedCompilerOptions { - name: 'solc'; - version: string; - settings: solc.CompilerSettings; -} - -export interface Source { - id: number; -} - -export interface ContractVersionData { - compiler: GeneratedCompilerOptions; - sources: { - [sourceName: string]: Source; - }; - sourceCodes: { - [sourceName: string]: string; - }; - sourceTreeHashHex: string; - compilerOutput: solc.StandardContractOutput; -} - -export interface ContractNetworks { - [networkId: number]: ContractNetworkData; -} - -export interface ContractNetworkData { - address: string; - links: { - [linkName: string]: string; - }; - constructorArgs: string; -} - export interface SolcErrors { [key: string]: boolean; } -/** - * Options you can specify (as flags or in a compiler.json file) when invoking sol-compiler - * contractsDir: Directory containing your project's Solidity contracts. Can contain nested directories. - * artifactsDir: Directory where you want the generated artifacts.json written to - * compilerSettings: Desired settings to pass to the Solidity compiler during compilation. - * (http://solidity.readthedocs.io/en/v0.4.24/using-the-compiler.html#compiler-input-and-output-json-description) - * contracts: List of contract names you wish to compile, or alternatively ['*'] to compile all contracts in the - * specified directory. - * solcVersion: If you don't want to compile each contract with the Solidity version specified in-file, you can force all - * contracts to compile with the the version specified here. - */ -export interface CompilerOptions { - contractsDir?: string; - artifactsDir?: string; - compilerSettings?: solc.CompilerSettings; - contracts?: string[] | '*'; - solcVersion?: string; -} - export interface ContractSourceData { [contractName: string]: ContractSpecificSourceData; } |