diff options
author | Leonid Logvinov <logvinov.leon@gmail.com> | 2018-03-16 17:27:12 +0800 |
---|---|---|
committer | Leonid Logvinov <logvinov.leon@gmail.com> | 2018-03-16 17:27:12 +0800 |
commit | 8f8577b7c6387c13799fc78c448d9d19cf361f40 (patch) | |
tree | 67ee8770644b2b83f2ccd764973c3d1bd1081890 /packages | |
parent | f6c01520ae75d173937f0847ac45e636b06f4146 (diff) | |
download | dexon-sol-tools-8f8577b7c6387c13799fc78c448d9d19cf361f40.tar dexon-sol-tools-8f8577b7c6387c13799fc78c448d9d19cf361f40.tar.gz dexon-sol-tools-8f8577b7c6387c13799fc78c448d9d19cf361f40.tar.bz2 dexon-sol-tools-8f8577b7c6387c13799fc78c448d9d19cf361f40.tar.lz dexon-sol-tools-8f8577b7c6387c13799fc78c448d9d19cf361f40.tar.xz dexon-sol-tools-8f8577b7c6387c13799fc78c448d9d19cf361f40.tar.zst dexon-sol-tools-8f8577b7c6387c13799fc78c448d9d19cf361f40.zip |
Move opcodes to constants
Diffstat (limited to 'packages')
-rw-r--r-- | packages/sol-cov/src/constants.ts | 5 | ||||
-rw-r--r-- | packages/sol-cov/src/instructions.ts | 9 | ||||
-rw-r--r-- | packages/sol-cov/test/instructions_test.ts | 6 |
3 files changed, 11 insertions, 9 deletions
diff --git a/packages/sol-cov/src/constants.ts b/packages/sol-cov/src/constants.ts index 970734f2d..64d2228a3 100644 --- a/packages/sol-cov/src/constants.ts +++ b/packages/sol-cov/src/constants.ts @@ -1,3 +1,8 @@ +// tslint:disable:number-literal-format export const constants = { NEW_CONTRACT: 'NEW_CONTRACT', + PUSH1: 0x60, + PUSH2: 0x61, + PUSH32: 0x7f, + TIMESTAMP: 0x42, }; diff --git a/packages/sol-cov/src/instructions.ts b/packages/sol-cov/src/instructions.ts index c6506e58d..40987dbe5 100644 --- a/packages/sol-cov/src/instructions.ts +++ b/packages/sol-cov/src/instructions.ts @@ -1,9 +1,8 @@ -// tslint:disable:number-literal-format -const PUSH1 = 0x60; -const PUSH32 = 0x7f; -const isPush = (inst: number) => inst >= PUSH1 && inst <= PUSH32; +import { constants } from './constants'; -const pushDataLength = (inst: number) => inst - PUSH1 + 1; +const isPush = (inst: number) => inst >= constants.PUSH1 && inst <= constants.PUSH32; + +const pushDataLength = (inst: number) => inst - constants.PUSH1 + 1; const instructionLength = (inst: number) => (isPush(inst) ? pushDataLength(inst) + 1 : 1); diff --git a/packages/sol-cov/test/instructions_test.ts b/packages/sol-cov/test/instructions_test.ts index f64ec11ed..195dfce2f 100644 --- a/packages/sol-cov/test/instructions_test.ts +++ b/packages/sol-cov/test/instructions_test.ts @@ -3,6 +3,7 @@ import * as fs from 'fs'; import 'mocha'; import * as path from 'path'; +import { constants } from '../src/constants'; import { getPcToInstructionIndexMapping } from '../src/instructions'; const expect = chai.expect; @@ -10,10 +11,7 @@ const expect = chai.expect; describe('instructions', () => { describe('#getPcToInstructionIndexMapping', () => { it('correctly maps pcs to instruction indexed', () => { - const PUSH1 = 0x60; - const PUSH2 = 0x61; - const TIMESTAMP = 0x42; - const bytecode = new Uint8Array([PUSH1, 42, PUSH2, 1, 2, TIMESTAMP]); + const bytecode = new Uint8Array([constants.PUSH1, 42, constants.PUSH2, 1, 2, constants.TIMESTAMP]); const pcToInstruction = getPcToInstructionIndexMapping(bytecode); const expectedPcToInstruction = { '0': 0, '2': 1, '5': 2 }; expect(pcToInstruction).to.be.deep.equal(expectedPcToInstruction); |