pub struct ViewBody {
pub ast: Ast,
pub select: SelectId,
pub columns: Vec<Vec<u8>>,
}Expand description
A view’s parsed definition.
The arena lives here, in the catalog snapshot, rather than being re-parsed on every reference. That is not only a saving: the binder holds the snapshot for the whole statement, so a body kept here outlives the bind and can be bound in place, while one parsed inside the binder would be a local whose borrow ends before the bound tree does.
Fields§
§ast: AstThe arena the view’s SELECT was parsed into.
select: SelectIdThe SELECT inside the arena.
columns: Vec<Vec<u8>>The explicit column list, when the CREATE VIEW wrote one.
Trait Implementations§
impl Eq for ViewBody
impl StructuralPartialEq for ViewBody
Auto Trait Implementations§
impl Freeze for ViewBody
impl RefUnwindSafe for ViewBody
impl Send for ViewBody
impl Sync for ViewBody
impl Unpin for ViewBody
impl UnsafeUnpin for ViewBody
impl UnwindSafe for ViewBody
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