Struct Daemon

pub struct Daemon<P>
where P: Program,
{ /* private fields */ }
Expand description

The underlying definition and configuration of an iced daemon.

You can use this API to create and run iced applications step by step—without coupling your logic to a trait or a specific type.

You can create a Daemon with the daemon helper.

Implementations§

§

impl<P> Daemon<P>
where P: Program,

pub fn run(self) -> Result<(), Error>
where Daemon<P>: 'static, <P as Program>::Message: MaybeDebug + MaybeClone,

Runs the Daemon.

pub fn settings(self, settings: Settings) -> Daemon<P>

Sets the Settings that will be used to run the Daemon.

pub fn antialiasing(self, antialiasing: bool) -> Daemon<P>

Sets the Settings::antialiasing of the Daemon.

pub fn default_font(self, default_font: Font) -> Daemon<P>

Sets the default Font of the Daemon.

pub fn font(self, font: impl Into<Cow<'static, [u8]>>) -> Daemon<P>

Adds a font to the list of fonts that will be loaded at the start of the Daemon.

pub fn title( self, title: impl TitleFn<<P as Program>::State>, ) -> Daemon<impl Program<State = <P as Program>::State, Message = <P as Program>::Message, Theme = <P as Program>::Theme>>

Sets the title of the Daemon.

pub fn subscription( self, f: impl Fn(&<P as Program>::State) -> Subscription<<P as Program>::Message>, ) -> Daemon<impl Program<State = <P as Program>::State, Message = <P as Program>::Message, Theme = <P as Program>::Theme>>

Sets the subscription logic of the Daemon.

pub fn theme( self, f: impl ThemeFn<<P as Program>::State, <P as Program>::Theme>, ) -> Daemon<impl Program<State = <P as Program>::State, Message = <P as Program>::Message, Theme = <P as Program>::Theme>>

Sets the theme logic of the Daemon.

pub fn style( self, f: impl Fn(&<P as Program>::State, &<P as Program>::Theme) -> Style, ) -> Daemon<impl Program<State = <P as Program>::State, Message = <P as Program>::Message, Theme = <P as Program>::Theme>>

Sets the style logic of the Daemon.

pub fn scale_factor( self, f: impl Fn(&<P as Program>::State, Id) -> f64, ) -> Daemon<impl Program<State = <P as Program>::State, Message = <P as Program>::Message, Theme = <P as Program>::Theme>>

Sets the scale factor of the Daemon.

pub fn executor<E>( self, ) -> Daemon<impl Program<State = <P as Program>::State, Message = <P as Program>::Message, Theme = <P as Program>::Theme>>
where E: Executor,

Sets the executor of the Daemon.

pub fn presets( self, presets: impl IntoIterator<Item = Preset<<P as Program>::State, <P as Program>::Message>>, ) -> Daemon<P>

Sets the boot presets of the Daemon.

Presets can be used to override the default booting strategy of your application during testing to create reproducible environments.

Trait Implementations§

§

impl<P> Debug for Daemon<P>
where P: Debug + Program, <P as Program>::State: Debug, <P as Program>::Message: Debug,

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl<P> Program for Daemon<P>
where P: Program,

§

type State = <P as Program>::State

The state of the program.
§

type Message = <P as Program>::Message

The message of the program.
§

type Theme = <P as Program>::Theme

The theme of the program.
§

type Renderer = <P as Program>::Renderer

The renderer of the program.
§

type Executor = <P as Program>::Executor

The executor of the program.
§

fn name() -> &'static str

Returns the unique name of the Program.
§

fn settings(&self) -> Settings

§

fn window(&self) -> Option<Settings>

§

fn boot( &self, ) -> (<Daemon<P> as Program>::State, Task<<Daemon<P> as Program>::Message>)

§

fn update( &self, state: &mut <Daemon<P> as Program>::State, message: <Daemon<P> as Program>::Message, ) -> Task<<Daemon<P> as Program>::Message>

§

fn view<'a>( &self, state: &'a <Daemon<P> as Program>::State, window: Id, ) -> Element<'a, <Daemon<P> as Program>::Message, <Daemon<P> as Program>::Theme, <Daemon<P> as Program>::Renderer>

§

fn title(&self, state: &<Daemon<P> as Program>::State, window: Id) -> String

§

fn subscription( &self, state: &<Daemon<P> as Program>::State, ) -> Subscription<<Daemon<P> as Program>::Message>

§

fn theme( &self, state: &<Daemon<P> as Program>::State, window: Id, ) -> Option<<Daemon<P> as Program>::Theme>

§

fn style( &self, state: &<Daemon<P> as Program>::State, theme: &<Daemon<P> as Program>::Theme, ) -> Style

§

fn scale_factor(&self, state: &<Daemon<P> as Program>::State, window: Id) -> f64

§

fn presets( &self, ) -> &[Preset<<Daemon<P> as Program>::State, <Daemon<P> as Program>::Message>]

Auto Trait Implementations§

§

impl<P> Freeze for Daemon<P>
where P: Freeze,

§

impl<P> !RefUnwindSafe for Daemon<P>

§

impl<P> !Send for Daemon<P>

§

impl<P> !Sync for Daemon<P>

§

impl<P> Unpin for Daemon<P>
where P: Unpin,

§

impl<P> !UnwindSafe for Daemon<P>

Blanket Implementations§

Source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, D: AdaptFrom<S, Swp, Dwp, T>,

Source§

fn adapt_into_using<M>(self, method: M) -> D
where M: TransformMatrix<T>,

Convert the source color to the destination color using the specified method.
Source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default.
§

impl<T> Also for T

§

fn also<F>(self, block: F) -> Self
where F: FnOnce(&mut Self),

Apply a function to this value and return the (possibly) modified value.
Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T, Res> Apply<Res> for T
where T: ?Sized,

§

fn apply<F>(self, f: F) -> Res
where F: FnOnce(Self) -> Res, Self: Sized,

Apply a function which takes the parameter by value.
§

fn apply_ref<F>(&self, f: F) -> Res
where F: FnOnce(&Self) -> Res,

Apply a function which takes the parameter by reference.
§

fn apply_mut<F>(&mut self, f: F) -> Res
where F: FnOnce(&mut Self) -> Res,

Apply a function which takes the parameter by mutable reference.
Source§

impl<T, C> ArraysFrom<C> for T
where C: IntoArrays<T>,

Source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
Source§

impl<T, C> ArraysInto<C> for T
where C: FromArrays<T>,

Source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for U
where T: FromCam16Unclamped<WpParam, U>,

Source§

type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<T, C> ComponentsFrom<C> for T
where C: IntoComponents<T>,

Source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromAngle<T> for T

Source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
Source§

impl<T, U> FromStimulus<U> for T
where U: IntoStimulus<T>,

Source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> IntoAngle<U> for T
where U: FromAngle<T>,

Source§

fn into_angle(self) -> U

Performs a conversion into T.
§

impl<State, Message> IntoBoot<State, Message> for State

§

fn into_boot(self) -> (State, Task<Message>)

Turns some type into the initial state of some Application.
Source§

impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for U
where T: Cam16FromUnclamped<WpParam, U>,

Source§

type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<T, U> IntoColor<U> for T
where U: FromColor<T>,

Source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
Source§

impl<T, U> IntoColorUnclamped<U> for T
where U: FromColorUnclamped<T>,

Source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
Source§

impl<T> IntoStimulus<T> for T

Source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, C> TryComponentsInto<C> for T
where C: TryFromComponents<T>,

Source§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
Source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T, U> TryIntoColor<U> for T
where U: TryFromColor<T>,

Source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
Source§

impl<C, U> UintsFrom<C> for U
where C: IntoUints<U>,

Source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
Source§

impl<C, U> UintsInto<C> for U
where C: FromUints<U>,

Source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.
§

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

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<T> MaybeClone for T

§

impl<T> MaybeDebug for T