63134a0eeac07de86e4d5530bcc9731f2bfe3b10
[Mograsim.git] / net.mograsim.machine / src / net / mograsim / machine / MicroInstructionDefinition.java
1 package net.mograsim.machine;
2
3 import net.mograsim.machine.mi.parameters.MicroInstructionParameter;
4 import net.mograsim.machine.mi.parameters.ParameterClassification;
5
6 public interface MicroInstructionDefinition
7 {
8         /**
9          * @return The {@link ParameterClassification}s of which a MicroInstruction is composed.
10          */
11         public ParameterClassification[] getParameterClassifications();
12         
13         /**
14          * @return The amount of {@link MicroInstructionParameter}s in a {@link MicroInstruction} that follows this definition.
15          */
16         public default int size()
17         {
18                 return getParameterClassifications().length;
19         }
20         
21 }