UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

53 lines (51 loc) 3.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.add = void 0; const constants_1 = require("../../../constants"); const BuiltinInstanceOf_1 = require("../../BuiltinInstanceOf"); const BuiltinInterface_1 = require("../../BuiltinInterface"); const ForwardValueAs_1 = require("./ForwardValueAs"); class ForwardValueInterface extends BuiltinInterface_1.BuiltinInterface { } class ForwardValueValue extends BuiltinInstanceOf_1.BuiltinInstanceOf { constructor() { super(...arguments); this.type = 'ForwardValueConstructor'; } emitInstanceOf(sb, node, optionsIn) { const options = sb.pushValueOptions(optionsIn); sb.visit(node, options); if (optionsIn.pushValue) { sb.emitHelper(node, options, sb.helpers.isForwardValue); sb.emitHelper(node, options, sb.helpers.wrapBoolean); } else { sb.emitOp(node, 'DROP'); } } } class ForwardValueConstructorInterface extends BuiltinInterface_1.BuiltinInterface { } exports.add = (builtins) => { builtins.addContractInterface('ForwardValue', new ForwardValueInterface()); builtins.addContractValue('ForwardValue', new ForwardValueValue()); builtins.addContractMember('ForwardValue', 'asString', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.String)); builtins.addContractMember('ForwardValue', 'asStringNullable', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.String, true)); builtins.addContractMember('ForwardValue', 'asNumber', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Number)); builtins.addContractMember('ForwardValue', 'asNumberNullable', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Number, true)); builtins.addContractMember('ForwardValue', 'asBoolean', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Boolean)); builtins.addContractMember('ForwardValue', 'asBuffer', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Buffer)); builtins.addContractMember('ForwardValue', 'asBufferNullable', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Buffer, true)); builtins.addContractMember('ForwardValue', 'asAddress', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Buffer)); builtins.addContractMember('ForwardValue', 'asAddressNullable', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Buffer, true)); builtins.addContractMember('ForwardValue', 'asHash256', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Buffer)); builtins.addContractMember('ForwardValue', 'asHash256Nullable', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Buffer, true)); builtins.addContractMember('ForwardValue', 'asPublicKey', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Buffer)); builtins.addContractMember('ForwardValue', 'asPublicKeyNullable', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Buffer, true)); builtins.addContractMember('ForwardValue', 'asArray', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Array)); builtins.addContractMember('ForwardValue', 'asArrayNullable', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Array, true)); builtins.addContractMember('ForwardValue', 'asMap', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Map)); builtins.addContractMember('ForwardValue', 'asMapNullable', new ForwardValueAs_1.ForwardValueAs(constants_1.Types.Map, true)); builtins.addContractInterface('ForwardValueConstructor', new ForwardValueConstructorInterface()); }; //# sourceMappingURL=index.js.map