Skip to main content

RunUnit

Type Alias RunUnit 

Source
pub type RunUnit<'w> = RunUnit<'w, Rc<Compiled>, Library>;

Aliased Type§

pub struct RunUnit<'w> {
Show 21 fields pub mem: Vec<u8>, pub depth: usize, pub programs: Vec<Loaded<Rc<Compiled>>>, pub library: Library, pub dds: Dds, pub sysin: Option<Box<dyn BufRead + 'w>>, pub clock: Clock, pub out: &'w mut dyn Write, pub err: &'w mut dyn Write, pub cics: Option<Task>, pub eib: usize, pub cics_files: HashMap<String, Open>, pub sql: Option<Session<'w>>, pub le: State, pub oo: Objects<Rc<ClassCode<Rc<Compiled>>>>, pub observer: Option<Box<dyn FnMut(Event<'_>) + 'w>>, pub random: Option<u32>, pub entries: Vec<Entry>, pub statements: Option<StatementFilter>, pub taint: Option<Taint>, pub statement_limit: Option<u64>, /* private fields */
}

Fields§

§mem: Vec<u8>§depth: usize

PERFORMs and CALLs in progress, across every program.

§programs: Vec<Loaded<Rc<Compiled>>>§library: Library§dds: Dds§sysin: Option<Box<dyn BufRead + 'w>>§clock: Clock§out: &'w mut dyn Write§err: &'w mut dyn Write§cics: Option<Task>

The CICS task a harness run stands in for, with its EXEC interface block and open files.

§eib: usize§cics_files: HashMap<String, Open>§sql: Option<Session<'w>>

The database EXEC SQL statements reach, when the run has one.

§le: State

Language Environment’s heap storage and message files.

§oo: Objects<Rc<ClassCode<Rc<Compiled>>>>

Classes, objects and the JNI environment of the run unit’s object-oriented programs.

§observer: Option<Box<dyn FnMut(Event<'_>) + 'w>>

Told what the run opens, closes and loads, when a caller keeps evidence of it.

§random: Option<u32>

FUNCTION RANDOM’s generator, one for the run unit, from the first reference on.

§entries: Vec<Entry>

The entries SET TO ENTRY has named, which function-pointers and procedure-pointers hold.

§statements: Option<StatementFilter>

The statements an observer is told of as each starts; None tells it of none.

§taint: Option<Taint>

Which bytes may hold input, when the run traces input.

§statement_limit: Option<u64>

How many more statements may start before the run ends with S322; None for no limit.

Trait Implementations§

Source§

impl AddProgram for RunUnit<'_>

Source§

fn add( &mut self, compiled: Option<Rc<Compiled>>, program: &Program, size: usize, ) -> usize