pub struct DropExtension<'a> {
pub drop_span: Span,
pub extension_span: Span,
pub if_exists: Option<Span>,
pub extensions: Vec<Identifier<'a>>,
pub restrict_or_cascade: Option<CascadeOrRestrict>,
}Expand description
Represent a drop extension statement (PostgreSQL)
let sql = "DROP EXTENSION IF EXISTS myext, otherext CASCADE;";
let mut issues = Issues::new(sql);
let mut stmts = parse_statements(sql, &mut issues, &options);
let drop: DropExtension = match stmts.pop() {
Some(Statement::DropExtension(d)) => *d,
_ => panic!("We should get a drop extension statement")
};
assert!(drop.extensions.get(0).unwrap().as_str() == "myext");Fields§
§drop_span: SpanSpan of “DROP”
extension_span: SpanSpan of “EXTENSION”
if_exists: Option<Span>Span of “IF EXISTS” if specified
extensions: Vec<Identifier<'a>>List of extensions to drop
restrict_or_cascade: Option<CascadeOrRestrict>Restrict or cascade option (PostgreSQL)
Trait Implementations§
Source§impl<'a> Clone for DropExtension<'a>
impl<'a> Clone for DropExtension<'a>
Source§fn clone(&self) -> DropExtension<'a>
fn clone(&self) -> DropExtension<'a>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a> Debug for DropExtension<'a>
impl<'a> Debug for DropExtension<'a>
Auto Trait Implementations§
impl<'a> Freeze for DropExtension<'a>
impl<'a> RefUnwindSafe for DropExtension<'a>
impl<'a> Send for DropExtension<'a>
impl<'a> Sync for DropExtension<'a>
impl<'a> Unpin for DropExtension<'a>
impl<'a> UnsafeUnpin for DropExtension<'a>
impl<'a> UnwindSafe for DropExtension<'a>
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