UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

20 lines (18 loc) 3.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const constants_1 = require("../../constants"); const BuiltinInterface_1 = require("../BuiltinInterface"); const SysCallInstanceMemberPrimitive_1 = require("./SysCallInstanceMemberPrimitive"); const ValueInstanceOf_1 = require("./ValueInstanceOf"); class InputInterface extends BuiltinInterface_1.BuiltinInterface { } class InputConstructorInterface extends BuiltinInterface_1.BuiltinInterface { } exports.add = (builtins) => { builtins.addContractInterface('Input', new InputInterface()); builtins.addContractValue('Input', new ValueInstanceOf_1.ValueInstanceOf('InputConstructor', (sb) => sb.helpers.isInput)); builtins.addContractInterface('InputConstructor', new InputConstructorInterface()); builtins.addContractMember('Input', 'hash', new SysCallInstanceMemberPrimitive_1.SysCallInstanceMemberPrimitive('Neo.Input.GetHash', constants_1.Types.Input, constants_1.Types.Buffer)); builtins.addContractMember('Input', 'index', new SysCallInstanceMemberPrimitive_1.SysCallInstanceMemberPrimitive('Neo.Input.GetIndex', constants_1.Types.Input, constants_1.Types.Number)); }; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0NBQXdDO0FBQ3hDLDBEQUF1RDtBQUV2RCxxRkFBa0Y7QUFDbEYsdURBQW9EO0FBRXBELE1BQU0sY0FBZSxTQUFRLG1DQUFnQjtDQUFHO0FBQ2hELE1BQU0seUJBQTBCLFNBQVEsbUNBQWdCO0NBQUc7QUFHOUMsUUFBQSxHQUFHLEdBQUcsQ0FBQyxRQUFrQixFQUFRLEVBQUU7SUFDOUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxJQUFJLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDN0QsUUFBUSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLGlDQUFlLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN4RyxRQUFRLENBQUMsb0JBQW9CLENBQUMsa0JBQWtCLEVBQUUsSUFBSSx5QkFBeUIsRUFBRSxDQUFDLENBQUM7SUFDbkYsUUFBUSxDQUFDLGlCQUFpQixDQUN4QixPQUFPLEVBQ1AsTUFBTSxFQUNOLElBQUksK0RBQThCLENBQUMsbUJBQW1CLEVBQUUsaUJBQUssQ0FBQyxLQUFLLEVBQUUsaUJBQUssQ0FBQyxNQUFNLENBQUMsQ0FDbkYsQ0FBQztJQUNGLFFBQVEsQ0FBQyxpQkFBaUIsQ0FDeEIsT0FBTyxFQUNQLE9BQU8sRUFDUCxJQUFJLCtEQUE4QixDQUFDLG9CQUFvQixFQUFFLGlCQUFLLENBQUMsS0FBSyxFQUFFLGlCQUFLLENBQUMsTUFBTSxDQUFDLENBQ3BGLENBQUM7QUFDSixDQUFDLENBQUMiLCJmaWxlIjoibmVvLW9uZS1zbWFydC1jb250cmFjdC1jb21waWxlci9zcmMvY29tcGlsZS9idWlsdGlucy9jb250cmFjdC9pbnB1dC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR5cGVzIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEJ1aWx0aW5JbnRlcmZhY2UgfSBmcm9tICcuLi9CdWlsdGluSW50ZXJmYWNlJztcbmltcG9ydCB7IEJ1aWx0aW5zIH0gZnJvbSAnLi4vQnVpbHRpbnMnO1xuaW1wb3J0IHsgU3lzQ2FsbEluc3RhbmNlTWVtYmVyUHJpbWl0aXZlIH0gZnJvbSAnLi9TeXNDYWxsSW5zdGFuY2VNZW1iZXJQcmltaXRpdmUnO1xuaW1wb3J0IHsgVmFsdWVJbnN0YW5jZU9mIH0gZnJvbSAnLi9WYWx1ZUluc3RhbmNlT2YnO1xuXG5jbGFzcyBJbnB1dEludGVyZmFjZSBleHRlbmRzIEJ1aWx0aW5JbnRlcmZhY2Uge31cbmNsYXNzIElucHV0Q29uc3RydWN0b3JJbnRlcmZhY2UgZXh0ZW5kcyBCdWlsdGluSW50ZXJmYWNlIHt9XG5cbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZSBleHBvcnQtbmFtZVxuZXhwb3J0IGNvbnN0IGFkZCA9IChidWlsdGluczogQnVpbHRpbnMpOiB2b2lkID0+IHtcbiAgYnVpbHRpbnMuYWRkQ29udHJhY3RJbnRlcmZhY2UoJ0lucHV0JywgbmV3IElucHV0SW50ZXJmYWNlKCkpO1xuICBidWlsdGlucy5hZGRDb250cmFjdFZhbHVlKCdJbnB1dCcsIG5ldyBWYWx1ZUluc3RhbmNlT2YoJ0lucHV0Q29uc3RydWN0b3InLCAoc2IpID0+IHNiLmhlbHBlcnMuaXNJbnB1dCkpO1xuICBidWlsdGlucy5hZGRDb250cmFjdEludGVyZmFjZSgnSW5wdXRDb25zdHJ1Y3RvcicsIG5ldyBJbnB1dENvbnN0cnVjdG9ySW50ZXJmYWNlKCkpO1xuICBidWlsdGlucy5hZGRDb250cmFjdE1lbWJlcihcbiAgICAnSW5wdXQnLFxuICAgICdoYXNoJyxcbiAgICBuZXcgU3lzQ2FsbEluc3RhbmNlTWVtYmVyUHJpbWl0aXZlKCdOZW8uSW5wdXQuR2V0SGFzaCcsIFR5cGVzLklucHV0LCBUeXBlcy5CdWZmZXIpLFxuICApO1xuICBidWlsdGlucy5hZGRDb250cmFjdE1lbWJlcihcbiAgICAnSW5wdXQnLFxuICAgICdpbmRleCcsXG4gICAgbmV3IFN5c0NhbGxJbnN0YW5jZU1lbWJlclByaW1pdGl2ZSgnTmVvLklucHV0LkdldEluZGV4JywgVHlwZXMuSW5wdXQsIFR5cGVzLk51bWJlciksXG4gICk7XG59O1xuIl19