Index

B C F G I L M O P R S T V W 
All Classes and Interfaces|All Packages

B

BaseMemory - Class in io.zucchini.circuitsimtester.api
Base class inherited by Ram and Rom.
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 provided Subcircuit.
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 file simFilePath.

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 CircuitSim CircuitBoard 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 this MockRegister live.
getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.Ram
Returns the Subcircuit, a wrapper around a CircuitSim CircuitBoard where this Pin lives.
getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.Register
Returns the Subcircuit, a wrapper around a CircuitSim CircuitBoard where this Register lives.
getSubcircuit() - Method in class io.zucchini.circuitsimtester.api.Rom
Returns the Subcircuit, a wrapper around a CircuitSim CircuitBoard 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 provided Subcircuit.
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 provided Subcircuit.

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 provided Subcircuit.
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 provided Subcircuit.
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 Restrictors 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 provided Subcircuit.
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 OutputPins: snitch on a tunnel instead of trying to find an output pin.
type() - Element in annotation interface io.zucchini.circuitsimtester.api.SubcircuitComponent
For OutputPins: 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.
B C F G I L M O P R S T V W 
All Classes and Interfaces|All Packages