48 lines
799 B
Dart
48 lines
799 B
Dart
|
|
enum SweepstorePrimitives {
|
|
|
|
POINTER (8),
|
|
ADDRESS_TABLE (-1);
|
|
|
|
final int size;
|
|
final bool arrayType;
|
|
const SweepstorePrimitives(this.size, {
|
|
this.arrayType = false
|
|
});
|
|
|
|
}
|
|
|
|
class SweepstorePointer {
|
|
|
|
static const SweepstorePointer nullptr = SweepstorePointer(-1);
|
|
|
|
final int address;
|
|
|
|
const SweepstorePointer(this.address);
|
|
|
|
bool get isNull => address == -1;
|
|
|
|
operator ==(Object other) {
|
|
if (identical(this, other)) return true;
|
|
if (other is! SweepstorePointer) return false;
|
|
return address == other.address;
|
|
}
|
|
|
|
@override
|
|
String toString() => '0x${address.toRadixString(16)} ($address)';
|
|
}
|
|
|
|
enum SweepstoreTicketState {
|
|
FREE,
|
|
WAITING,
|
|
APPROVED,
|
|
EXECUTING,
|
|
COMPLETED,
|
|
}
|
|
|
|
enum SweepstoreTicketOperation {
|
|
NONE,
|
|
READ,
|
|
MODIFY,
|
|
WRITE,
|
|
} |