diff options
Diffstat (limited to 'packages/sol-cov/src/types.ts')
-rw-r--r-- | packages/sol-cov/src/types.ts | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/packages/sol-cov/src/types.ts b/packages/sol-cov/src/types.ts index 4c3de55a1..cef7141cb 100644 --- a/packages/sol-cov/src/types.ts +++ b/packages/sol-cov/src/types.ts @@ -1,3 +1,5 @@ +import { StructLog } from 'ethereum-types'; + export interface LineColumn { line: number; column: number; @@ -45,24 +47,24 @@ export interface StatementMap { } export interface LineCoverage { - [lineNo: number]: boolean; + [lineNo: number]: number; } export interface FunctionCoverage { - [functionId: string]: boolean; + [functionId: string]: number; } export interface StatementCoverage { - [statementId: string]: boolean; + [statementId: string]: number; } export interface BranchCoverage { - [branchId: string]: boolean[]; + [branchId: string]: number[]; } export interface Coverage { [fineName: string]: { - l: LineCoverage; + l?: LineCoverage; f: FunctionCoverage; s: StatementCoverage; b: BranchCoverage; @@ -82,8 +84,11 @@ export interface ContractData { sources: string[]; } +// Part of the trace executed within the same context +export type Subtrace = StructLog[]; + export interface TraceInfoBase { - coveredPcs: number[]; + subtrace: Subtrace; txHash: string; } @@ -102,3 +107,10 @@ export type TraceInfo = TraceInfoNewContract | TraceInfoExistingContract; export enum BlockParamLiteral { Latest = 'latest', } + +export interface EvmCallStackEntry { + structLog: StructLog; + address: string; +} + +export type EvmCallStack = EvmCallStackEntry[]; |