[][src]Struct scones_examples::OptionalBuilder

pub struct OptionalBuilder<RequiredStatus__> { /* fields omitted */ }

A builder which creates an instance of OptionalBuilt.

Use OptionalBuilder::new() to start the builder. Calling build() consumes the builder, returning the completed item. Before calling build(), you can modify values the builder will use by calling any of the other functions. For this builder, you must call all of the following functions at least once before calling build(), or you will receive a compilation error:

  • required(value: i32)

Here is a minimal example:

let instance = OptionalBuilder::new()
    .required(value).build();

An example of how to use this builder is as follows:

This example is not tested
let instance = OptionalBuilder::new().required(12).build();
assert_eq!(instance.constructed_from_optional, 0);
let instance = OptionalBuilder::new().required(12).optional(5.0).build();
assert_eq!(instance.constructed_from_optional, 5);
let instance = OptionalBuilder::new().optional(12.0).required(5).build();
assert_eq!(instance.constructed_from_optional, 12);

Implementations

impl OptionalBuilder<Missing>[src]

pub fn new() -> Self[src]

impl<RequiredStatus__> OptionalBuilder<RequiredStatus__>[src]

pub fn optional(self, value: f32) -> Self[src]

pub fn required(self, value: i32) -> OptionalBuilder<Present>[src]

impl OptionalBuilder<Present>[src]

pub fn build(self) -> OptionalBuilt[src]

Auto Trait Implementations

impl<RequiredStatus__> RefUnwindSafe for OptionalBuilder<RequiredStatus__> where
    RequiredStatus__: RefUnwindSafe

impl<RequiredStatus__> Send for OptionalBuilder<RequiredStatus__> where
    RequiredStatus__: Send

impl<RequiredStatus__> Sync for OptionalBuilder<RequiredStatus__> where
    RequiredStatus__: Sync

impl<RequiredStatus__> Unpin for OptionalBuilder<RequiredStatus__> where
    RequiredStatus__: Unpin

impl<RequiredStatus__> UnwindSafe for OptionalBuilder<RequiredStatus__> where
    RequiredStatus__: UnwindSafe

Blanket Implementations

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

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

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

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.