pub fn new(file: &'a Arc<File>, search_path: &'a Path, arenas: &'arenas Arenas<'arenas>) -> Self {
        let mut this = Self {
            arenas,
            file,
            search_path,
            scopes: vec![Scope::empty()],
            variables: vec![],
        };

        this.define_variable(VarInfo {
            decl_span: file.span.subspan(0, 0),
            name: "true",
            expr: this
                .arenas
                .alloc(Expr::Value(this.arenas.alloc(Value::Bool(true)))),
        }).unwrap();
        this.define_variable(VarInfo {
            decl_span: file.span.subspan(0, 0),
            name: "false",
            expr: this
                .arenas
                .alloc(Expr::Value(this.arenas.alloc(Value::Bool(false)))),
        }).unwrap();
        this
    }
/// Creates a new AST builder.
///
/// # Parameters
///
/// * `file`: Source file being processed.
/// * `search_path`: Path to prepend to relative paths (`./xyz`). This
///   should be the directory containing the source file, or the current
///   working directory if no real file is processed.
/// * `arenas`: Arenas to allocate AST nodes and data in.
Creates a new AST builder.
Creates a new AST builder .
pub fn new(file: &'a Arc<File>, search_path: &'a Path, arenas: &'arenas Arenas<'arenas>) -> Self {
        let mut this = Self {
            arenas,
            file,
            search_path,
            scopes: vec![Scope::empty()],
            variables: vec![],
        };
        this.define_variable(VarInfo {
            decl_span: file.span.subspan(0, 0),
            name: "true",
            expr: this
                .arenas
                .alloc(Expr::Value(this.arenas.alloc(Value::Bool(true)))),
        }).unwrap();
        this.define_variable(VarInfo {
            decl_span: file.span.subspan(0, 0),
            name: "false",
            expr: this
                .arenas
                .alloc(Expr::Value(this.arenas.alloc(Value::Bool(false)))),
        }).unwrap();
        this
    }
pub fn new ( file : & ' a Arc < File > , search_path : & ' a Path , arenas : & ' arenas Arenas < ' arenas > ) -> Self { let mut this = Self { arenas , file , search_path , scopes : vec ! [ Scope empty ( ) ] , variables : vec ! [ ] , } ; this . define_variable ( VarInfo { decl_span : file . span . subspan ( 0 , 0 ) , name : " " , expr : this . arenas . alloc ( Expr :: Value ( this . arenas . alloc ( Value :: Bool ( true ) ) ) ) , } ) . unwrap ( ) ; this . define_variable ( VarInfo { decl_span : file . span . subspan ( 0 , 0 ) , name : " " , expr : this . arenas . alloc ( Expr :: Value ( this . arenas . alloc ( Value :: Bool ( false ) ) ) ) , } ) . unwrap ( ) ; this }
Creates a new AST builder.
Creates a new AST builder .
file
&'a Arc<File>
search_path
&'a Path
arenas
&'arenas Arenas<'arenas>
file
&'a Arc<File>
search_path
&'a Path
arenas
&'arenas Arenas<'arenas>