pub trait VisitMut {
// Required method
fn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>;
}Expand description
A type that can be visited by a VisitorMut. See VisitorMut for
recursively visiting parsed SQL statements.
§Note
This trait should be automatically derived for sqlparser AST nodes using the VisitMut proc macro.
#[cfg_attr(feature = "visitor", derive(Visit, VisitMut))]Required Methods§
Sourcefn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>
fn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>
Mutably visit this node with the provided VisitorMut.
Implementations should call the appropriate mutable visitor hooks to
traverse and allow in-place mutation of child nodes. Returning a
ControlFlow value permits early termination of the traversal.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl VisitMut for String
impl VisitMut for String
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for bool
impl VisitMut for bool
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for char
impl VisitMut for char
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for i8
impl VisitMut for i8
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for i16
impl VisitMut for i16
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for i32
impl VisitMut for i32
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for i64
impl VisitMut for i64
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for u8
impl VisitMut for u8
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for u16
impl VisitMut for u16
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for u32
impl VisitMut for u32
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl VisitMut for u64
impl VisitMut for u64
fn visit<V: VisitorMut>(&mut self, _visitor: &mut V) -> ControlFlow<V::Break>
Source§impl<T: VisitMut> VisitMut for Box<T>
impl<T: VisitMut> VisitMut for Box<T>
fn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>
Source§impl<T: VisitMut> VisitMut for Option<T>
impl<T: VisitMut> VisitMut for Option<T>
fn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>
Source§impl<T: VisitMut> VisitMut for Vec<T>
impl<T: VisitMut> VisitMut for Vec<T>
fn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>
Implementors§
impl VisitMut for AccessExpr
impl VisitMut for Action
impl VisitMut for ActionApplyType
impl VisitMut for ActionCreateObjectType
impl VisitMut for ActionExecuteObjectType
impl VisitMut for ActionManageType
impl VisitMut for ActionModifyType
impl VisitMut for ActionMonitorType
impl VisitMut for AddDropSync
impl VisitMut for AfterMatchSkip
impl VisitMut for Alignment
impl VisitMut for AlterCollation
impl VisitMut for AlterCollationOperation
impl VisitMut for AlterColumnOperation
impl VisitMut for AlterConnectorOwner
impl VisitMut for AlterFunction
impl VisitMut for AlterFunctionAction
impl VisitMut for AlterFunctionKind
impl VisitMut for AlterFunctionOperation
impl VisitMut for AlterIndexOperation
impl VisitMut for AlterOperator
impl VisitMut for AlterOperatorClass
impl VisitMut for AlterOperatorClassOperation
impl VisitMut for AlterOperatorFamily
impl VisitMut for AlterOperatorFamilyOperation
impl VisitMut for AlterOperatorOperation
impl VisitMut for AlterPolicy
impl VisitMut for AlterPolicyOperation
impl VisitMut for AlterRoleOperation
impl VisitMut for AlterSchema
impl VisitMut for AlterSchemaOperation
impl VisitMut for AlterTable
impl VisitMut for AlterTableAlgorithm
impl VisitMut for AlterTableLock
impl VisitMut for AlterTableOperation
impl VisitMut for AlterTableType
impl VisitMut for AlterTextSearch
impl VisitMut for AlterTextSearchOperation
impl VisitMut for AlterTextSearchOption
impl VisitMut for AlterType
impl VisitMut for AlterTypeAddValue
impl VisitMut for AlterTypeAddValuePosition
impl VisitMut for AlterTypeOperation
impl VisitMut for AlterTypeRename
impl VisitMut for AlterTypeRenameValue
impl VisitMut for AlterUser
impl VisitMut for AlterUserAddMfaMethodOtp
impl VisitMut for AlterUserAddRoleDelegation
impl VisitMut for AlterUserModifyMfaMethod
impl VisitMut for AlterUserPassword
impl VisitMut for AlterUserRemoveRoleDelegation
impl VisitMut for AlterUserSetPolicy
impl VisitMut for Analyze
impl VisitMut for AnalyzeFormat
impl VisitMut for AnalyzeFormatKind
impl VisitMut for ArgMode
impl VisitMut for Array
impl VisitMut for ArrayElemTypeDef
impl VisitMut for Assignment
impl VisitMut for AssignmentTarget
impl VisitMut for AttachDuckDBDatabaseOption
impl VisitMut for AttachedToken
impl VisitMut for BeginEndStatements
impl VisitMut for BeginTransactionKind
impl VisitMut for BinaryLength
impl VisitMut for BinaryOperator
impl VisitMut for CascadeOption
impl VisitMut for CaseStatement
impl VisitMut for CaseWhen
impl VisitMut for CastFormat
impl VisitMut for CastKind
impl VisitMut for CatalogSyncNamespaceMode
impl VisitMut for CeilFloorKind
impl VisitMut for CharLengthUnits
impl VisitMut for CharacterLength
impl VisitMut for CheckConstraint
impl VisitMut for CloseCursor
impl VisitMut for ClusteredBy
impl VisitMut for ClusteredIndex
impl VisitMut for ColumnDef
impl VisitMut for ColumnOption
impl VisitMut for ColumnOptionDef
impl VisitMut for ColumnOptions
impl VisitMut for ColumnPolicy
impl VisitMut for ColumnPolicyProperty
impl VisitMut for CommentDef
impl VisitMut for CommentObject
impl VisitMut for ConditionalStatementBlock
impl VisitMut for ConditionalStatements
impl VisitMut for ConflictTarget
impl VisitMut for ConnectByKind
impl VisitMut for ConstraintCharacteristics
impl VisitMut for ConstraintReferenceMatchKind
impl VisitMut for ConstraintUsingIndex
impl VisitMut for ContactEntry
impl VisitMut for ContextModifier
impl VisitMut for CopyIntoSnowflakeKind
impl VisitMut for CopyLegacyCsvOption
impl VisitMut for CopyLegacyOption
impl VisitMut for CopyOption
impl VisitMut for CopySource
impl VisitMut for CopyTarget
impl VisitMut for CreateCollation
impl VisitMut for CreateCollationDefinition
impl VisitMut for CreateConnector
impl VisitMut for CreateDatabaseBuilder
impl VisitMut for CreateDomain
impl VisitMut for CreateExtension
impl VisitMut for CreateFunction
impl VisitMut for CreateFunctionBody
impl VisitMut for CreateFunctionUsing
impl VisitMut for CreateIndex
impl VisitMut for CreateOperator
impl VisitMut for CreateOperatorClass
impl VisitMut for CreateOperatorFamily
impl VisitMut for CreatePolicy
impl VisitMut for CreatePolicyCommand
impl VisitMut for CreatePolicyType
impl VisitMut for CreateRole
impl VisitMut for CreateServerOption
impl VisitMut for CreateServerStatement
impl VisitMut for CreateTable
impl VisitMut for CreateTableBuilder
impl VisitMut for CreateTableLike
impl VisitMut for CreateTableLikeDefaults
impl VisitMut for CreateTableLikeKind
impl VisitMut for CreateTableOptions
impl VisitMut for CreateTextSearch
impl VisitMut for CreateTrigger
impl VisitMut for CreateUser
impl VisitMut for CreateView
impl VisitMut for CreateViewAlgorithm
impl VisitMut for CreateViewParams
impl VisitMut for CreateViewSecurity
impl VisitMut for Cte
impl VisitMut for CteAsMaterialized
impl VisitMut for CurrentGrantsKind
impl VisitMut for DataType
impl VisitMut for DateTimeField
impl VisitMut for Declare
impl VisitMut for DeclareAssignment
impl VisitMut for DeclareType
impl VisitMut for Deduplicate
impl VisitMut for DeferrableInitial
impl VisitMut for Delete
impl VisitMut for DenyStatement
impl VisitMut for DescribeAlias
impl VisitMut for DictionaryField
impl VisitMut for DiscardObject
impl VisitMut for DistStyle
impl VisitMut for Distinct
impl VisitMut for DoUpdate
impl VisitMut for DollarQuotedString
impl VisitMut for DropBehavior
impl VisitMut for DropDomain
impl VisitMut for DropExtension
impl VisitMut for DropFunction
impl VisitMut for DropOperator
impl VisitMut for DropOperatorClass
impl VisitMut for DropOperatorFamily
impl VisitMut for DropOperatorSignature
impl VisitMut for DropPolicy
impl VisitMut for DropTrigger
impl VisitMut for DuplicateTreatment
impl VisitMut for EmptyMatchesMode
impl VisitMut for EnumMember
impl VisitMut for ExactNumberInfo
impl VisitMut for ExceptSelectItem
impl VisitMut for ExceptionWhen
impl VisitMut for ExcludeConstraint
impl VisitMut for ExcludeConstraintElement
impl VisitMut for ExcludeConstraintOperator
impl VisitMut for ExcludeSelectItem
impl VisitMut for ExportData
impl VisitMut for Expr
impl VisitMut for ExprWithAlias
impl VisitMut for ExprWithAliasAndOrderBy
impl VisitMut for ExtractSyntax
impl VisitMut for Fetch
impl VisitMut for FetchDirection
impl VisitMut for FetchPosition
impl VisitMut for FileFormat
impl VisitMut for FileSize
impl VisitMut for FileSizeUnit
impl VisitMut for FileStagingCommand
impl VisitMut for FlushLocation
impl VisitMut for FlushType
impl VisitMut for ForClause
impl VisitMut for ForJson
impl VisitMut for ForValues
impl VisitMut for ForXml
impl VisitMut for ForeignKeyConstraint
impl VisitMut for FormatClause
impl VisitMut for FromTable
impl VisitMut for FullTextOrSpatialConstraint
impl VisitMut for FullTextOrSpatialKind
impl VisitMut for Function
impl VisitMut for FunctionArg
impl VisitMut for FunctionArgExpr
impl VisitMut for FunctionArgOperator
impl VisitMut for FunctionArgumentClause
impl VisitMut for FunctionArgumentList
impl VisitMut for FunctionArguments
impl VisitMut for FunctionBehavior
impl VisitMut for FunctionCalledOnNull
impl VisitMut for FunctionDefinitionSetParam
impl VisitMut for FunctionDesc
impl VisitMut for FunctionDeterminismSpecifier
impl VisitMut for FunctionParallel
impl VisitMut for FunctionReturnType
impl VisitMut for FunctionSecurity
impl VisitMut for FunctionSetValue
impl VisitMut for GeneratedAs
impl VisitMut for GeneratedExpressionMode
impl VisitMut for GeometricTypeKind
impl VisitMut for Grant
impl VisitMut for GrantObjects
impl VisitMut for Grantee
impl VisitMut for GranteeName
impl VisitMut for GranteesType
impl VisitMut for GroupByExpr
impl VisitMut for GroupByWithModifier
impl VisitMut for HavingBound
impl VisitMut for HavingBoundKind
impl VisitMut for HiveDelimiter
impl VisitMut for HiveDescribeFormat
impl VisitMut for HiveDistributionStyle
impl VisitMut for HiveFormat
impl VisitMut for HiveIOFormat
impl VisitMut for HiveLoadDataFormat
impl VisitMut for HiveRowDelimiter
impl VisitMut for HiveRowFormat
impl VisitMut for HiveSetLocation
impl VisitMut for IamRoleKind
impl VisitMut for Ident
Available on crate feature
visitor only.