Index
All Classes and Interfaces|All Packages
B
- BaseMemory - Class in io.zucchini.circuitsimtester.api
- BaseMemory() - Constructor for class io.zucchini.circuitsimtester.api.BaseMemory
- BasePin - Class in io.zucchini.circuitsimtester.api
-
Wraps a CircuitSim Pin component.
- BasePin(Pin, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.BasePin
-
Creates a new BasePin which wraps the provided
Pin
component and which lives in the providedSubcircuit
. - BasesConverter - Class in io.zucchini.circuitsimtester.extension
-
Converts String arguments into integers using the base corresponding to their prefix.
- BasesConverter() - Constructor for class io.zucchini.circuitsimtester.extension.BasesConverter
- beforeAll(ExtensionContext) - Method in class io.zucchini.circuitsimtester.extension.CircuitSimExtension
- beforeEach(ExtensionContext) - Method in class io.zucchini.circuitsimtester.extension.CircuitSimExtension
- bits() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitComponent
-
The bit size of a matching Pin.
- blacklistComponents(Subcircuit, String...) - Method in class io.zucchini.circuitsimtester.api.Restrictor
-
Fail the whole test if the subcircuit contains any of these components or component categories.
- Button - Class in io.zucchini.circuitsimtester.api
-
Allows pretending to push a button placed in a subcircuit.
- Button(InputPin, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.Button
- BUTTON - Enum constant in enum class io.zucchini.circuitsimtester.api.Subcircuit.PulserType
C
- CircuitSimExtension - Class in io.zucchini.circuitsimtester.extension
-
Extends JUnit to understand testing CircuitSim subcircuits.
- CircuitSimExtension() - Constructor for class io.zucchini.circuitsimtester.extension.CircuitSimExtension
- Clock - Class in io.zucchini.circuitsimtester.api
-
Allows pretending to tick a Clock component placed in a subcircuit.
- Clock(InputPin, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.Clock
- CLOCK - Enum constant in enum class io.zucchini.circuitsimtester.api.Subcircuit.PulserType
- convert(Object, Class<?>) - Method in class io.zucchini.circuitsimtester.extension.BasesConverter
F
- file() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitTest
-
The circuit file to open.
- fromPath(String, String) - Static method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Loads the subcircuit named
subcircuitName
from the.sim
filesimFilePath
.
G
- get() - Method in class io.zucchini.circuitsimtester.api.OutputPin
-
Returns the current value of this output pin.
- getCircuit() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Returns the CircuitSim
Circuit
for this subcircuit. - getCircuitBoard() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Returns the CircuitSim
CircuitBoard
for this subcircuit. - getCircuitManager() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
- getCircuitSim() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Returns the
CircuitSim
instance simulating the circuit. - getCircuitState() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Returns the CircuitSim
CircuitState
of this subcircuit. - getClk() - Method in class io.zucchini.circuitsimtester.api.MockRegister
-
Returns the Pin which replaced the clock port of the register.
- getD() - Method in class io.zucchini.circuitsimtester.api.MockRegister
-
Returns the Pin which replaced the in port of the register.
- getEn() - Method in class io.zucchini.circuitsimtester.api.MockRegister
-
Returns the Pin which replaced the write enable port of the register.
- getMockPin() - Method in class io.zucchini.circuitsimtester.api.MockPulser
- getName() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Returns the name of this subcircuit as written in the test file.
- getPin() - Method in class io.zucchini.circuitsimtester.api.BasePin
-
Returns the internal CircuitSim
Pin
component this object wraps. - getPinCount() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Returns the number of Input Pin or Output Pin components in this circuit.
- getQ() - Method in class io.zucchini.circuitsimtester.api.MockRegister
-
Returns the Pin which replaced the out port of the register.
- getQ() - Method in class io.zucchini.circuitsimtester.api.Register
-
Returns the current value of the register.
- getQSext() - Method in class io.zucchini.circuitsimtester.api.Register
-
Returns the current value of the register, sign-extended to 32 bits.
- getRAM() - Method in class io.zucchini.circuitsimtester.api.Ram
-
Returns the internal CircuitSim
RAM
component this object wraps. - getRegister() - Method in class io.zucchini.circuitsimtester.api.Register
-
Returns the internal CircuitSim
Register
component this object wraps. - getROM() - Method in class io.zucchini.circuitsimtester.api.Rom
-
Returns the internal CircuitSim
ROM
component this object wraps. - getRst() - Method in class io.zucchini.circuitsimtester.api.MockRegister
-
Returns the Pin which replaced the reset port of the register.
- getSext() - Method in class io.zucchini.circuitsimtester.api.OutputPin
-
Returns the current value of this output pin sign-extended to 32 bits.
- getSimulator() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Returns the CircuitSim
Simulator
running the circuit. - getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.BasePin
-
Returns the
Subcircuit
, a wrapper around a CircuitSimCircuitBoard
where this Pin lives. - getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.MockPulser
- getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.MockRegister
-
Returns the
Subcircuit
where the Pins which make up thisMockRegister
live. - getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.Ram
-
Returns the
Subcircuit
, a wrapper around a CircuitSimCircuitBoard
where this Pin lives. - getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.Register
-
Returns the
Subcircuit
, a wrapper around a CircuitSimCircuitBoard
where this Register lives. - getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.Rom
-
Returns the
Subcircuit
, a wrapper around a CircuitSimCircuitBoard
where this Pin lives.
I
- INFER - Enum constant in enum class io.zucchini.circuitsimtester.api.SubcircuitComponent.Type
-
Infer the type of component based on the annotated field type.
- InputPin - Class in io.zucchini.circuitsimtester.api
-
Wraps a CircuitSim input
Pin
component and provides a convenience method for setting its value. - InputPin(Pin, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.InputPin
-
Creates a new InputPin which wraps the provided
Pin
component and which lives in the providedSubcircuit
. - io.zucchini.circuitsimtester.api - package io.zucchini.circuitsimtester.api
-
Contains wrapper classes which make internal CircuitSim APIs more friendly for testing, and provides annotations used to instruct
CircuitSimExtension
to lookup subcircuits, pins, or registers. - io.zucchini.circuitsimtester.extension - package io.zucchini.circuitsimtester.extension
-
Contains the CircuitSim JUnit 5 extension itself, as well as any JUnit-specific helper classes.
L
- label() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitComponent
-
The label of a matching Pin.
- load(int) - Method in class io.zucchini.circuitsimtester.api.BaseMemory
-
Reads a word from this RAM/ROM.
- load(int) - Method in class io.zucchini.circuitsimtester.api.Ram
- load(int) - Method in class io.zucchini.circuitsimtester.api.Rom
- load(InputStream) - Method in class io.zucchini.circuitsimtester.api.BaseMemory
-
Loads a stream of a dat file into this component's memory.
- lookupComponentCounts(Collection<String>, boolean, boolean) - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Finds if components with the given names or in the given component categories exist in this subcircuit.
- lookupMemory(String, int, boolean, Subcircuit.MemoryType) - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Finds a RAM/ROM component labelled
label
in this subcircuit and returns a wrapper around it. - lookupPin(String, boolean, int, boolean) - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Finds a Pin component labelled
pinLabel
in this subcircuit and returns a wrapper around it. - lookupRegister(String, int, boolean) - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Finds a Register component labelled
regLabel
in this subcircuit and returns a wrapper around it.
M
- mock() - Method in class io.zucchini.circuitsimtester.api.Register
-
Mocks this register with a
MockRegister
. - mockPin - Variable in class io.zucchini.circuitsimtester.api.MockPulser
- mockPulser(String, boolean, Subcircuit.PulserType) - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Mocks a CircuitSim Button or Clock component (i.e., a "pulser") in this subcircuit by replacing it with an input pin.
- MockPulser - Class in io.zucchini.circuitsimtester.api
-
Similar to
MockRegister
but much simpler: manipulates an InputPin which replaced a clock or button and is used to send "pulses" into the circuit. - MockPulser(InputPin, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.MockPulser
- mockRegister(Register) - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Mocks a CircuitSim register in this subcircuit by replacing it with input and output pins.
- MockRegister - Class in io.zucchini.circuitsimtester.api
-
Represents a "ghost" register: a register component replaced with Pin components for easier testing.
O
- onlyInstance() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitComponent
-
Used to tell the tester library not to look up the component by label and instead to find this component by looking for the only instance of such component present in the circuit (optionally recursively via
SubcircuitComponent.recursiveSearch()
). - OutputPin - Class in io.zucchini.circuitsimtester.api
-
Wraps a CircuitSim output
Pin
component and provides a convenience method for setting its value. - OutputPin(Pin, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.OutputPin
-
Creates a new OutputPin which wraps the provided
Pin
component and which lives in the providedSubcircuit
.
P
- pin - Variable in class io.zucchini.circuitsimtester.api.BasePin
-
The
Pin
wrapped by this instance. - press() - Method in class io.zucchini.circuitsimtester.api.Button
-
This pushes the button.
- pulse() - Method in class io.zucchini.circuitsimtester.api.MockPulser
-
Set the mock pin to 0, then 1, then 0 again to simulate the "pulse" drawn above in the lede.
R
- Ram - Class in io.zucchini.circuitsimtester.api
-
Wraps a CircuitSim RAM component.
- Ram(RAM, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.Ram
-
Creates a new Ram which wraps the provided
RAM
component and which lives in the providedSubcircuit
. - RAM - Enum constant in enum class io.zucchini.circuitsimtester.api.Subcircuit.MemoryType
- recursiveSearch() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitComponent
-
Search for this component not only directly in the subcircuit identified with
SubcircuitTest
but also in any subcircuits placed in it. - Register - Class in io.zucchini.circuitsimtester.api
-
Wraps a CircuitSim Register component.
- Register(Register, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.Register
-
Creates a new Register which wraps the provided
Register
component and which lives in the providedSubcircuit
. - resetSimulation() - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Resets the simulation for this subcircuit.
- resetSimulationBetween() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitTest
-
Reset simulation between tests.
- Restrictor - Class in io.zucchini.circuitsimtester.api
-
Validates a subcircuit by checking for issues such as banned components.
- Restrictor() - Constructor for class io.zucchini.circuitsimtester.api.Restrictor
- restrictors() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitTest
-
Validate the subcircuit with these
Restrictor
s before running any tests. - Rom - Class in io.zucchini.circuitsimtester.api
-
Wraps a CircuitSim ROM component.
- Rom(ROM, Subcircuit) - Constructor for class io.zucchini.circuitsimtester.api.Rom
-
Creates a new Rom which wraps the provided
ROM
component and which lives in the providedSubcircuit
. - ROM - Enum constant in enum class io.zucchini.circuitsimtester.api.Subcircuit.MemoryType
S
- set(int) - Method in class io.zucchini.circuitsimtester.api.InputPin
-
Sets the value of this input pin and allows the change to propagate through the circuit.
- snitchTunnel(String, int) - Method in class io.zucchini.circuitsimtester.api.Subcircuit
-
Add an
OutputPin
that spys on the value of the specified tunnel. - store(int, int) - Method in class io.zucchini.circuitsimtester.api.BaseMemory
-
Writes a word to this RAM/ROM.
- store(int, int) - Method in class io.zucchini.circuitsimtester.api.Ram
- store(int, int) - Method in class io.zucchini.circuitsimtester.api.Rom
- subcircuit - Variable in class io.zucchini.circuitsimtester.api.BasePin
-
The
Subcircuit
where this pin lives - subcircuit - Variable in class io.zucchini.circuitsimtester.api.MockPulser
- subcircuit() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitTest
-
The name of the subcircuit in which to search for pins.
- Subcircuit - Class in io.zucchini.circuitsimtester.api
-
Represents and wraps the subcircuit to test.
- Subcircuit.MemoryType - Enum Class in io.zucchini.circuitsimtester.api
-
Please see
Subcircuit.lookupMemory(String,int,boolean,MemoryType)
for details on this enum. - Subcircuit.PulserType - Enum Class in io.zucchini.circuitsimtester.api
-
Please see
Subcircuit.mockPulser(String,boolean,PulserType)
for details on this enum. - SubcircuitComponent - Annotation Interface in io.zucchini.circuitsimtester.api
-
Instructs
CircuitSimExtension
to find and inject a CircuitSim component into the annotated field in a test class. - SubcircuitComponent.Type - Enum Class in io.zucchini.circuitsimtester.api
-
Please see
SubcircuitComponent.type()
for details on this enum. - SubcircuitTest - Annotation Interface in io.zucchini.circuitsimtester.api
-
Marks this JUnit test class as testing a subcircuit with the provided
.sim
file path and subcircuit name.
T
- tick() - Method in class io.zucchini.circuitsimtester.api.Clock
-
Tick the clock once.
- tickUntil(long, BooleanSupplier) - Method in class io.zucchini.circuitsimtester.api.Clock
-
Tick the clock until
stopWhen
returns true. - TUNNEL - Enum constant in enum class io.zucchini.circuitsimtester.api.SubcircuitComponent.Type
-
For
OutputPin
s: snitch on a tunnel instead of trying to find an output pin. - type() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitComponent
-
For
OutputPin
s: The type of "pin".
V
- validate(Subcircuit) - Method in class io.zucchini.circuitsimtester.api.Restrictor
-
Validates this subcircuit, throwing an
AssertionError
if any issues are found. - valueOf(String) - Static method in enum class io.zucchini.circuitsimtester.api.Subcircuit.MemoryType
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.zucchini.circuitsimtester.api.Subcircuit.PulserType
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.zucchini.circuitsimtester.api.SubcircuitComponent.Type
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class io.zucchini.circuitsimtester.api.Subcircuit.MemoryType
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.zucchini.circuitsimtester.api.Subcircuit.PulserType
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.zucchini.circuitsimtester.api.SubcircuitComponent.Type
-
Returns an array containing the constants of this enum class, in the order they are declared.
- verifyInputPinCount() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitTest
-
Verify that the test contains a fixed number of input pins.
W
- whitelistComponents(Subcircuit, String...) - Method in class io.zucchini.circuitsimtester.api.Restrictor
-
Fail the whole test if the subcircuit contains any components other than these components or categories.
All Classes and Interfaces|All Packages