pub struct TableMaintenanceStatement {
pub kind: TableMaintenanceKind,
pub table_keyword: TableKeyword,
pub tables: ThinVec<ObjectName>,
pub meta: Meta,
}Expand description
A MySQL table-administration maintenance statement — one of the five admin-table
verbs {ANALYZE | CHECK | CHECKSUM | OPTIMIZE | REPAIR} {TABLE | TABLES} <table-list> [options] (gated by
MaintenanceSyntax::table_maintenance).
The five verbs share one shape — a verb, an optional NO_WRITE_TO_BINLOG | LOCAL
binlog-suppression prefix (ANALYZE/OPTIMIZE/REPAIR only), the TABLE/TABLES
keyword, a comma-separated table list, and per-verb trailing options. That shared
spine (the table_keyword synonym tag and the
tables list) is hoisted here once, and the verb rides the
kind axis carrying only what differs, rather than five bespoke
statement nodes. Non-generic: every operand is a name, keyword flag, column list, or
integer literal — no embedded expression.
Fields§
§kind: TableMaintenanceKindThe verb and its per-verb options; see TableMaintenanceKind.
table_keyword: TableKeywordWhether the shared table keyword was written TABLE or its TABLES synonym.
tables: ThinVec<ObjectName>The comma-separated target table list (each schema-qualifiable).
meta: MetaSource location and node identity.
Trait Implementations§
Source§impl Clone for TableMaintenanceStatement
impl Clone for TableMaintenanceStatement
Source§fn clone(&self) -> TableMaintenanceStatement
fn clone(&self) -> TableMaintenanceStatement
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TableMaintenanceStatement
impl Debug for TableMaintenanceStatement
Source§impl<'de> Deserialize<'de> for TableMaintenanceStatement
impl<'de> Deserialize<'de> for TableMaintenanceStatement
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>,
impl Eq for TableMaintenanceStatement
Source§impl Hash for TableMaintenanceStatement
impl Hash for TableMaintenanceStatement
Source§impl Render for TableMaintenanceStatement
impl Render for TableMaintenanceStatement
Source§fn render(&self, ctx: &RenderCtx<'_>, f: &mut Formatter<'_>) -> Result
fn render(&self, ctx: &RenderCtx<'_>, f: &mut Formatter<'_>) -> Result
Source§fn operand_binding_power(&self) -> Option<BindingPower>
fn operand_binding_power(&self) -> Option<BindingPower>
None (the default) for a self-delimiting node — an atom, call, or
constructor — that never needs parentheses. Read moreSource§impl Spanned for TableMaintenanceStatement
impl Spanned for TableMaintenanceStatement
impl StructuralPartialEq for TableMaintenanceStatement
Auto Trait Implementations§
impl Freeze for TableMaintenanceStatement
impl RefUnwindSafe for TableMaintenanceStatement
impl Send for TableMaintenanceStatement
impl Sync for TableMaintenanceStatement
impl Unpin for TableMaintenanceStatement
impl UnsafeUnpin for TableMaintenanceStatement
impl UnwindSafe for TableMaintenanceStatement
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
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)
&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 (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
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.