UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

22 lines (20 loc) 2.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const bn_js_1 = require("bn.js"); const typescript_1 = tslib_1.__importDefault(require("typescript")); const NodeCompiler_1 = require("../NodeCompiler"); class NumericLiteralCompiler extends NodeCompiler_1.NodeCompiler { constructor() { super(...arguments); this.kind = typescript_1.default.SyntaxKind.NumericLiteral; } visitNode(sb, expr, options) { if (options.pushValue) { sb.emitPushInt(expr, new bn_js_1.BN(expr.text.replace('_', ''), 10)); sb.emitHelper(expr, options, sb.helpers.wrapNumber); } } } exports.NumericLiteralCompiler = NumericLiteralCompiler; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk51bWVyaWNMaXRlcmFsQ29tcGlsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUNBQTJCO0FBQzNCLG9FQUE0QjtBQUM1QixrREFBK0M7QUFJL0MsTUFBYSxzQkFBdUIsU0FBUSwyQkFBK0I7SUFBM0U7O1FBQ2tCLFNBQUksR0FBRyxvQkFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUM7SUFRdEQsQ0FBQztJQU5RLFNBQVMsQ0FBQyxFQUFpQixFQUFFLElBQXVCLEVBQUUsT0FBcUI7UUFDaEYsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQ3JCLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksVUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzdELEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQztDQUNGO0FBVEQsd0RBU0MiLCJmaWxlIjoibmVvLW9uZS1zbWFydC1jb250cmFjdC1jb21waWxlci9zcmMvY29tcGlsZS9leHByZXNzaW9uL051bWVyaWNMaXRlcmFsQ29tcGlsZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCTiB9IGZyb20gJ2JuLmpzJztcbmltcG9ydCB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7IE5vZGVDb21waWxlciB9IGZyb20gJy4uL05vZGVDb21waWxlcic7XG5pbXBvcnQgeyBTY3JpcHRCdWlsZGVyIH0gZnJvbSAnLi4vc2InO1xuaW1wb3J0IHsgVmlzaXRPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgTnVtZXJpY0xpdGVyYWxDb21waWxlciBleHRlbmRzIE5vZGVDb21waWxlcjx0cy5OdW1lcmljTGl0ZXJhbD4ge1xuICBwdWJsaWMgcmVhZG9ubHkga2luZCA9IHRzLlN5bnRheEtpbmQuTnVtZXJpY0xpdGVyYWw7XG5cbiAgcHVibGljIHZpc2l0Tm9kZShzYjogU2NyaXB0QnVpbGRlciwgZXhwcjogdHMuTnVtZXJpY0xpdGVyYWwsIG9wdGlvbnM6IFZpc2l0T3B0aW9ucyk6IHZvaWQge1xuICAgIGlmIChvcHRpb25zLnB1c2hWYWx1ZSkge1xuICAgICAgc2IuZW1pdFB1c2hJbnQoZXhwciwgbmV3IEJOKGV4cHIudGV4dC5yZXBsYWNlKCdfJywgJycpLCAxMCkpO1xuICAgICAgc2IuZW1pdEhlbHBlcihleHByLCBvcHRpb25zLCBzYi5oZWxwZXJzLndyYXBOdW1iZXIpO1xuICAgIH1cbiAgfVxufVxuIl19