A literal value of any kind, such as integer constants, string
literals, time literals, real numbers, etc.
This is a product type, introduced by deftagsum in support of vl-expr.
- val — vl-value
- The guts of the literal. This explains what kind of literal it
is, its value, and has other related information.
- atts — vl-atts
- Any attributes associated with this literal. These are generally
nil upon parsing since the Verilog or SystemVerilog grammars
don't really provide anywhere for (* foo = bar, baz *)
style attributes to be attached to literals. However, we found
that it was convenient for every kind of expression to support
attributes, so we include them for internal use.
- The actual value of a vl-literal expression, e.g., 42,
3'bxxx, '1, "foo", 3.14, 45.12ns, etc.
- Get the val field from a vl-literal.
- Get the atts field from a vl-literal.
- Basic constructor macro for vl-literal structures.
- Modifying constructor for vl-literal structures.