Add RandomAccessMemory class for in-memory binary operations
This commit is contained in:
48
dart/lib/structures.dart
Normal file
48
dart/lib/structures.dart
Normal file
@@ -0,0 +1,48 @@
|
||||
|
||||
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,
|
||||
}
|
||||
Reference in New Issue
Block a user