Class MetaModel
- java.lang.Object
-
- ru.ispras.microtesk.model.metadata.MetaModel
-
public final class MetaModel extends java.lang.Object
TheMetaModel
class stores information on the model and provides methods to access it. The information includes the list of instructions, the list of memory resources (registers, memory) and the list of test situations (behavioral properties of the instructions).
-
-
Constructor Summary
Constructors Constructor Description MetaModel(java.util.Collection<MetaAddressingMode> modes, java.util.Collection<MetaGroup> modeGroups, java.util.Collection<MetaOperation> operations, java.util.Collection<MetaGroup> operationGroups, java.util.Collection<MetaLocationStore> registers, java.util.Collection<MetaLocationStore> memory)
MetaModel(java.util.Map<java.lang.String,MetaAddressingMode> modes, java.util.Map<java.lang.String,MetaGroup> modeGroups, java.util.Map<java.lang.String,MetaOperation> operations, java.util.Map<java.lang.String,MetaGroup> operationGroups, java.util.Map<java.lang.String,MetaLocationStore> registers, java.util.Map<java.lang.String,MetaLocationStore> memory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MetaAddressingMode
getAddressingMode(java.lang.String name)
Returns metadata for the specified addressing mode.MetaGroup
getAddressingModeGroup(java.lang.String name)
Returns metadata for the specified addressing mode group (defined as OR rules).java.lang.Iterable<MetaGroup>
getAddressingModeGroups()
Returns addressing mode groups (modes defined as OR rules).java.lang.Iterable<MetaAddressingMode>
getAddressingModes()
Returns an iterator for the collection of addressing modes (excluding modes defined as OR rules).MetaLocationStore
getMemoryStore(java.lang.String name)
Returns metadata for the specified memory store location.java.lang.Iterable<MetaLocationStore>
getMemoryStores()
Returns an iterator for the collection of memory store locations.MetaOperation
getOperation(java.lang.String name)
Returns metadata for the specified operation.MetaGroup
getOperationGroup(java.lang.String name)
Returns metadata for the specified operation group.java.lang.Iterable<MetaGroup>
getOperationGroups()
Returns operations groups (operations defined as OR rules).java.lang.Iterable<MetaOperation>
getOperations()
Returns an iterator for the collection of operations (excluding operations defined as OR rules).MetaLocationStore
getRegister(java.lang.String name)
Returns metadata for the specified register file.java.lang.Iterable<MetaLocationStore>
getRegisters()
Returns an iterator for the collection of registers.
-
-
-
Constructor Detail
-
MetaModel
public MetaModel(java.util.Map<java.lang.String,MetaAddressingMode> modes, java.util.Map<java.lang.String,MetaGroup> modeGroups, java.util.Map<java.lang.String,MetaOperation> operations, java.util.Map<java.lang.String,MetaGroup> operationGroups, java.util.Map<java.lang.String,MetaLocationStore> registers, java.util.Map<java.lang.String,MetaLocationStore> memory)
-
MetaModel
public MetaModel(java.util.Collection<MetaAddressingMode> modes, java.util.Collection<MetaGroup> modeGroups, java.util.Collection<MetaOperation> operations, java.util.Collection<MetaGroup> operationGroups, java.util.Collection<MetaLocationStore> registers, java.util.Collection<MetaLocationStore> memory)
-
-
Method Detail
-
getAddressingModes
public java.lang.Iterable<MetaAddressingMode> getAddressingModes()
Returns an iterator for the collection of addressing modes (excluding modes defined as OR rules).- Returns:
- An Iterable object.
-
getAddressingMode
public MetaAddressingMode getAddressingMode(java.lang.String name)
Returns metadata for the specified addressing mode.- Parameters:
name
- Addressing mode name.- Returns:
- Addressing mode metadata.
-
getAddressingModeGroups
public java.lang.Iterable<MetaGroup> getAddressingModeGroups()
Returns addressing mode groups (modes defined as OR rules).- Returns:
- An Iterable object.
-
getAddressingModeGroup
public MetaGroup getAddressingModeGroup(java.lang.String name)
Returns metadata for the specified addressing mode group (defined as OR rules).- Parameters:
name
- Name of addressing mode group.- Returns:
- Addressing mode group metadata.
-
getOperations
public java.lang.Iterable<MetaOperation> getOperations()
Returns an iterator for the collection of operations (excluding operations defined as OR rules).- Returns:
- An Iterable object.
-
getOperation
public MetaOperation getOperation(java.lang.String name)
Returns metadata for the specified operation.- Parameters:
name
- Operation name.- Returns:
- Operation metadata.
-
getOperationGroups
public java.lang.Iterable<MetaGroup> getOperationGroups()
Returns operations groups (operations defined as OR rules).- Returns:
- An Iterable object.
-
getOperationGroup
public MetaGroup getOperationGroup(java.lang.String name)
Returns metadata for the specified operation group.- Parameters:
name
- Name of operation group.- Returns:
- Operation group metadata.
-
getRegisters
public java.lang.Iterable<MetaLocationStore> getRegisters()
Returns an iterator for the collection of registers.- Returns:
- An Iterable object.
-
getRegister
public MetaLocationStore getRegister(java.lang.String name)
Returns metadata for the specified register file.- Parameters:
name
- Register file name.- Returns:
- Register file metadata.
-
getMemoryStores
public java.lang.Iterable<MetaLocationStore> getMemoryStores()
Returns an iterator for the collection of memory store locations.- Returns:
- An Iterable object.
-
getMemoryStore
public MetaLocationStore getMemoryStore(java.lang.String name)
Returns metadata for the specified memory store location.- Parameters:
name
- Memory store location name.- Returns:
- Memory store location metadata.
-
-