public abstract class Memory
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
Memory.Kind |
Modifier | Constructor and Description |
---|---|
protected |
Memory(Memory.Kind kind,
java.lang.String name,
Type type,
java.math.BigInteger length,
boolean isAlias) |
protected |
Memory(Memory other) |
Modifier and Type | Method and Description |
---|---|
Location |
access() |
abstract Location |
access(java.math.BigInteger address) |
abstract Location |
access(Data address) |
abstract Location |
access(int address) |
abstract Location |
access(long address) |
abstract Memory |
copy() |
static Memory |
def(Memory.Kind kind,
java.lang.String name,
Type type,
java.math.BigInteger length) |
static Memory |
def(Memory.Kind kind,
java.lang.String name,
Type type,
java.math.BigInteger length,
Location alias) |
static Memory |
def(Memory.Kind kind,
java.lang.String name,
Type type,
java.math.BigInteger length,
Memory memory,
int min,
int max) |
static Memory |
def(Memory.Kind kind,
java.lang.String name,
Type type,
long length) |
static Memory |
def(Memory.Kind kind,
java.lang.String name,
Type type,
long length,
Location alias) |
static Memory |
def(Memory.Kind kind,
java.lang.String name,
Type type,
long length,
Memory memory,
int min,
int max) |
int |
getAddressBitSize() |
Memory.Kind |
getKind() |
java.math.BigInteger |
getLength() |
java.lang.String |
getName() |
Type |
getType() |
boolean |
isAlias() |
MemoryAllocator |
newAllocator(int addressableUnitBitSize,
java.math.BigInteger baseAddress) |
abstract void |
reset() |
MemoryDevice |
setHandler(MemoryDevice handler) |
java.lang.String |
toString() |
protected Memory(Memory.Kind kind, java.lang.String name, Type type, java.math.BigInteger length, boolean isAlias)
protected Memory(Memory other)
public static Memory def(Memory.Kind kind, java.lang.String name, Type type, long length)
public static Memory def(Memory.Kind kind, java.lang.String name, Type type, java.math.BigInteger length)
public static Memory def(Memory.Kind kind, java.lang.String name, Type type, long length, Location alias)
public static Memory def(Memory.Kind kind, java.lang.String name, Type type, java.math.BigInteger length, Location alias)
public static Memory def(Memory.Kind kind, java.lang.String name, Type type, long length, Memory memory, int min, int max)
public static Memory def(Memory.Kind kind, java.lang.String name, Type type, java.math.BigInteger length, Memory memory, int min, int max)
public MemoryAllocator newAllocator(int addressableUnitBitSize, java.math.BigInteger baseAddress)
public MemoryDevice setHandler(MemoryDevice handler)
public final Memory.Kind getKind()
public final java.lang.String getName()
public final Type getType()
public final java.math.BigInteger getLength()
public final boolean isAlias()
public final int getAddressBitSize()
public final Location access()
public abstract Location access(int address)
public abstract Location access(long address)
public abstract Location access(java.math.BigInteger address)
public abstract Memory copy()
public abstract void reset()
public java.lang.String toString()
toString
in class java.lang.Object