[][src]Struct exonum_configuration::MaybeVote

pub struct MaybeVote(_);

A functional equivalent to Option<VotingDecision> used to store votes in the service schema.

Notes

The None variant of the type is represented by a Vote with all bytes set to zero.

Methods

impl MaybeVote[src]

pub fn none() -> Self[src]

Creates a None variant.

pub fn some(vote: VotingDecision) -> Self[src]

Creates a Some variant.

Returns true if it's a Some variant hold Vote.

Methods from Deref<Target = Option<VotingDecision>>

#[must_use = "if you intended to assert that this has a value, consider `.unwrap()` instead"] pub fn is_some(&self) -> bool1.0.0[src]

Returns true if the option is a Some value.

Examples

let x: Option<u32> = Some(2);
assert_eq!(x.is_some(), true);

let x: Option<u32> = None;
assert_eq!(x.is_some(), false);

#[must_use = "if you intended to assert that this doesn\'t have a value, consider `.and_then(|| panic!(\"`Option` had a value when expected `None`\"))` instead"] pub fn is_none(&self) -> bool1.0.0[src]

Returns true if the option is a None value.

Examples

let x: Option<u32> = Some(2);
assert_eq!(x.is_none(), false);

let x: Option<u32> = None;
assert_eq!(x.is_none(), true);

#[must_use] pub fn contains<U>(&self, x: &U) -> bool where
    U: PartialEq<T>, 
[src]

🔬 This is a nightly-only experimental API. (option_result_contains)

Returns true if the option is a Some value containing the given value.

Examples

#![feature(option_result_contains)]

let x: Option<u32> = Some(2);
assert_eq!(x.contains(&2), true);

let x: Option<u32> = Some(3);
assert_eq!(x.contains(&2), false);

let x: Option<u32> = None;
assert_eq!(x.contains(&2), false);

pub fn as_ref(&self) -> Option<&T>1.0.0[src]

Converts from &Option<T> to Option<&T>.

Examples

Converts an Option<String> into an Option<usize>, preserving the original. The map method takes the self argument by value, consuming the original, so this technique uses as_ref to first take an Option to a reference to the value inside the original.

let text: Option<String> = Some("Hello, world!".to_string());
// First, cast `Option<String>` to `Option<&String>` with `as_ref`,
// then consume *that* with `map`, leaving `text` on the stack.
let text_length: Option<usize> = text.as_ref().map(|s| s.len());
println!("still can print text: {:?}", text);

pub fn as_pin_ref(self: Pin<&'a Option<T>>) -> Option<Pin<&'a T>>1.33.0[src]

Converts from Pin<&Option<T>> to Option<Pin<&T>>.

pub fn as_pin_mut(self: Pin<&'a mut Option<T>>) -> Option<Pin<&'a mut T>>1.33.0[src]

Converts from Pin<&mut Option<T>> to Option<Pin<&mut T>>.

pub fn iter(&self) -> Iter<T>1.0.0[src]

Returns an iterator over the possibly contained value.

Examples

let x = Some(4);
assert_eq!(x.iter().next(), Some(&4));

let x: Option<u32> = None;
assert_eq!(x.iter().next(), None);

pub fn deref(&self) -> Option<&<T as Deref>::Target>[src]

🔬 This is a nightly-only experimental API. (inner_deref)

newly added

Converts from &Option<T> to Option<&T::Target>.

Leaves the original Option in-place, creating a new one with a reference to the original one, additionally coercing the contents via Deref.

Trait Implementations

impl Clone for MaybeVote[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl From<MaybeVote> for Option<VotingDecision>[src]

impl From<VotingDecision> for MaybeVote[src]

impl PartialEq<MaybeVote> for MaybeVote[src]

impl Debug for MaybeVote[src]

impl Deref for MaybeVote[src]

type Target = Option<VotingDecision>

The resulting type after dereferencing.

impl BinaryValue for MaybeVote[src]

fn into_bytes(self) -> Vec<u8>[src]

Consumes and serializes the given value to the vector of bytes. This method is faster with the wrapped values, thus if you wouldn't use value after serialization use it. Read more

impl ObjectHash for MaybeVote

impl CryptoHash for MaybeVote[src]

Auto Trait Implementations

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

impl<T> Erased for T