pub struct ActionDefinitionStatic {
pub name: ActionName,
pub input_schema: JsonSchemaDocument,
pub output_schema: Option<JsonSchemaDocument>,
pub protection: ActionProtection,
pub synthetic: bool,
}Expand description
Static definition of one provider action (spine §4.1
ActionDefinitionStatic; protocol-level actions such as the semantic
five can be built in).
Fields§
§name: ActionNameProvider-native action name.
input_schema: JsonSchemaDocumentJSON Schema (Draft 2020-12) of the action arguments — same source as
the protocol ActionDefinition.inputSchema.
output_schema: Option<JsonSchemaDocument>Pointlock-side output schema supplement (the protocol-side output is unconstrained JSON).
protection: ActionProtectionProtection level of the action.
synthetic: boolProvider-synthetic: the provider implements this action itself rather than forwarding it to a driver action (04 §9.4.3).
observe and screenshot are the only such actions today: they
map to the device.observe RPC, so no driver declares them and
they never appear in a lockfile’s action set. Bind therefore
overlays them onto the lockfile’s actions — shadowed by name,
so a driver action of the same name wins and this entry is
disabled for that lockfile.
Only readonly actions may be synthetic: they are exempt from reconcile by construction, since a dangling readonly intent is always safe to replay (spine §6.7-B).
Trait Implementations§
Source§impl Clone for ActionDefinitionStatic
impl Clone for ActionDefinitionStatic
Source§fn clone(&self) -> ActionDefinitionStatic
fn clone(&self) -> ActionDefinitionStatic
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ActionDefinitionStatic
impl Debug for ActionDefinitionStatic
Source§impl<'de> Deserialize<'de> for ActionDefinitionStatic
impl<'de> Deserialize<'de> for ActionDefinitionStatic
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>,
Source§impl JsonSchema for ActionDefinitionStatic
impl JsonSchema for ActionDefinitionStatic
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more