@neo-one/smart-contract-compiler
Version:
NEO•ONE TypeScript smart contract compiler.
47 lines (45 loc) • 4.43 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const scope_1 = require("../scope");
const BaseScriptBuilder_1 = require("./BaseScriptBuilder");
class DiagnosticScriptBuilder extends BaseScriptBuilder_1.BaseScriptBuilder {
constructor() {
super(...arguments);
this.mutableCapturedHelpersSet = new Set();
}
emitHelper(node, options, helper) {
if (!this.mutableCapturedHelpersSet.has(helper)) {
this.mutableCapturedHelpersSet.add(helper);
helper.emitGlobal(this, node, options);
}
helper.emit(this, node, options);
}
emitOp() {
}
emitPushInt() {
}
emitPushBoolean() {
}
emitPushString() {
}
emitPushBuffer() {
}
emitJmp() {
}
emitBytecode() {
}
emitCall() {
}
emitSysCall() {
}
emitLine() {
}
getLinkedScriptHash() {
return undefined;
}
createScope() {
return new scope_1.DiagnosticScope();
}
}
exports.DiagnosticScriptBuilder = DiagnosticScriptBuilder;
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRpYWdub3N0aWNTY3JpcHRCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBR0Esb0NBQTJDO0FBRTNDLDJEQUF3RDtBQUd4RCxNQUFhLHVCQUF3QixTQUFRLHFDQUFrQztJQUEvRTs7UUFDbUIsOEJBQXlCLEdBQWdCLElBQUksR0FBRyxFQUFFLENBQUM7SUF5RHRFLENBQUM7SUF2RFEsVUFBVSxDQUFvQixJQUFPLEVBQUUsT0FBcUIsRUFBRSxNQUFpQjtRQUNwRixJQUFJLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUMvQyxJQUFJLENBQUMseUJBQXlCLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzNDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztTQUN4QztRQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU0sTUFBTTtJQUViLENBQUM7SUFFTSxXQUFXO0lBRWxCLENBQUM7SUFFTSxlQUFlO0lBRXRCLENBQUM7SUFFTSxjQUFjO0lBRXJCLENBQUM7SUFFTSxjQUFjO0lBRXJCLENBQUM7SUFFTSxPQUFPO0lBRWQsQ0FBQztJQUVNLFlBQVk7SUFFbkIsQ0FBQztJQUVNLFFBQVE7SUFFZixDQUFDO0lBRU0sV0FBVztJQUVsQixDQUFDO0lBRU0sUUFBUTtJQUVmLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTyxJQUFJLHVCQUFlLEVBQUUsQ0FBQztJQUMvQixDQUFDO0NBQ0Y7QUExREQsMERBMERDIiwiZmlsZSI6Im5lby1vbmUtc21hcnQtY29udHJhY3QtY29tcGlsZXIvc3JjL2NvbXBpbGUvc2IvRGlhZ25vc3RpY1NjcmlwdEJ1aWxkZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVSW50MTYwIH0gZnJvbSAnQG5lby1vbmUvY2xpZW50LWNvbW1vbic7XG5pbXBvcnQgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXInO1xuaW1wb3J0IHsgRGlhZ25vc3RpY1Njb3BlIH0gZnJvbSAnLi4vc2NvcGUnO1xuaW1wb3J0IHsgVmlzaXRPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgQmFzZVNjcmlwdEJ1aWxkZXIgfSBmcm9tICcuL0Jhc2VTY3JpcHRCdWlsZGVyJztcbmltcG9ydCB7IFNjcmlwdEJ1aWxkZXIgfSBmcm9tICcuL1NjcmlwdEJ1aWxkZXInO1xuXG5leHBvcnQgY2xhc3MgRGlhZ25vc3RpY1NjcmlwdEJ1aWxkZXIgZXh0ZW5kcyBCYXNlU2NyaXB0QnVpbGRlcjxEaWFnbm9zdGljU2NvcGU+IGltcGxlbWVudHMgU2NyaXB0QnVpbGRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbXV0YWJsZUNhcHR1cmVkSGVscGVyc1NldDogU2V0PEhlbHBlcj4gPSBuZXcgU2V0KCk7XG5cbiAgcHVibGljIGVtaXRIZWxwZXI8VCBleHRlbmRzIHRzLk5vZGU+KG5vZGU6IFQsIG9wdGlvbnM6IFZpc2l0T3B0aW9ucywgaGVscGVyOiBIZWxwZXI8VD4pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubXV0YWJsZUNhcHR1cmVkSGVscGVyc1NldC5oYXMoaGVscGVyKSkge1xuICAgICAgdGhpcy5tdXRhYmxlQ2FwdHVyZWRIZWxwZXJzU2V0LmFkZChoZWxwZXIpO1xuICAgICAgaGVscGVyLmVtaXRHbG9iYWwodGhpcywgbm9kZSwgb3B0aW9ucyk7XG4gICAgfVxuICAgIGhlbHBlci5lbWl0KHRoaXMsIG5vZGUsIG9wdGlvbnMpO1xuICB9XG5cbiAgcHVibGljIGVtaXRPcCgpOiB2b2lkIHtcbiAgICAvLyBkbyBub3RoaW5nXG4gIH1cblxuICBwdWJsaWMgZW1pdFB1c2hJbnQoKTogdm9pZCB7XG4gICAgLy8gZG8gbm90aGluZ1xuICB9XG5cbiAgcHVibGljIGVtaXRQdXNoQm9vbGVhbigpOiB2b2lkIHtcbiAgICAvLyBkbyBub3RoaW5nXG4gIH1cblxuICBwdWJsaWMgZW1pdFB1c2hTdHJpbmcoKTogdm9pZCB7XG4gICAgLy8gZG8gbm90aGluZ1xuICB9XG5cbiAgcHVibGljIGVtaXRQdXNoQnVmZmVyKCk6IHZvaWQge1xuICAgIC8vIGRvIG5vdGhpbmdcbiAgfVxuXG4gIHB1YmxpYyBlbWl0Sm1wKCk6IHZvaWQge1xuICAgIC8vIGRvIG5vdGhpbmdcbiAgfVxuXG4gIHB1YmxpYyBlbWl0Qnl0ZWNvZGUoKTogdm9pZCB7XG4gICAgLy8gZG8gbm90aGluZ1xuICB9XG5cbiAgcHVibGljIGVtaXRDYWxsKCk6IHZvaWQge1xuICAgIC8vIGRvIG5vdGhpbmdcbiAgfVxuXG4gIHB1YmxpYyBlbWl0U3lzQ2FsbCgpOiB2b2lkIHtcbiAgICAvLyBkbyBub3RoaW5nXG4gIH1cblxuICBwdWJsaWMgZW1pdExpbmUoKTogdm9pZCB7XG4gICAgLy8gZG8gbm90aGluZ1xuICB9XG5cbiAgcHVibGljIGdldExpbmtlZFNjcmlwdEhhc2goKTogVUludDE2MCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVTY29wZSgpOiBEaWFnbm9zdGljU2NvcGUge1xuICAgIHJldHVybiBuZXcgRGlhZ25vc3RpY1Njb3BlKCk7XG4gIH1cbn1cbiJdfQ==