plotnik_lib/bytecode/
mod.rs1mod constants;
6mod dump;
7mod effects;
8mod entrypoint;
9mod format;
10mod header;
11mod ids;
12mod instructions;
13mod ir;
14mod module;
15mod nav;
16mod sections;
17mod type_meta;
18
19pub use constants::{
20 MAGIC, MAX_MATCH_PAYLOAD_SLOTS, MAX_PRE_EFFECTS, SECTION_ALIGN, STEP_SIZE, VERSION,
21};
22
23pub use ids::{StringId, TypeId};
24
25pub use header::{Header, flags};
26
27pub use sections::{FieldSymbol, NodeSymbol, Slice, TriviaEntry};
28
29pub use entrypoint::Entrypoint;
30
31pub use type_meta::{TypeData, TypeDef, TypeKind, TypeMember, TypeMetaHeader, TypeName};
32
33pub use nav::Nav;
34
35pub use effects::{EffectOp, EffectOpcode};
36
37pub use instructions::{
38 Call, Match, Opcode, Return, StepAddr, StepId, Trampoline, align_to_section,
39 select_match_opcode,
40};
41
42pub use module::{
43 ByteStorage, EntrypointsView, Instruction, Module, ModuleError, StringsView, SymbolsView,
44 TriviaView, TypesView,
45};
46
47pub use dump::dump;
48
49pub use format::{
50 LineBuilder, Symbol, cols, format_effect, nav_symbol, superscript, trace, truncate_text,
51 width_for_count,
52};
53
54pub use ir::{
55 CallIR, EffectIR, InstructionIR, Label, LayoutResult, MatchIR, MemberRef, NodeTypeIR, ReturnIR,
56 TrampolineIR,
57};
58
59#[cfg(test)]
60mod effects_tests;
61#[cfg(test)]
62mod entrypoint_tests;
63#[cfg(test)]
64mod format_tests;
65#[cfg(test)]
66mod header_tests;
67#[cfg(test)]
68mod instructions_tests;
69#[cfg(test)]
70mod ir_tests;
71#[cfg(test)]
72mod module_tests;
73#[cfg(test)]
74mod nav_tests;
75#[cfg(test)]
76mod sections_tests;
77#[cfg(test)]
78mod type_meta_tests;