SYMBOL INDEX (410 symbols across 21 files) FILE: kaze/src/code_writer.rs type CodeWriter (line 3) | pub struct CodeWriter { function new (line 9) | pub fn new(w: W) -> CodeWriter { function indent (line 13) | pub fn indent(&mut self) { function unindent (line 17) | pub fn unindent(&mut self) { function append_indent (line 24) | pub fn append_indent(&mut self) -> Result<()> { function append_newline (line 31) | pub fn append_newline(&mut self) -> Result<()> { function append (line 36) | pub fn append(&mut self, s: &str) -> Result<()> { function append_line (line 41) | pub fn append_line(&mut self, s: &str) -> Result<()> { FILE: kaze/src/graph/constant.rs type Constant (line 21) | pub enum Constant { method required_bits (line 34) | pub(super) fn required_bits(&self) -> u32 { method numeric_value (line 43) | pub(crate) fn numeric_value(&self) -> u128 { method from (line 54) | fn from(value: bool) -> Self { method from (line 60) | fn from(value: u8) -> Self { method from (line 66) | fn from(value: u16) -> Self { method from (line 72) | fn from(value: u32) -> Self { method from (line 78) | fn from(value: u64) -> Self { method from (line 84) | fn from(value: u128) -> Self { FILE: kaze/src/graph/context.rs type ModuleParent (line 11) | pub trait ModuleParent<'a> { method module (line 44) | fn module(&'a self, instance_name: impl Into, name: impl Into<... type Context (line 62) | pub struct Context<'a> { function new (line 86) | pub fn new() -> Context<'a> { function module (line 105) | fn module(&'a self, instance_name: impl Into, name: impl Into { function bit_width (line 18) | pub fn bit_width(&'a self) -> u32 { function module_instance_name_prefix (line 44) | pub(crate) fn module_instance_name_prefix(&self) -> String { method hash (line 68) | fn hash(&self, state: &mut H) { method eq (line 74) | fn eq(&self, other: &Self) -> bool { type SignalData (line 79) | pub(crate) enum SignalData<'a> { type UnOp (line 169) | pub(crate) enum UnOp { type SimpleBinOp (line 174) | pub(crate) enum SimpleBinOp { type ComparisonBinOp (line 181) | pub(crate) enum ComparisonBinOp { type AdditiveBinOp (line 195) | pub(crate) enum AdditiveBinOp { type ShiftBinOp (line 201) | pub(crate) enum ShiftBinOp { type GetInternalSignal (line 207) | pub trait GetInternalSignal<'a> { method internal_signal (line 209) | fn internal_signal(&'a self) -> &'a InternalSignal<'a>; function internal_signal (line 213) | fn internal_signal(&'a self) -> &'a InternalSignal<'a> { FILE: kaze/src/graph/mem.rs type Mem (line 40) | pub struct Mem<'a> { function initial_contents (line 90) | pub fn initial_contents>(&'a self, contents: &... function read_port (line 136) | pub fn read_port( function write_port (line 193) | pub fn write_port( method hash (line 221) | fn hash(&self, state: &mut H) { method eq (line 227) | fn eq(&self, other: &Self) -> bool { function initial_contents_already_specified_error (line 240) | fn initial_contents_already_specified_error() { function initial_contents_length_error (line 256) | fn initial_contents_length_error() { function initial_contents_element_bit_width_error (line 270) | fn initial_contents_element_bit_width_error() { function read_port_address_bit_width_error (line 284) | fn read_port_address_bit_width_error() { function read_port_enable_bit_width_error (line 298) | fn read_port_enable_bit_width_error() { function write_port_already_specified_error (line 312) | fn write_port_already_specified_error() { function write_port_address_bit_width_error (line 328) | fn write_port_address_bit_width_error() { function write_port_value_bit_width_error (line 342) | fn write_port_value_bit_width_error() { function write_port_enable_bit_width_error (line 356) | fn write_port_enable_bit_width_error() { FILE: kaze/src/graph/module.rs type Module (line 32) | pub struct Module<'a> { function new (line 49) | pub(super) fn new( function lit (line 92) | pub fn lit(&'a self, value: impl Into, bit_width: u32) -> &dyn... function low (line 134) | pub fn low(&'a self) -> &dyn Signal<'a> { function high (line 153) | pub fn high(&'a self) -> &dyn Signal<'a> { function input (line 174) | pub fn input(&'a self, name: impl Into, bit_width: u32) -> &Inpu... function output (line 228) | pub fn output(&'a self, name: impl Into, source: &'a dyn Signal<... function reg (line 267) | pub fn reg(&'a self, name: impl Into, bit_width: u32) -> &Regist... function mux (line 319) | pub fn mux( function mem (line 390) | pub fn mem( function module (line 441) | fn module(&'a self, instance_name: impl Into, name: impl Into(&self, state: &mut H) { method eq (line 464) | fn eq(&self, other: &Self) -> bool { type Input (line 473) | pub struct Input<'a> { function drive (line 485) | pub fn drive(&'a self, i: &'a dyn Signal<'a>) { function internal_signal (line 509) | fn internal_signal(&'a self) -> &'a InternalSignal<'a> { function internal_signal (line 515) | fn internal_signal(&'a self) -> &'a InternalSignal<'a> { type InputData (line 526) | pub(crate) struct InputData<'a> { type Output (line 538) | pub struct Output<'a> { type OutputData (line 542) | pub(crate) struct OutputData<'a> { function lit_bit_width_lt_min_error (line 560) | fn lit_bit_width_lt_min_error() { function lit_bit_width_gt_max_error (line 573) | fn lit_bit_width_gt_max_error() { function lit_value_cannot_bit_into_bit_width_error_1 (line 586) | fn lit_value_cannot_bit_into_bit_width_error_1() { function lit_value_cannot_bit_into_bit_width_error_2 (line 599) | fn lit_value_cannot_bit_into_bit_width_error_2() { function lit_value_cannot_bit_into_bit_width_error_3 (line 612) | fn lit_value_cannot_bit_into_bit_width_error_3() { function lit_value_cannot_bit_into_bit_width_error_4 (line 625) | fn lit_value_cannot_bit_into_bit_width_error_4() { function input_width_lt_min_error (line 638) | fn input_width_lt_min_error() { function input_width_gt_max_error (line 651) | fn input_width_gt_max_error() { function output_separate_module_error (line 662) | fn output_separate_module_error() { function reg_bit_width_lt_min_error (line 678) | fn reg_bit_width_lt_min_error() { function reg_bit_width_gt_max_error (line 691) | fn reg_bit_width_gt_max_error() { function mux_cond_separate_module_error (line 702) | fn mux_cond_separate_module_error() { function mux_when_true_separate_module_error (line 718) | fn mux_when_true_separate_module_error() { function mux_when_false_separate_module_error (line 734) | fn mux_when_false_separate_module_error() { function mux_cond_bit_width_error (line 750) | fn mux_cond_bit_width_error() { function mux_true_false_bit_width_error (line 766) | fn mux_true_false_bit_width_error() { function mem_address_bit_width_lt_min_error (line 782) | fn mem_address_bit_width_lt_min_error() { function mem_address_bit_width_gt_max_error (line 795) | fn mem_address_bit_width_gt_max_error() { function mem_element_bit_width_lt_min_error (line 808) | fn mem_element_bit_width_lt_min_error() { function mem_element_bit_width_gt_max_error (line 821) | fn mem_element_bit_width_gt_max_error() { function input_drive_different_module_than_parent_module_error (line 834) | fn input_drive_different_module_than_parent_module_error() { function input_drive_already_driven_error (line 853) | fn input_drive_already_driven_error() { function input_drive_incompatible_bit_widths_error (line 871) | fn input_drive_incompatible_bit_widths_error() { FILE: kaze/src/graph/register.rs type Register (line 38) | pub struct Register<'a> { function default_value (line 71) | pub fn default_value(&'a self, value: impl Into) { function drive_next (line 108) | pub fn drive_next(&'a self, n: &'a dyn Signal<'a>) { type RegisterData (line 123) | pub(crate) struct RegisterData<'a> { function internal_signal (line 133) | fn internal_signal(&'a self) -> &'a InternalSignal<'a> { function default_value_already_specified_error (line 146) | fn default_value_already_specified_error() { function default_value_cannot_bit_into_bit_width_error_1 (line 162) | fn default_value_cannot_bit_into_bit_width_error_1() { function default_value_cannot_bit_into_bit_width_error_2 (line 176) | fn default_value_cannot_bit_into_bit_width_error_2() { function default_value_cannot_bit_into_bit_width_error_3 (line 190) | fn default_value_cannot_bit_into_bit_width_error_3() { function default_value_cannot_bit_into_bit_width_error_4 (line 204) | fn default_value_cannot_bit_into_bit_width_error_4() { function drive_next_separate_module_error (line 218) | fn drive_next_separate_module_error() { function drive_next_incompatible_bit_width_error (line 235) | fn drive_next_incompatible_bit_width_error() { function drive_next_already_driven_error (line 250) | fn drive_next_already_driven_error() { FILE: kaze/src/graph/signal.rs constant MIN_SIGNAL_BIT_WIDTH (line 10) | pub const MIN_SIGNAL_BIT_WIDTH: u32 = 1; constant MAX_SIGNAL_BIT_WIDTH (line 14) | pub const MAX_SIGNAL_BIT_WIDTH: u32 = 128; type Signal (line 39) | pub trait Signal<'a>: GetInternalSignal<'a> { method bit_width (line 78) | fn bit_width(&'a self) -> u32 { method bit (line 104) | fn bit(&'a self, index: u32) -> &'a dyn Signal<'a> { method bits (line 143) | fn bits(&'a self, range_high: u32, range_low: u32) -> &'a dyn Signal<'... method repeat (line 187) | fn repeat(&'a self, count: u32) -> &'a dyn Signal<'a> { method concat (line 231) | fn concat(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method eq (line 275) | fn eq(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method ne (line 322) | fn ne(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method lt (line 369) | fn lt(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method le (line 416) | fn le(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method gt (line 463) | fn gt(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method ge (line 510) | fn ge(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method lt_signed (line 557) | fn lt_signed(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method le_signed (line 607) | fn le_signed(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method gt_signed (line 657) | fn gt_signed(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method ge_signed (line 707) | fn ge_signed(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method shr_arithmetic (line 756) | fn shr_arithmetic(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method mul_signed (line 796) | fn mul_signed(&'a self, rhs: &'a dyn Signal<'a>) -> &dyn Signal<'a> { method mux (line 841) | fn mux( function from (line 1325) | fn from(s: &'a T) -> &'a dyn Signal<'a> { type RegNext (line 1330) | pub trait RegNext<'a, S: Into> { method reg_next (line 1349) | fn reg_next(self, name: S) -> &'a dyn Signal<'a>; type RegNextWithDefault (line 1352) | pub trait RegNextWithDefault<'a, S: Into, C: Into> { method reg_next_with_default (line 1375) | fn reg_next_with_default(self, name: S, default_value: C) -> &'a dyn S... function bit_index_oob_error (line 1386) | fn bit_index_oob_error() { function bits_range_low_oob_error (line 1403) | fn bits_range_low_oob_error() { function bits_range_high_oob_error (line 1417) | fn bits_range_high_oob_error() { function bits_range_low_gt_high_error (line 1431) | fn bits_range_low_gt_high_error() { function repeat_count_zero_error (line 1445) | fn repeat_count_zero_error() { function repeat_count_oob_error (line 1459) | fn repeat_count_oob_error() { function concat_separate_module_error (line 1471) | fn concat_separate_module_error() { function concat_oob_error (line 1488) | fn concat_oob_error() { function eq_separate_module_error (line 1501) | fn eq_separate_module_error() { function eq_incompatible_bit_widths_error (line 1516) | fn eq_incompatible_bit_widths_error() { function ne_separate_module_error (line 1529) | fn ne_separate_module_error() { function ne_incompatible_bit_widths_error (line 1544) | fn ne_incompatible_bit_widths_error() { function lt_separate_module_error (line 1557) | fn lt_separate_module_error() { function lt_incompatible_bit_widths_error (line 1572) | fn lt_incompatible_bit_widths_error() { function le_separate_module_error (line 1585) | fn le_separate_module_error() { function le_incompatible_bit_widths_error (line 1600) | fn le_incompatible_bit_widths_error() { function gt_separate_module_error (line 1613) | fn gt_separate_module_error() { function gt_incompatible_bit_widths_error (line 1628) | fn gt_incompatible_bit_widths_error() { function ge_separate_module_error (line 1641) | fn ge_separate_module_error() { function ge_incompatible_bit_widths_error (line 1656) | fn ge_incompatible_bit_widths_error() { function lt_signed_separate_module_error (line 1669) | fn lt_signed_separate_module_error() { function lt_signed_incompatible_bit_widths_error (line 1684) | fn lt_signed_incompatible_bit_widths_error() { function lt_signed_bit_width_1_error (line 1697) | fn lt_signed_bit_width_1_error() { function le_signed_separate_module_error (line 1710) | fn le_signed_separate_module_error() { function le_signed_incompatible_bit_widths_error (line 1725) | fn le_signed_incompatible_bit_widths_error() { function le_signed_bit_width_1_error (line 1738) | fn le_signed_bit_width_1_error() { function gt_signed_separate_module_error (line 1751) | fn gt_signed_separate_module_error() { function gt_signed_incompatible_bit_widths_error (line 1766) | fn gt_signed_incompatible_bit_widths_error() { function gt_signed_bit_width_1_error (line 1779) | fn gt_signed_bit_width_1_error() { function ge_signed_separate_module_error (line 1792) | fn ge_signed_separate_module_error() { function ge_signed_incompatible_bit_widths_error (line 1807) | fn ge_signed_incompatible_bit_widths_error() { function ge_signed_bit_width_1_error (line 1820) | fn ge_signed_bit_width_1_error() { function shr_arithmetic_separate_module_error (line 1833) | fn shr_arithmetic_separate_module_error() { function mul_signed_separate_module_error (line 1848) | fn mul_signed_separate_module_error() { function mul_signed_oob_error (line 1865) | fn mul_signed_oob_error() { function mux_cond_separate_module_error (line 1878) | fn mux_cond_separate_module_error() { function mux_when_true_separate_module_error (line 1894) | fn mux_when_true_separate_module_error() { function mux_when_false_separate_module_error (line 1910) | fn mux_when_false_separate_module_error() { function mux_cond_bit_width_error (line 1926) | fn mux_cond_bit_width_error() { function mux_true_false_bit_width_error (line 1942) | fn mux_true_false_bit_width_error() { function add_separate_module_error (line 1956) | fn add_separate_module_error() { function add_incompatible_bit_widths_error (line 1971) | fn add_incompatible_bit_widths_error() { function bitand_separate_module_error (line 1984) | fn bitand_separate_module_error() { function bitand_incompatible_bit_widths_error (line 1999) | fn bitand_incompatible_bit_widths_error() { function bitor_separate_module_error (line 2012) | fn bitor_separate_module_error() { function bitor_incompatible_bit_widths_error (line 2027) | fn bitor_incompatible_bit_widths_error() { function bitxor_separate_module_error (line 2040) | fn bitxor_separate_module_error() { function bitxor_incompatible_bit_widths_error (line 2055) | fn bitxor_incompatible_bit_widths_error() { function mul_separate_module_error (line 2068) | fn mul_separate_module_error() { function mul_oob_error (line 2085) | fn mul_oob_error() { function shl_separate_module_error (line 2098) | fn shl_separate_module_error() { function shr_separate_module_error (line 2113) | fn shr_separate_module_error() { function sub_separate_module_error (line 2128) | fn sub_separate_module_error() { function sub_incompatible_bit_widths_error (line 2143) | fn sub_incompatible_bit_widths_error() { FILE: kaze/src/graph/sugar.rs function if_ (line 27) | pub fn if_<'a, T>(cond: &'a dyn Signal<'a>, when_true: T) -> If<'a, T> { type If (line 32) | pub struct If<'a, T> { function new (line 38) | fn new(cond: &'a dyn Signal<'a>, when_true: T) -> If<'a, T> { function else_if (line 42) | pub fn else_if(self, cond: &'a dyn Signal<'a>, when_true: T) -> ElseIf<'... function else_ (line 52) | pub fn else_>>(self, when_false: F) -> &'a dy... type ElseIfParent (line 98) | enum ElseIfParent<'a, T> { type ElseIf (line 104) | pub struct ElseIf<'a, T> { function else_if (line 111) | pub fn else_if(self, cond: &'a dyn Signal<'a>, when_true: T) -> ElseIf<'... function else_ (line 121) | pub fn else_>>(self, when_false: F) -> &'a dy... FILE: kaze/src/runtime/tracing.rs type TraceValue (line 9) | pub enum TraceValue { type TraceValueType (line 21) | pub enum TraceValueType { method from_bit_width (line 29) | pub(crate) fn from_bit_width(bit_width: u32) -> TraceValueType { type Trace (line 44) | pub trait Trace { method push_module (line 47) | fn push_module(&mut self, name: &'static str) -> io::Result<()>; method pop_module (line 48) | fn pop_module(&mut self) -> io::Result<()>; method add_signal (line 49) | fn add_signal( method update_time_stamp (line 56) | fn update_time_stamp(&mut self, time_stamp: u64) -> io::Result<()>; method update_signal (line 57) | fn update_signal(&mut self, signal_id: &Self::SignalId, value: TraceVa... FILE: kaze/src/runtime/tracing/vcd.rs type TimeScaleUnit (line 9) | pub enum TimeScaleUnit { function from (line 19) | fn from(time_scale_unit: TimeScaleUnit) -> Self { type VcdTrace (line 31) | pub struct VcdTrace { function new (line 40) | pub fn new(w: W, time_scale: u32, time_scale_unit: TimeScaleUnit) -> io:... type SignalId (line 56) | type SignalId = usize; method push_module (line 58) | fn push_module(&mut self, name: &'static str) -> io::Result<()> { method pop_module (line 66) | fn pop_module(&mut self) -> io::Result<()> { method add_signal (line 78) | fn add_signal( method update_time_stamp (line 96) | fn update_time_stamp(&mut self, time_stamp: u64) -> io::Result<()> { method update_signal (line 100) | fn update_signal(&mut self, signal_id: &Self::SignalId, value: TraceValu... type VcdTraceSignal (line 131) | struct VcdTraceSignal { FILE: kaze/src/sim.rs type GenerationOptions (line 21) | pub struct GenerationOptions { function generate (line 27) | pub fn generate<'a, W: Write>( function undriven_instance_input_error (line 749) | fn undriven_instance_input_error() { function undriven_register_error1 (line 764) | fn undriven_register_error1() { function undriven_register_error2 (line 778) | fn undriven_register_error2() { function mem_without_read_ports_error1 (line 793) | fn mem_without_read_ports_error1() { function mem_without_read_ports_error2 (line 807) | fn mem_without_read_ports_error2() { function mem_without_initial_contents_or_write_port_error1 (line 822) | fn mem_without_initial_contents_or_write_port_error1() { function mem_without_initial_contents_or_write_port_error2 (line 837) | fn mem_without_initial_contents_or_write_port_error2() { function combinational_loop_error (line 853) | fn combinational_loop_error() { FILE: kaze/src/sim/compiler.rs type Compiler (line 11) | pub(super) struct Compiler<'graph, 'context, 'expr_arena> { function new (line 22) | pub fn new( function compile_signal (line 39) | pub fn compile_signal( function gen_mask (line 564) | fn gen_mask( function gen_shift_left (line 591) | fn gen_shift_left( function gen_shift_right (line 609) | fn gen_shift_right( function gen_cast (line 627) | fn gen_cast( function gen_sign_extend_shifts (line 661) | fn gen_sign_extend_shifts( FILE: kaze/src/sim/ir.rs type AssignmentContext (line 8) | pub struct AssignmentContext<'arena> { function new (line 15) | pub fn new(arena: &'arena Arena>) -> AssignmentContext<'are... function gen_temp (line 23) | pub fn gen_temp(&mut self, expr: &'arena Expr<'arena>) -> &'arena Expr<'... function is_empty (line 47) | pub fn is_empty(&self) -> bool { function push (line 51) | pub fn push(&mut self, assignment: Assignment<'arena>) { function write (line 55) | pub fn write(&self, w: &mut code_writer::CodeWriter) -> Res... type Assignment (line 64) | pub struct Assignment<'arena> { function write (line 70) | pub fn write(&self, w: &mut code_writer::CodeWriter) -> Res... type Expr (line 91) | pub enum Expr<'arena> { function from_constant (line 134) | pub fn from_constant( function write (line 153) | pub fn write(&self, w: &mut code_writer::CodeWriter) -> Res... type Constant (line 281) | pub enum Constant { type InfixBinOp (line 289) | pub enum InfixBinOp { type Scope (line 305) | pub enum Scope { type UnOp (line 311) | pub enum UnOp { type ValueType (line 316) | pub enum ValueType { method from_bit_width (line 327) | pub fn from_bit_width(bit_width: u32) -> ValueType { method to_signed (line 341) | pub fn to_signed(&self) -> ValueType { method name (line 350) | pub fn name(&self) -> &'static str { method bit_width (line 362) | pub fn bit_width(&self) -> u32 { method zero_str (line 371) | pub fn zero_str(&self) -> &'static str { FILE: kaze/src/state_elements.rs type Register (line 6) | pub(super) struct Register<'a> { type Mem (line 12) | pub(super) struct Mem<'a> { type ReadSignalNames (line 27) | pub struct ReadSignalNames { type IncludedPorts (line 36) | pub(super) enum IncludedPorts { type StateElements (line 41) | pub(super) struct StateElements<'a> { function new (line 47) | pub fn new( function visit_module (line 68) | fn visit_module<'a>( function visit_signal (line 112) | fn visit_signal<'a>( FILE: kaze/src/validation.rs function validate_module_hierarchy (line 4) | pub fn validate_module_hierarchy<'a>(m: &'a graph::Module<'a>) { function detect_undriven_registers_and_inputs (line 10) | fn detect_undriven_registers_and_inputs<'a>(m: &graph::Module<'a>, root:... function detect_mem_errors (line 33) | fn detect_mem_errors<'a>(m: &graph::Module<'a>, root: &graph::Module<'a>) { function detect_combinational_loops (line 49) | fn detect_combinational_loops<'a>(m: &graph::Module<'a>, root: &graph::M... function trace_signal (line 59) | fn trace_signal<'a>( FILE: kaze/src/verilog.rs function generate (line 18) | pub fn generate<'a, W: Write>(m: &'a graph::Module<'a>, w: W) -> Result<... function undriven_instance_input_error (line 294) | fn undriven_instance_input_error() { function undriven_register_error1 (line 309) | fn undriven_register_error1() { function undriven_register_error2 (line 323) | fn undriven_register_error2() { function mem_without_read_ports_error1 (line 338) | fn mem_without_read_ports_error1() { function mem_without_read_ports_error2 (line 352) | fn mem_without_read_ports_error2() { function mem_without_initial_contents_or_write_port_error1 (line 367) | fn mem_without_initial_contents_or_write_port_error1() { function mem_without_initial_contents_or_write_port_error2 (line 382) | fn mem_without_initial_contents_or_write_port_error2() { function combinational_loop_error (line 398) | fn combinational_loop_error() { FILE: kaze/src/verilog/compiler.rs type Compiler (line 8) | pub(super) struct Compiler<'graph> { function new (line 13) | pub fn new() -> Compiler<'graph> { function compile_signal (line 19) | pub fn compile_signal( FILE: kaze/src/verilog/ir.rs type NodeDecl (line 6) | pub struct NodeDecl { method write (line 13) | pub fn write(&self, w: &mut code_writer::CodeWriter) -> R... type NetType (line 27) | pub enum NetType { method write (line 33) | pub fn write(&self, w: &mut code_writer::CodeWriter) -> R... type AssignmentContext (line 41) | pub struct AssignmentContext { method new (line 47) | pub fn new() -> AssignmentContext { method gen_temp (line 54) | pub fn gen_temp(&mut self, expr: Expr, bit_width: u32, name_prefix: St... method is_empty (line 71) | pub fn is_empty(&self) -> bool { method push (line 75) | pub fn push(&mut self, assignment: Assignment) { method write (line 79) | pub fn write(&self, w: &mut code_writer::CodeWriter) -> R... type Assignment (line 95) | pub struct Assignment { method write (line 101) | fn write(&self, w: &mut code_writer::CodeWriter) -> Resul... type Expr (line 114) | pub enum Expr { method from_constant (line 155) | pub fn from_constant(value: &graph::Constant, bit_width: u32) -> Expr { method write (line 162) | pub fn write(&self, w: &mut code_writer::CodeWriter) -> R... type BinOp (line 247) | pub enum BinOp { type UnOp (line 266) | pub enum UnOp { FILE: sim-tests/build.rs function main (line 8) | fn main() -> Result<()> { function input_masking (line 256) | fn input_masking<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function widest_input (line 264) | fn widest_input<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function add_test_module (line 272) | fn add_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function sub_test_module (line 302) | fn sub_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function mul_test_module (line 332) | fn mul_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function mul_signed_test_module (line 366) | fn mul_signed_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'... function shl_test_module (line 400) | fn shl_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function shr_test_module (line 442) | fn shr_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function shr_arithmetic_test_module (line 484) | fn shr_arithmetic_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Modu... function bit_and_test_module (line 526) | fn bit_and_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function bit_or_test_module (line 536) | fn bit_or_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function bit_xor_test_module (line 546) | fn bit_xor_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function not_test_module (line 556) | fn not_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function reg_test_module (line 565) | fn reg_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function simple_reg_delay (line 580) | fn simple_reg_delay<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function bit_test_module_0 (line 597) | fn bit_test_module_0<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function bit_test_module_1 (line 606) | fn bit_test_module_1<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function bits_test_module_0 (line 618) | fn bits_test_module_0<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function bits_test_module_1 (line 632) | fn bits_test_module_1<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function repeat_test_module (line 653) | fn repeat_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function concat_test_module (line 671) | fn concat_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function eq_test_module (line 689) | fn eq_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function ne_test_module (line 700) | fn ne_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function lt_test_module (line 711) | fn lt_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function le_test_module (line 722) | fn le_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function gt_test_module (line 733) | fn gt_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function ge_test_module (line 744) | fn ge_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function lt_signed_test_module (line 755) | fn lt_signed_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function le_signed_test_module (line 766) | fn le_signed_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function gt_signed_test_module (line 777) | fn gt_signed_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function ge_signed_test_module (line 788) | fn ge_signed_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function mux_test_module (line 799) | fn mux_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function reg_next_test_module (line 831) | fn reg_next_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function reg_next_with_default_test_module (line 842) | fn reg_next_with_default_test_module<'a>(p: &'a impl ModuleParent<'a>) -... function instantiation_test_module_comb (line 856) | fn instantiation_test_module_comb<'a>(p: &'a impl ModuleParent<'a>) -> &... function instantiation_test_module_reg (line 895) | fn instantiation_test_module_reg<'a>(p: &'a impl ModuleParent<'a>) -> &M... function nested_instantiation_test_module (line 936) | fn nested_instantiation_test_module<'a>(p: &'a impl ModuleParent<'a>) ->... function mem_test_module_0 (line 993) | fn mem_test_module_0<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function mem_test_module_1 (line 1011) | fn mem_test_module_1<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function mem_test_module_2 (line 1025) | fn mem_test_module_2<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function trace_test_module_0 (line 1043) | fn trace_test_module_0<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function trace_test_module_1 (line 1055) | fn trace_test_module_1<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function trace_test_module_2 (line 1070) | fn trace_test_module_2<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function trace_test_module_3 (line 1108) | fn trace_test_module_3<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'a> { function deep_graph_test_module (line 1126) | fn deep_graph_test_module<'a>(p: &'a impl ModuleParent<'a>) -> &Module<'... FILE: sim-tests/src/lib.rs type CodeWriter (line 19) | struct CodeWriter<'a, 'b> { function new (line 25) | fn new(f: &'a mut fmt::Formatter<'b>) -> CodeWriter<'a, 'b> { function indent (line 29) | fn indent(&mut self) { function unindent (line 33) | fn unindent(&mut self) { function append_indent (line 40) | fn append_indent(&mut self) -> fmt::Result { function append_newline (line 47) | fn append_newline(&mut self) -> fmt::Result { function append (line 52) | fn append(&mut self, s: &str) -> fmt::Result { function append_line (line 57) | fn append_line(&mut self, s: &str) -> fmt::Result { type Capture (line 66) | struct Capture { method fmt (line 71) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method new (line 113) | fn new() -> Capture { type CaptureModule (line 119) | struct CaptureModule { type CaptureSignal (line 125) | struct CaptureSignal { type CaptureTrace (line 131) | struct CaptureTrace<'a> { function new (line 140) | fn new(capture: &'a mut Capture) -> CaptureTrace<'a> { type SignalId (line 152) | type SignalId = Rc; method push_module (line 154) | fn push_module(&mut self, name: &'static str) -> io::Result<()> { method pop_module (line 166) | fn pop_module(&mut self) -> io::Result<()> { method add_signal (line 183) | fn add_signal( method update_time_stamp (line 202) | fn update_time_stamp(&mut self, time_stamp: u64) -> io::Result<()> { method update_signal (line 208) | fn update_signal( function input_masking (line 220) | fn input_masking() { function widest_input (line 229) | fn widest_input() { function add_test_module (line 238) | fn add_test_module() { function sub_test_module (line 308) | fn sub_test_module() { function mul_test_module (line 378) | fn mul_test_module() { function mul_signed_test_module (line 436) | fn mul_signed_test_module() { function shl_test_module (line 494) | fn shl_test_module() { function shr_test_module (line 649) | fn shr_test_module() { function shr_arithmetic_test_module (line 804) | fn shr_arithmetic_test_module() { function bit_and_test_module (line 1014) | fn bit_and_test_module() { function bit_or_test_module (line 1045) | fn bit_or_test_module() { function bit_xor_test_module (line 1076) | fn bit_xor_test_module() { function not_test_module (line 1107) | fn not_test_module() { function reg_test_module (line 1128) | fn reg_test_module() { function simple_reg_delay (line 1162) | fn simple_reg_delay() { function bit_test_module_0 (line 1186) | fn bit_test_module_0() { function bit_test_module_1 (line 1199) | fn bit_test_module_1() { function bits_test_module_0 (line 1211) | fn bits_test_module_0() { function bits_test_module_1 (line 1240) | fn bits_test_module_1() { function repeat_test_module (line 1260) | fn repeat_test_module() { function concat_test_module (line 1289) | fn concat_test_module() { function eq_test_module (line 1306) | fn eq_test_module() { function ne_test_module (line 1323) | fn ne_test_module() { function lt_test_module (line 1340) | fn lt_test_module() { function le_test_module (line 1357) | fn le_test_module() { function gt_test_module (line 1374) | fn gt_test_module() { function ge_test_module (line 1391) | fn ge_test_module() { function lt_signed_test_module (line 1408) | fn lt_signed_test_module() { function le_signed_test_module (line 1425) | fn le_signed_test_module() { function gt_signed_test_module (line 1442) | fn gt_signed_test_module() { function ge_signed_test_module (line 1459) | fn ge_signed_test_module() { function mux_test_module (line 1476) | fn mux_test_module() { function reg_next_test_module (line 1521) | fn reg_next_test_module() { function reg_next_with_default_test_module (line 1545) | fn reg_next_with_default_test_module() { function instantiation_test_module_comb (line 1570) | fn instantiation_test_module_comb() { function instantiation_test_module_reg (line 1589) | fn instantiation_test_module_reg() { function nested_instantiation_test_module (line 1613) | fn nested_instantiation_test_module() { function mem_test_module_0 (line 1632) | fn mem_test_module_0() { function mem_test_module_1 (line 1805) | fn mem_test_module_1() { function mem_test_module_2 (line 1864) | fn mem_test_module_2() { function trace_test_module_0 (line 2037) | fn trace_test_module_0() -> io::Result<()> { function trace_test_module_1 (line 2200) | fn trace_test_module_1() -> io::Result<()> { function trace_test_module_2 (line 2346) | fn trace_test_module_2() -> io::Result<()> { function trace_test_module_3 (line 2529) | fn trace_test_module_3() -> io::Result<()> { function deep_graph_test_module (line 2840) | fn deep_graph_test_module() {