aboutsummaryrefslogtreecommitdiffstats
path: root/packages/sol-resolver/src/resolvers
diff options
context:
space:
mode:
authorLeonid Logvinov <logvinov.leon@gmail.com>2018-12-19 21:07:20 +0800
committerLeonid Logvinov <logvinov.leon@gmail.com>2018-12-19 22:41:48 +0800
commit8ddf925a8feb41e240871fe0d57e0f40b9bb4896 (patch)
tree0467c2cc1a1b9f196c67ac861f093de48550a03e /packages/sol-resolver/src/resolvers
parentc8eaa63cce99e6666d6d863e8a47007e4cbcbbbb (diff)
downloaddexon-0x-contracts-8ddf925a8feb41e240871fe0d57e0f40b9bb4896.tar.gz
dexon-0x-contracts-8ddf925a8feb41e240871fe0d57e0f40b9bb4896.tar.zst
dexon-0x-contracts-8ddf925a8feb41e240871fe0d57e0f40b9bb4896.zip
Add SpyResolver
Diffstat (limited to 'packages/sol-resolver/src/resolvers')
-rw-r--r--packages/sol-resolver/src/resolvers/spy_resolver.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/packages/sol-resolver/src/resolvers/spy_resolver.ts b/packages/sol-resolver/src/resolvers/spy_resolver.ts
new file mode 100644
index 000000000..df56c8f9e
--- /dev/null
+++ b/packages/sol-resolver/src/resolvers/spy_resolver.ts
@@ -0,0 +1,23 @@
+import * as fs from 'fs';
+import * as _ from 'lodash';
+import * as path from 'path';
+
+import { ContractSource } from '../types';
+
+import { Resolver } from './resolver';
+
+export class SpyResolver extends Resolver {
+ public resolvedContractSources: ContractSource[] = [];
+ private _resolver: Resolver;
+ constructor(resolver: Resolver) {
+ super();
+ this._resolver = resolver;
+ }
+ public resolveIfExists(importPath: string): ContractSource | undefined {
+ const contractSourceIfExists = this._resolver.resolveIfExists(importPath);
+ if (!_.isUndefined(contractSourceIfExists)) {
+ this.resolvedContractSources.push(contractSourceIfExists);
+ }
+ return contractSourceIfExists;
+ }
+}