Enum dbn::enums::VersionUpgradePolicy
source · #[non_exhaustive]pub enum VersionUpgradePolicy {
AsIs,
Upgrade,
}Expand description
How to handle decoding DBN data from a prior version.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
AsIs
Decode data from previous versions as-is.
Upgrade
Decode data from previous versions converting it to the latest version. This breaks zero-copy decoding for structs that need updating, but makes usage simpler.
Trait Implementations§
source§impl Clone for VersionUpgradePolicy
impl Clone for VersionUpgradePolicy
source§fn clone(&self) -> VersionUpgradePolicy
fn clone(&self) -> VersionUpgradePolicy
Returns a copy 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 Debug for VersionUpgradePolicy
impl Debug for VersionUpgradePolicy
source§impl Default for VersionUpgradePolicy
impl Default for VersionUpgradePolicy
source§fn default() -> VersionUpgradePolicy
fn default() -> VersionUpgradePolicy
Returns the “default value” for a type. Read more
source§impl FromStr for VersionUpgradePolicy
impl FromStr for VersionUpgradePolicy
source§impl Hash for VersionUpgradePolicy
impl Hash for VersionUpgradePolicy
source§impl IntoEnumIterator for VersionUpgradePolicy
impl IntoEnumIterator for VersionUpgradePolicy
type Iterator = VersionUpgradePolicyIter
fn iter() -> VersionUpgradePolicyIter ⓘ
source§impl PartialEq for VersionUpgradePolicy
impl PartialEq for VersionUpgradePolicy
source§impl PyClass for VersionUpgradePolicy
impl PyClass for VersionUpgradePolicy
source§impl PyClassImpl for VersionUpgradePolicy
impl PyClassImpl for VersionUpgradePolicy
source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
#[pyclass(subclass)]
source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
#[pyclass(extends=…)]
source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
#[pyclass(mapping)]
source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
#[pyclass(sequence)]
§type ThreadChecker = SendablePyClass<VersionUpgradePolicy>
type ThreadChecker = SendablePyClass<VersionUpgradePolicy>
This handles following two situations: Read more
§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Immutable or mutable
§type BaseNativeType = PyAny
type BaseNativeType = PyAny
Available on non-crate feature
gil-refs only.The closest native ancestor. This is
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
fn dict_offset() -> Option<isize>
fn weaklist_offset() -> Option<isize>
source§impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a VersionUpgradePolicy
impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a VersionUpgradePolicy
source§impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a mut VersionUpgradePolicy
impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a mut VersionUpgradePolicy
source§impl PyMethods<VersionUpgradePolicy> for PyClassImplCollector<VersionUpgradePolicy>
Available on crate feature python only.
impl PyMethods<VersionUpgradePolicy> for PyClassImplCollector<VersionUpgradePolicy>
Available on crate feature
python only.fn py_methods(self) -> &'static PyClassItems
source§impl PyTypeInfo for VersionUpgradePolicy
impl PyTypeInfo for VersionUpgradePolicy
source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Returns the PyTypeObject instance for this type.
source§fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>
fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>
Returns the safe abstraction over the type object.
impl Copy for VersionUpgradePolicy
impl Eq for VersionUpgradePolicy
impl StructuralPartialEq for VersionUpgradePolicy
Auto Trait Implementations§
impl Freeze for VersionUpgradePolicy
impl RefUnwindSafe for VersionUpgradePolicy
impl Send for VersionUpgradePolicy
impl Sync for VersionUpgradePolicy
impl Unpin for VersionUpgradePolicy
impl UnwindSafe for VersionUpgradePolicy
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,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)