diff options
author | Fred Carlsen <fred@sjelfull.no> | 2018-12-15 06:24:08 +0800 |
---|---|---|
committer | Fred Carlsen <fred@sjelfull.no> | 2018-12-15 06:24:08 +0800 |
commit | e53f28c5705ad6dc5afeb672ef7491c15a682018 (patch) | |
tree | c8f946751f4fa88cfadbe621349f7f30b447e000 /packages/tslint-config/rules | |
parent | 5c083ba16bb5db4e3b74035b73c0307b7f8db65e (diff) | |
parent | 6d45beccad44e86ddd692d0cf54c09c29c5d9daf (diff) | |
download | dexon-sol-tools-e53f28c5705ad6dc5afeb672ef7491c15a682018.tar dexon-sol-tools-e53f28c5705ad6dc5afeb672ef7491c15a682018.tar.gz dexon-sol-tools-e53f28c5705ad6dc5afeb672ef7491c15a682018.tar.bz2 dexon-sol-tools-e53f28c5705ad6dc5afeb672ef7491c15a682018.tar.lz dexon-sol-tools-e53f28c5705ad6dc5afeb672ef7491c15a682018.tar.xz dexon-sol-tools-e53f28c5705ad6dc5afeb672ef7491c15a682018.tar.zst dexon-sol-tools-e53f28c5705ad6dc5afeb672ef7491c15a682018.zip |
Merge remote-tracking branch 'upstream/development' into website
# Conflicts:
# .gitignore
# README.md
# contracts/core/CHANGELOG.json
# contracts/examples/package.json
# contracts/extensions/package.json
# contracts/interfaces/package.json
# contracts/libs/package.json
# contracts/multisig/package.json
# contracts/protocol/CHANGELOG.json
# contracts/protocol/DEPLOYS.json
# contracts/protocol/package.json
# contracts/test-utils/CHANGELOG.json
# contracts/test-utils/CHANGELOG.md
# contracts/test-utils/package.json
# contracts/tokens/CHANGELOG.json
# contracts/tokens/package.json
# contracts/utils/package.json
# packages/0x.js/CHANGELOG.json
# packages/0x.js/CHANGELOG.md
# packages/0x.js/package.json
# packages/abi-gen-wrappers/CHANGELOG.json
# packages/abi-gen-wrappers/CHANGELOG.md
# packages/abi-gen-wrappers/package.json
# packages/abi-gen/CHANGELOG.json
# packages/abi-gen/CHANGELOG.md
# packages/abi-gen/package.json
# packages/assert/CHANGELOG.json
# packages/assert/CHANGELOG.md
# packages/assert/package.json
# packages/asset-buyer/CHANGELOG.md
# packages/asset-buyer/package.json
# packages/base-contract/CHANGELOG.json
# packages/base-contract/CHANGELOG.md
# packages/base-contract/package.json
# packages/connect/CHANGELOG.json
# packages/connect/CHANGELOG.md
# packages/connect/package.json
# packages/contract-wrappers/CHANGELOG.json
# packages/contract-wrappers/CHANGELOG.md
# packages/contract-wrappers/package.json
# packages/dev-tools-pages/package.json
# packages/dev-utils/CHANGELOG.json
# packages/dev-utils/CHANGELOG.md
# packages/dev-utils/package.json
# packages/ethereum-types/CHANGELOG.json
# packages/ethereum-types/CHANGELOG.md
# packages/ethereum-types/package.json
# packages/fill-scenarios/CHANGELOG.json
# packages/fill-scenarios/CHANGELOG.md
# packages/fill-scenarios/package.json
# packages/instant/package.json
# packages/instant/src/types.ts
# packages/json-schemas/CHANGELOG.json
# packages/json-schemas/CHANGELOG.md
# packages/json-schemas/package.json
# packages/metacoin/package.json
# packages/migrations/CHANGELOG.json
# packages/migrations/CHANGELOG.md
# packages/migrations/package.json
# packages/order-utils/CHANGELOG.json
# packages/order-utils/CHANGELOG.md
# packages/order-utils/package.json
# packages/order-watcher/CHANGELOG.json
# packages/order-watcher/CHANGELOG.md
# packages/order-watcher/package.json
# packages/pipeline/package.json
# packages/pipeline/src/ormconfig.ts
# packages/pipeline/src/parsers/ddex_orders/index.ts
# packages/pipeline/src/parsers/oasis_orders/index.ts
# packages/pipeline/src/parsers/paradex_orders/index.ts
# packages/pipeline/src/parsers/token_metadata/index.ts
# packages/pipeline/src/scripts/pull_competing_dex_trades.ts
# packages/pipeline/src/scripts/pull_ddex_orderbook_snapshots.ts
# packages/pipeline/src/scripts/pull_idex_orderbook_snapshots.ts
# packages/pipeline/src/scripts/pull_missing_blocks.ts
# packages/pipeline/src/scripts/pull_oasis_orderbook_snapshots.ts
# packages/pipeline/src/scripts/pull_paradex_orderbook_snapshots.ts
# packages/pipeline/src/scripts/pull_trusted_tokens.ts
# packages/pipeline/src/scripts/update_relayer_info.ts
# packages/pipeline/src/utils/get_ohlcv_trading_pairs.ts
# packages/pipeline/src/utils/index.ts
# packages/pipeline/test/parsers/ddex_orders/index_test.ts
# packages/pipeline/test/parsers/oasis_orders/index_test.ts
# packages/pipeline/test/parsers/paradex_orders/index_test.ts
# packages/react-docs/CHANGELOG.json
# packages/react-docs/CHANGELOG.md
# packages/react-docs/package.json
# packages/react-shared/CHANGELOG.json
# packages/react-shared/CHANGELOG.md
# packages/react-shared/package.json
# packages/sol-compiler/CHANGELOG.md
# packages/sol-compiler/package.json
# packages/sol-cov/CHANGELOG.json
# packages/sol-cov/CHANGELOG.md
# packages/sol-cov/package.json
# packages/sol-doc/CHANGELOG.json
# packages/sol-doc/CHANGELOG.md
# packages/sol-doc/package.json
# packages/sol-resolver/CHANGELOG.md
# packages/sol-resolver/package.json
# packages/sra-spec/CHANGELOG.json
# packages/sra-spec/CHANGELOG.md
# packages/sra-spec/package.json
# packages/subproviders/CHANGELOG.json
# packages/subproviders/CHANGELOG.md
# packages/subproviders/package.json
# packages/testnet-faucets/package.json
# packages/types/CHANGELOG.md
# packages/types/package.json
# packages/typescript-typings/CHANGELOG.json
# packages/typescript-typings/CHANGELOG.md
# packages/typescript-typings/package.json
# packages/utils/CHANGELOG.json
# packages/utils/CHANGELOG.md
# packages/utils/package.json
# packages/web3-wrapper/CHANGELOG.json
# packages/web3-wrapper/CHANGELOG.md
# packages/web3-wrapper/package.json
# packages/website/package.json
# packages/website/public/index.html
# packages/website/ts/pages/instant/fee_percentage_slider.tsx
# yarn.lock
Diffstat (limited to 'packages/tslint-config/rules')
-rw-r--r-- | packages/tslint-config/rules/walkers/async_suffix.ts | 39 |
1 files changed, 24 insertions, 15 deletions
diff --git a/packages/tslint-config/rules/walkers/async_suffix.ts b/packages/tslint-config/rules/walkers/async_suffix.ts index eaec9c5f6..4e12152e8 100644 --- a/packages/tslint-config/rules/walkers/async_suffix.ts +++ b/packages/tslint-config/rules/walkers/async_suffix.ts @@ -3,24 +3,33 @@ import * as Lint from 'tslint'; import * as ts from 'typescript'; export class AsyncSuffixWalker extends Lint.RuleWalker { - public static FAILURE_STRING = 'async functions must have an Async suffix'; + public static FAILURE_STRING = 'async functions/methods must have an Async suffix'; + public visitFunctionDeclaration(node: ts.FunctionDeclaration): void { + this._visitFunctionOrMethodDeclaration(node); + super.visitFunctionDeclaration(node); + } public visitMethodDeclaration(node: ts.MethodDeclaration): void { - const methodNameNode = node.name; - const methodName = methodNameNode.getText(); - if (!_.isUndefined(node.type)) { - if (node.type.kind === ts.SyntaxKind.TypeReference) { - // tslint:disable-next-line:no-unnecessary-type-assertion - const returnTypeName = (node.type as ts.TypeReferenceNode).typeName.getText(); - if (returnTypeName === 'Promise' && !methodName.endsWith('Async')) { - const failure = this.createFailure( - methodNameNode.getStart(), - methodNameNode.getWidth(), - AsyncSuffixWalker.FAILURE_STRING, - ); - this.addFailure(failure); + this._visitFunctionOrMethodDeclaration(node); + super.visitMethodDeclaration(node); + } + private _visitFunctionOrMethodDeclaration(node: ts.MethodDeclaration | ts.FunctionDeclaration): void { + const nameNode = node.name; + if (!_.isUndefined(nameNode)) { + const name = nameNode.getText(); + if (!_.isUndefined(node.type)) { + if (node.type.kind === ts.SyntaxKind.TypeReference) { + // tslint:disable-next-line:no-unnecessary-type-assertion + const returnTypeName = (node.type as ts.TypeReferenceNode).typeName.getText(); + if (returnTypeName === 'Promise' && !name.endsWith('Async')) { + const failure = this.createFailure( + nameNode.getStart(), + nameNode.getWidth(), + AsyncSuffixWalker.FAILURE_STRING, + ); + this.addFailure(failure); + } } } } - super.visitMethodDeclaration(node); } } |