pub enum FunctionChange {
Create(Function),
Drop {
qname: QualifiedName,
args: NormalizedArgTypes,
},
CreateOrReplace(Function),
ReplaceViaDropCreate {
source: Function,
catalog: Function,
},
SetComment {
qname: QualifiedName,
args: NormalizedArgTypes,
comment: Option<String>,
},
}Expand description
A structural change to a single user-defined function.
Variants§
Create(Function)
Create a new function.
Drop
Drop an existing function by qualified name and normalized arg types.
Fields
qname: QualifiedNameQualified name of the function.
args: NormalizedArgTypesNormalized argument types (IN/INOUT/VARIADIC only) used to disambiguate overloads in the DROP FUNCTION statement.
CreateOrReplace(Function)
Replace the function body and/or attributes using CREATE OR REPLACE FUNCTION. Only valid when function_can_or_replace returns true.
ReplaceViaDropCreate
The function’s return type or language changed in a way that PG’s
CREATE OR REPLACE FUNCTION rejects. The planner emits a plain
DROP FUNCTION … (NOT cascade) followed by CREATE FUNCTION. The
DROP fails loudly if dependents exist — by design, there is no silent
cascade; the operator must resolve dependents first.
Fields
SetComment
Set (or clear) COMMENT ON FUNCTION.
Fields
qname: QualifiedNameQualified name of the function.
args: NormalizedArgTypesNormalized argument types for disambiguation.
Trait Implementations§
Source§impl Clone for FunctionChange
impl Clone for FunctionChange
Source§fn clone(&self) -> FunctionChange
fn clone(&self) -> FunctionChange
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 FunctionChange
impl Debug for FunctionChange
Source§impl<'de> Deserialize<'de> for FunctionChange
impl<'de> Deserialize<'de> for FunctionChange
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 FunctionChange
Source§impl PartialEq for FunctionChange
impl PartialEq for FunctionChange
Source§fn eq(&self, other: &FunctionChange) -> bool
fn eq(&self, other: &FunctionChange) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for FunctionChange
impl Serialize for FunctionChange
impl StructuralPartialEq for FunctionChange
Auto Trait Implementations§
impl Freeze for FunctionChange
impl RefUnwindSafe for FunctionChange
impl Send for FunctionChange
impl Sync for FunctionChange
impl Unpin for FunctionChange
impl UnsafeUnpin for FunctionChange
impl UnwindSafe for FunctionChange
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more