Operation class Null safety

An operation, triggered by a key on the calculator keyboard, or executed as part of a program.

Inheritance
Implementers

Constructors

Operation({required String name})

Properties

arg OperationArg?
A description of an argument, if there is one. For example, the STO operation has an argument to indicate which register to store to.
read-only
floatCalc → (void Function?(Model<ProgramOperation> m)?)
The calculation performed when the calculator is in floating-point mode.
read-only
hashCode int
The hash code for this object. [...]
read-only, inherited
intCalc → (void Function?(Model<ProgramOperation> m)?)
The calculation performed when the calculator is in integer mode.
read-only
maxArg int
0 if this operation doesn't take an argument
read-only, override
name String
final
numericValue int?
Give the numeric value of a number key. cf. tests.dart, SelfTests.testNumbers().
read-only, inherited
programDisplay String
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

calcDefinedFor<T>(Controller controller, T? calc) → T?
By default, operations, if present, work for all kinds of controllers, but cf. BranchingOperation
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
possiblyAlterStackLift(Controller c) → void
Either enable or disable stack lift, if appropriate, after this operation's calculation is done. This will not be called if this operation doesn't have a calculation (intCalc or floatCalc on itself, or on its argument).
pressed(LimitedState arg) → void
What to do when the key is pressed.
toString() String
A string representation of this object. [...]
override

Operators

operator ==(Object other) bool
The equality operator. [...]
inherited