Module Hardcaml_waveterm.Display_rules
A Display_rules.t is an ordered list of rules that specifies the order of ports and the formatting of signals in a waveform.
A port is displayed according to the first rule that it matches, using that rule's wave format. Ports matching rules earlier in the list are displayed above ports matching rules later in the list.
module Rule : sig ... endA
Rule.tis a predicate onPort.ts that specifies the display format of matching ports.
val sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t
val empty : tval add_above : t -> Rule.t -> tadd_above t rulereturns rules where ports matchingruleappear above ports matching the rules int.
val add_below : t -> Rule.t -> tadd_below t rulereturns rules where ports matchingruleappear below ports matching the rules int.
val of_list : Rule.t Hardcaml_waveterm__.Import.list -> tval combine : above:t -> below:t -> tcombine ~above ~belowreturns rules where ports matching the rules inaboveappear above ports matching the rules inbelow.
val sort_ports_and_formats : t -> Port.t Hardcaml_waveterm__.Import.list -> (Port.t * Wave_format.t * Wave_format.alignment) Hardcaml_waveterm__.Import.listConstruct the port order and formatting from the display rules and ports (derived from a testbench simulation object). Unmatched ports are not shown, unless
Rule.default(or a similar custom rule) is included as the last display rule.
val is_displayed : t -> Port.t -> Hardcaml_waveterm__.Import.boolCheck if a given port is displayed by any of the rules.
val is_signal_displayed : t -> Hardcaml.Signal.t -> Hardcaml_waveterm__.Import.boolCheck if a given signal (treated as an internal port) is displayed by any of the rules.