UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

27 lines (25 loc) 2.87 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const KnownProgramCounter_1 = require("./KnownProgramCounter"); const LastProgramCounter_1 = require("./LastProgramCounter"); class ProgramCounterHelper { constructor(pc) { this.pc = pc; this.first = new KnownProgramCounter_1.KnownProgramCounter(this.pc()); this.last = new LastProgramCounter_1.LastProgramCounter(this.pc()); } getFirst() { return this.first; } getCurrent() { return new KnownProgramCounter_1.KnownProgramCounter(this.pc()); } getLast() { return this.last; } setLast() { this.last.setPC(this.pc()); } } exports.ProgramCounterHelper = ProgramCounterHelper; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByb2dyYW1Db3VudGVySGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0RBQTREO0FBQzVELDZEQUEwRDtBQUcxRCxNQUFhLG9CQUFvQjtJQUsvQixZQUFtQixFQUFnQjtRQUNqQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSx5Q0FBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksdUNBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPLElBQUkseUNBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVNLE9BQU87UUFDWixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM3QixDQUFDO0NBQ0Y7QUExQkQsb0RBMEJDIiwiZmlsZSI6Im5lby1vbmUtc21hcnQtY29udHJhY3QtY29tcGlsZXIvc3JjL2NvbXBpbGUvcGMvUHJvZ3JhbUNvdW50ZXJIZWxwZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLbm93blByb2dyYW1Db3VudGVyIH0gZnJvbSAnLi9Lbm93blByb2dyYW1Db3VudGVyJztcbmltcG9ydCB7IExhc3RQcm9ncmFtQ291bnRlciB9IGZyb20gJy4vTGFzdFByb2dyYW1Db3VudGVyJztcbmltcG9ydCB7IFByb2dyYW1Db3VudGVyIH0gZnJvbSAnLi9Qcm9ncmFtQ291bnRlcic7XG5cbmV4cG9ydCBjbGFzcyBQcm9ncmFtQ291bnRlckhlbHBlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGM6ICgpID0+IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBmaXJzdDogS25vd25Qcm9ncmFtQ291bnRlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBsYXN0OiBMYXN0UHJvZ3JhbUNvdW50ZXI7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHBjOiAoKSA9PiBudW1iZXIpIHtcbiAgICB0aGlzLnBjID0gcGM7XG4gICAgdGhpcy5maXJzdCA9IG5ldyBLbm93blByb2dyYW1Db3VudGVyKHRoaXMucGMoKSk7XG4gICAgdGhpcy5sYXN0ID0gbmV3IExhc3RQcm9ncmFtQ291bnRlcih0aGlzLnBjKCkpO1xuICB9XG5cbiAgcHVibGljIGdldEZpcnN0KCk6IFByb2dyYW1Db3VudGVyIHtcbiAgICByZXR1cm4gdGhpcy5maXJzdDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDdXJyZW50KCk6IFByb2dyYW1Db3VudGVyIHtcbiAgICByZXR1cm4gbmV3IEtub3duUHJvZ3JhbUNvdW50ZXIodGhpcy5wYygpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRMYXN0KCk6IFByb2dyYW1Db3VudGVyIHtcbiAgICByZXR1cm4gdGhpcy5sYXN0O1xuICB9XG5cbiAgcHVibGljIHNldExhc3QoKTogdm9pZCB7XG4gICAgdGhpcy5sYXN0LnNldFBDKHRoaXMucGMoKSk7XG4gIH1cbn1cbiJdfQ==