pub struct ProtocolEvolution {
pub version: u32,
pub enabled_features: Vec<String>,
pub deprecated_features: Vec<String>,
pub breaking_changes: Vec<String>,
}Expand description
Protocol evolution support
Fields§
§version: u32Protocol version number
enabled_features: Vec<String>Features enabled in this version
deprecated_features: Vec<String>Features deprecated in this version
breaking_changes: Vec<String>Breaking changes from previous version
Implementations§
Source§impl ProtocolEvolution
impl ProtocolEvolution
Sourcepub fn bitcoin_v1() -> Self
pub fn bitcoin_v1() -> Self
Bitcoin V1 (current)
Sourcepub fn bitcoin_v2() -> Self
pub fn bitcoin_v2() -> Self
Bitcoin V2 (future hypothetical)
Sourcepub fn has_feature(&self, feature: &str) -> bool
pub fn has_feature(&self, feature: &str) -> bool
Check if a feature is enabled in this protocol version
Sourcepub fn is_deprecated(&self, feature: &str) -> bool
pub fn is_deprecated(&self, feature: &str) -> bool
Check if a feature is deprecated in this protocol version
Trait Implementations§
Source§impl Clone for ProtocolEvolution
impl Clone for ProtocolEvolution
Source§fn clone(&self) -> ProtocolEvolution
fn clone(&self) -> ProtocolEvolution
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 ProtocolEvolution
impl Debug for ProtocolEvolution
Source§impl<'de> Deserialize<'de> for ProtocolEvolution
impl<'de> Deserialize<'de> for ProtocolEvolution
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
Source§impl PartialEq for ProtocolEvolution
impl PartialEq for ProtocolEvolution
Source§fn eq(&self, other: &ProtocolEvolution) -> bool
fn eq(&self, other: &ProtocolEvolution) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for ProtocolEvolution
impl Serialize for ProtocolEvolution
impl Eq for ProtocolEvolution
impl StructuralPartialEq for ProtocolEvolution
Auto Trait Implementations§
impl Freeze for ProtocolEvolution
impl RefUnwindSafe for ProtocolEvolution
impl Send for ProtocolEvolution
impl Sync for ProtocolEvolution
impl Unpin for ProtocolEvolution
impl UnsafeUnpin for ProtocolEvolution
impl UnwindSafe for ProtocolEvolution
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§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
Converts
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>
Converts
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