pub enum Event<'a> {
Open {
dd: &'a str,
mode: OpenMode,
path: &'a Path,
},
Close {
dd: &'a str,
path: &'a Path,
},
Load {
program: &'a str,
source: Option<&'a Path>,
recorded: &'a [(String, Option<SourceFile>)],
facts: Facts,
},
Class {
class: &'a str,
facts: Facts,
},
Paragraph {
program: &'a str,
name: &'a str,
index: usize,
},
Sink {
kind: &'static str,
file: &'a str,
line: u32,
operand: &'a str,
input: Option<bool>,
},
Statement {
file: &'a str,
line: u32,
},
}Expand description
What a run did that its evidence journal records: each file as it is opened and closed, each program CALL loads, with the source it was read from when a library supplied it, and each operation an input could steer, with its operand as the program’s code page reads it.
Variants§
Open
Close
Load
recorded is LoadedProgram::recorded, empty for a program read from source; facts
what the program holds (Loader::facts).
Fields
recorded: &'a [(String, Option<SourceFile>)]Class
A COBOL class definition an INVOKE loaded, with what its data and methods hold.
Paragraph
Control entering paragraph (or section header) index of program at its start.
Sink
kind is cobolwork’s name for the sink (dynamic-program-load, log, …); file is the
library file or COPY member the operation is in, empty for the first program’s own source;
input, under RunUnit::taint, whether an input byte may be in the operand
(crate::taint::Taint::at_sink).
Statement
A statement starting, under RunUnit::statements; file as Sink’s.