gto property Null safety

NormalArgOperation gto
final

Implementation

static final NormalArgOperation gto = NormalArgOperation(
    arg: LabelArg(
        maxDigit: 15,
        indirect: true,
        f: (m, final int? label) {
          // indirect: set true, because GTO (i) was implemented in the first
          // released versions of JRPN.  I'm pretty sure this isn't implemented
          // in the real 16C.  For stricter simulation, we could disallow it
          // and make the corresponding opcode illegal.
          if (label == null) {
            throw CalculatorError(4);
          }
          m.memory.program.goto(label);
        }),
    name: 'GTO');