@neo-one/smart-contract-compiler-esnext-esm
Version:
NEO•ONE TypeScript smart contract compiler.
25 lines (23 loc) • 1.04 kB
JavaScript
import { tsUtils } from '@neo-one/ts-utils-esnext-esm';
import { Types } from '../../constants';
import { IsHelper } from './IsHelper';
import { UnwrapHelper } from './UnwrapHelper';
import { WrapHelper } from './WrapHelper';
export class UnwrapIteratorResultHelper extends UnwrapHelper {
}
export class WrapIteratorResultHelper extends WrapHelper {
constructor() {
super(...arguments);
this.type = Types.IteratorResult;
}
}
export class IsIteratorResultHelper extends IsHelper {
constructor() {
super(...arguments);
this.type = Types.IteratorResult;
}
}
export const hasIteratorResult = (context, node, type) => tsUtils.type_.hasType(type, (tpe) => isIteratorResult(context, node, tpe));
export const isOnlyIteratorResult = (context, node, type) => tsUtils.type_.isOnlyType(type, (tpe) => isIteratorResult(context, node, tpe));
export const isIteratorResult = (context, node, type) => context.builtins.isInterface(node, type, 'IteratorResult');
//# sourceMappingURL=iteratorResult.js.map