pub struct BirModule {
pub functions: Vec<BirFunction>,
}Expand description
A parsed BIR module containing one or more functions.
Fields§
§functions: Vec<BirFunction>Functions in declaration order.
Implementations§
Source§impl BirModule
impl BirModule
Sourcepub fn parse(source: &str) -> Result<BirModule, ParseError>
pub fn parse(source: &str) -> Result<BirModule, ParseError>
Parse a BIR text program into a module.
use brik64_bir::BirModule;
let src = "FUNCTION fn::answer [] -> i64\n CONST $0 42\n RETURN $0\nEND\n";
let module = BirModule::parse(src).unwrap();
assert_eq!(module.functions.len(), 1);
assert_eq!(module.functions[0].name, "fn::answer");Sourcepub fn get_function(&self, name: &str) -> Option<&BirFunction>
pub fn get_function(&self, name: &str) -> Option<&BirFunction>
Find a function by name.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BirModule
impl RefUnwindSafe for BirModule
impl Send for BirModule
impl Sync for BirModule
impl Unpin for BirModule
impl UnsafeUnpin for BirModule
impl UnwindSafe for BirModule
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more