UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

24 lines (22 loc) 1.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.add = void 0; const constants_1 = require("../../constants"); const BuiltinInterface_1 = require("../BuiltinInterface"); const SysCallInstanceMemberArray_1 = require("./SysCallInstanceMemberArray"); const ValueFor_1 = require("./ValueFor"); const ValueInstanceOf_1 = require("./ValueInstanceOf"); class BlockInterface extends BuiltinInterface_1.BuiltinInterface { } class BlockConstructorInterface extends BuiltinInterface_1.BuiltinInterface { } exports.add = (builtins) => { builtins.addContractInterface('Block', new BlockInterface()); builtins.addContractValue('Block', new ValueInstanceOf_1.ValueInstanceOf('BlockConstructor', (sb) => sb.helpers.isBlock)); builtins.addContractMember('Block', 'transactions', new SysCallInstanceMemberArray_1.SysCallInstanceMemberArray('Neo.Block.GetTransactions', constants_1.Types.Block, constants_1.Types.Transaction)); builtins.addContractInterface('BlockConstructor', new BlockConstructorInterface()); builtins.addContractMember('BlockConstructor', 'for', new ValueFor_1.ValueFor('Neo.Blockchain.GetBlock', (sb, node, options) => { sb.emitHelper(node, options, sb.helpers.wrapBlock); })); }; //# sourceMappingURL=block.js.map