Module encoding
Expand description
The main component of libLISA’s semantics is an Encoding
.
An encoding represents a group of instructions with similar semantics.
An encoding consists of two components: a bitpattern (for grouping instructions) and Dataflows.
Modules§
- Types representing the bitpattern in an
Encoding
. - Types representing the dataflows in an
Encoding
. - Provides a collection type for
crate::encoding::Encoding
s that can be used in self-referential structures and can be serialized to disk. - Methods for splitting encodings into overlapping groups and finding mimimum covering subsets of encodings.
Structs§
Dataflows
and semantics for a group of similar instructions. An encoding matches at least one instruction. If an encoding matches an instruction, it can be instantiated for that instruction.- An
Encoding
with pre-computed filters. - Describes the order in which outputs should be written, if the part_values match.
Enums§
- An error returned when instantiating an
Encoding
fails. - Error returned by
Encoding::integrity_check
. - An error returned when
Encoding::restrict_to
fails.
Functions§
- Performs an eager merging of a collection of
crate::encoding::Encoding
s. - Performs a conservative merging of a collection of
crate::encoding::Encoding
s.