@neo-one/smart-contract-compiler
Version:
NEO•ONE TypeScript smart contract compiler.
22 lines (20 loc) • 2.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const ts_utils_1 = require("@neo-one/ts-utils");
const typescript_1 = tslib_1.__importDefault(require("typescript"));
const NodeCompiler_1 = require("../NodeCompiler");
class StringLiteralCompiler extends NodeCompiler_1.NodeCompiler {
constructor() {
super(...arguments);
this.kind = typescript_1.default.SyntaxKind.StringLiteral;
}
visitNode(sb, expr, options) {
if (options.pushValue) {
sb.emitPushString(expr, ts_utils_1.tsUtils.literal.getLiteralValue(expr));
sb.emitHelper(expr, options, sb.helpers.wrapString);
}
}
}
exports.StringLiteralCompiler = StringLiteralCompiler;
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlN0cmluZ0xpdGVyYWxDb21waWxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnREFBNEM7QUFDNUMsb0VBQTRCO0FBQzVCLGtEQUErQztBQUkvQyxNQUFhLHFCQUFzQixTQUFRLDJCQUE4QjtJQUF6RTs7UUFDa0IsU0FBSSxHQUFHLG9CQUFFLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQU9yRCxDQUFDO0lBTlEsU0FBUyxDQUFDLEVBQWlCLEVBQUUsSUFBc0IsRUFBRSxPQUFxQjtRQUMvRSxJQUFJLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDckIsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsa0JBQU8sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDL0QsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDckQ7SUFDSCxDQUFDO0NBQ0Y7QUFSRCxzREFRQyIsImZpbGUiOiJuZW8tb25lLXNtYXJ0LWNvbnRyYWN0LWNvbXBpbGVyL3NyYy9jb21waWxlL2V4cHJlc3Npb24vU3RyaW5nTGl0ZXJhbENvbXBpbGVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHNVdGlscyB9IGZyb20gJ0BuZW8tb25lL3RzLXV0aWxzJztcbmltcG9ydCB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7IE5vZGVDb21waWxlciB9IGZyb20gJy4uL05vZGVDb21waWxlcic7XG5pbXBvcnQgeyBTY3JpcHRCdWlsZGVyIH0gZnJvbSAnLi4vc2InO1xuaW1wb3J0IHsgVmlzaXRPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgU3RyaW5nTGl0ZXJhbENvbXBpbGVyIGV4dGVuZHMgTm9kZUNvbXBpbGVyPHRzLlN0cmluZ0xpdGVyYWw+IHtcbiAgcHVibGljIHJlYWRvbmx5IGtpbmQgPSB0cy5TeW50YXhLaW5kLlN0cmluZ0xpdGVyYWw7XG4gIHB1YmxpYyB2aXNpdE5vZGUoc2I6IFNjcmlwdEJ1aWxkZXIsIGV4cHI6IHRzLlN0cmluZ0xpdGVyYWwsIG9wdGlvbnM6IFZpc2l0T3B0aW9ucyk6IHZvaWQge1xuICAgIGlmIChvcHRpb25zLnB1c2hWYWx1ZSkge1xuICAgICAgc2IuZW1pdFB1c2hTdHJpbmcoZXhwciwgdHNVdGlscy5saXRlcmFsLmdldExpdGVyYWxWYWx1ZShleHByKSk7XG4gICAgICBzYi5lbWl0SGVscGVyKGV4cHIsIG9wdGlvbnMsIHNiLmhlbHBlcnMud3JhcFN0cmluZyk7XG4gICAgfVxuICB9XG59XG4iXX0=