Struct ApplicationLaunch
pub struct ApplicationLaunch {
pub app_id: String,
pub content_hash: Option<String>,
}Expand description
Opening another installed app into the workspace, optionally with
verified content it opens read-only: Photos with a captured picture, a
player with a recorded clip. An app offers it as an action on its own
resources (ApplicationLaunch::spec); the host routes the admitted
invocation through the workspace broker, which stages the bytes and owns
the launched process. The source app never hands over a local path.
Fields§
§app_id: StringThe installed app to open, by its id (so.tilo.photos).
content_hash: Option<String>The content address hash of what it opens; the app opens empty without one.
Implementations§
§impl ApplicationLaunch
impl ApplicationLaunch
pub const TYPE: &'static str = "tilo.application.launch"
pub const TYPE: &'static str = "tilo.application.launch"
The operation type the host routes to the broker.
pub fn app(app_id: impl Into<String>) -> ApplicationLaunch
pub fn app(app_id: impl Into<String>) -> ApplicationLaunch
Open app_id empty.
pub fn with_content(
app_id: impl Into<String>,
content_hash: impl Into<String>,
) -> ApplicationLaunch
pub fn with_content( app_id: impl Into<String>, content_hash: impl Into<String>, ) -> ApplicationLaunch
Open app_id with the content whose hash is content_hash.
pub fn valid(&self) -> bool
pub fn valid(&self) -> bool
An app id of letters, digits, dots and dashes, and a content hash (when given) of 64 lowercase hex digits.
pub fn argument(&self) -> InvokeArgument
pub fn argument(&self) -> InvokeArgument
The argument the broker’s application open takes: the content
hash as its text, or nothing.
pub fn content_spec(
app_id: &str,
id: &str,
label: &str,
description: &str,
) -> ActionSpec
pub fn content_spec( app_id: &str, id: &str, label: &str, description: &str, ) -> ActionSpec
Opening app_id with content the caller names as the action’s
content_hash argument: a control that hands over whatever it
shows now.
pub fn spec(&self, id: &str, label: &str, description: &str) -> ActionSpec
pub fn spec(&self, id: &str, label: &str, description: &str) -> ActionSpec
This launch as the action id an app offers on a resource of its
own, taking no arguments.
Trait Implementations§
§impl Clone for ApplicationLaunch
impl Clone for ApplicationLaunch
§fn clone(&self) -> ApplicationLaunch
fn clone(&self) -> ApplicationLaunch
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for ApplicationLaunch
impl Debug for ApplicationLaunch
§impl<'de> Deserialize<'de> for ApplicationLaunch
impl<'de> Deserialize<'de> for ApplicationLaunch
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ApplicationLaunch, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ApplicationLaunch, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl PartialEq for ApplicationLaunch
impl PartialEq for ApplicationLaunch
§fn eq(&self, other: &ApplicationLaunch) -> bool
fn eq(&self, other: &ApplicationLaunch) -> bool
self and other values to be equal, and is used by ==.§impl Serialize for ApplicationLaunch
impl Serialize for ApplicationLaunch
§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Eq for ApplicationLaunch
impl StructuralPartialEq for ApplicationLaunch
Auto Trait Implementations§
impl Freeze for ApplicationLaunch
impl RefUnwindSafe for ApplicationLaunch
impl Send for ApplicationLaunch
impl Sync for ApplicationLaunch
impl Unpin for ApplicationLaunch
impl UnsafeUnpin for ApplicationLaunch
impl UnwindSafe for ApplicationLaunch
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
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)
fn as_any(&self) -> &(dyn Any + 'static)
&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)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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>
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