pub struct FileBuilder<'a, Stdout, Stderr>{
pub environment: &'a RefCell<Environment<Stdout, Stderr>>,
pub last: Option<Rc<Val>>,
pub out: Option<Rc<Val>>,
/* private fields */
}
Expand description
Builder handles building ucg code for a single file.
Fields§
§environment: &'a RefCell<Environment<Stdout, Stderr>>
§last: Option<Rc<Val>>
§out: Option<Rc<Val>>
Implementations§
Source§impl<'a, Stdout, Stderr> FileBuilder<'a, Stdout, Stderr>
impl<'a, Stdout, Stderr> FileBuilder<'a, Stdout, Stderr>
Sourcepub fn new<P: Into<PathBuf>>(
working_dir: P,
import_paths: &'a Vec<PathBuf>,
environment: &'a RefCell<Environment<Stdout, Stderr>>,
) -> Self
pub fn new<P: Into<PathBuf>>( working_dir: P, import_paths: &'a Vec<PathBuf>, environment: &'a RefCell<Environment<Stdout, Stderr>>, ) -> Self
Constructs a new Builder.
pub fn clone_builder(&self) -> Self
pub fn set_strict(&mut self, strict: bool)
Sourcepub fn build<P: Into<PathBuf>>(&mut self, file: P) -> Result<(), Box<dyn Error>>
pub fn build<P: Into<PathBuf>>(&mut self, file: P) -> Result<(), Box<dyn Error>>
Builds a ucg file at the named path.
Sourcepub fn enable_validate_mode(&mut self)
pub fn enable_validate_mode(&mut self)
Puts the builder in validation mode.
Among other things this means that assertions will be evaluated and their results will be saved in a report for later output.
Sourcepub fn eval_stmts(
&mut self,
ast: Vec<Statement>,
path: Option<PathBuf>,
) -> Result<(), Box<dyn Error>>
pub fn eval_stmts( &mut self, ast: Vec<Statement>, path: Option<PathBuf>, ) -> Result<(), Box<dyn Error>>
Builds a list of parsed UCG Statements.
pub fn repl( &mut self, editor: Editor<()>, config_home: PathBuf, ) -> Result<(), Box<dyn Error>>
pub fn eval_input( &mut self, input: OffsetStrIter<'_>, path: Option<PathBuf>, ) -> Result<Rc<Val>, Box<dyn Error>>
Sourcepub fn eval_string(&mut self, input: &str) -> Result<Rc<Val>, Box<dyn Error>>
pub fn eval_string(&mut self, input: &str) -> Result<Rc<Val>, Box<dyn Error>>
Evaluate an input string as UCG.
pub fn eval_expr(&mut self, expr: Expression) -> Result<Rc<Val>, Box<dyn Error>>
pub fn get_out_by_name(&self, name: &str) -> Option<Rc<Val>>
pub fn assert_results(&self) -> bool
pub fn assert_summary(&self) -> String
Auto Trait Implementations§
impl<'a, Stdout, Stderr> Freeze for FileBuilder<'a, Stdout, Stderr>
impl<'a, Stdout, Stderr> !RefUnwindSafe for FileBuilder<'a, Stdout, Stderr>
impl<'a, Stdout, Stderr> !Send for FileBuilder<'a, Stdout, Stderr>
impl<'a, Stdout, Stderr> !Sync for FileBuilder<'a, Stdout, Stderr>
impl<'a, Stdout, Stderr> Unpin for FileBuilder<'a, Stdout, Stderr>
impl<'a, Stdout, Stderr> !UnwindSafe for FileBuilder<'a, Stdout, Stderr>
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