pub struct CreateExtension {
pub if_not_exists: bool,
pub name: Ident,
pub with: bool,
pub options: ThinVec<CreateExtensionOption>,
pub meta: Meta,
}Expand description
A CREATE EXTENSION [IF NOT EXISTS] <name> [WITH] [SCHEMA s] [VERSION v] [CASCADE]
statement (PostgreSQL; gated by
StatementDdlGates::extension_ddl).
Non-generic: an extension is named by a bare identifier and its options carry only
names and version strings — no expressions or extension nodes. The WITH keyword is
optional sugar (PostgreSQL’s opt_with); with records whether it was
written so it round-trips. The options are order-independent and repeatable in the
grammar (create_extension_opt_list), kept here in source order.
Fields§
§if_not_exists: boolWhether the if not exists form was present in the source.
name: IdentThe extension name.
with: boolWhether the optional WITH keyword preceded the option list.
options: ThinVec<CreateExtensionOption>Options supplied in source order.
meta: MetaSource location and node identity.
Trait Implementations§
Source§impl Clone for CreateExtension
impl Clone for CreateExtension
Source§fn clone(&self) -> CreateExtension
fn clone(&self) -> CreateExtension
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CreateExtension
impl Debug for CreateExtension
Source§impl<'de> Deserialize<'de> for CreateExtension
impl<'de> Deserialize<'de> for CreateExtension
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for CreateExtension
Source§impl Hash for CreateExtension
impl Hash for CreateExtension
Source§impl PartialEq for CreateExtension
impl PartialEq for CreateExtension
Source§impl Render for CreateExtension
impl Render for CreateExtension
Source§fn render(&self, ctx: &RenderCtx<'_>, f: &mut Formatter<'_>) -> Result
fn render(&self, ctx: &RenderCtx<'_>, f: &mut Formatter<'_>) -> Result
Return the render for this value.
Source§fn operand_binding_power(&self) -> Option<BindingPower>
fn operand_binding_power(&self) -> Option<BindingPower>
The binding power this node contributes when it appears as an operand, or
None (the default) for a self-delimiting node — an atom, call, or
constructor — that never needs parentheses. Read moreSource§impl Serialize for CreateExtension
impl Serialize for CreateExtension
impl StructuralPartialEq for CreateExtension
Auto Trait Implementations§
impl Freeze for CreateExtension
impl RefUnwindSafe for CreateExtension
impl Send for CreateExtension
impl Sync for CreateExtension
impl Unpin for CreateExtension
impl UnsafeUnpin for CreateExtension
impl UnwindSafe for CreateExtension
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> DynAstExt for T
impl<T> DynAstExt for T
Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Erase to
&dyn Any for downcasting a node back to its concrete type.Source§fn dyn_clone(&self) -> Box<dyn DynAstExt>
fn dyn_clone(&self) -> Box<dyn DynAstExt>
Clone into a fresh box — the object-safe stand-in for
Clone (whose
Self-returning signature cannot go through a vtable).Source§fn dyn_eq(&self, other: &dyn DynAstExt) -> bool
fn dyn_eq(&self, other: &dyn DynAstExt) -> bool
Structural equality against another erased node — the object-safe stand-in
for
PartialEq (whose &Self argument cannot go through a vtable). Equal
iff other holds the same concrete type and that type deems the values
equal; differently-typed nodes are never equal.