Skip to main content

Action

Trait Action 

Source
pub trait Action: Any + Send {
    // Required methods
    fn boxed_clone(&self) -> Box<dyn Action>;
    fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool;
    fn name(&self) -> &'static str;
    fn name_for_type() -> &'static str
       where Self: Sized;
    fn build(value: Value) -> Result<Box<dyn Action>, Error>
       where Self: Sized;

    // Provided methods
    fn action_json_schema(_: &mut SchemaGenerator) -> Option<Schema>
       where Self: Sized { ... }
    fn deprecated_aliases() -> &'static [&'static str]
       where Self: Sized { ... }
    fn deprecation_message() -> Option<&'static str>
       where Self: Sized { ... }
    fn documentation() -> Option<&'static str>
       where Self: Sized { ... }
}
Expand description

Actions are used to implement keyboard-driven UI. When you declare an action, you can bind keys to the action in the keymap and listeners for that action in the element tree.

To declare a list of simple actions, you can use the actions! macro, which defines a simple unit struct action for each listed action name in the given namespace.

use gpui::actions;
actions!(editor, [MoveUp, MoveDown, MoveLeft, MoveRight, Newline]);

Registering the actions with the same name will result in a panic during App creation.

§Derive Macro

More complex data types can also be actions, by using the derive macro for Action:

use gpui::Action;
#[derive(Clone, PartialEq, serde::Deserialize, schemars::JsonSchema, Action)]
#[action(namespace = editor)]
pub struct SelectNext {
    pub replace_newest: bool,
}

The derive macro for Action requires that the type implement Clone and PartialEq. It also requires serde::Deserialize and schemars::JsonSchema unless #[action(no_json)] is specified. In Zed these trait impls are used to load keymaps from JSON.

Multiple arguments separated by commas may be specified in #[action(...)]:

  • namespace = some_namespace sets the namespace. In Zed this is required.

  • name = "ActionName" overrides the action’s name. This must not contain ::.

  • no_json causes the build method to always error and action_json_schema to return None, and allows actions not implement serde::Serialize and schemars::JsonSchema.

  • no_register skips registering the action. This is useful for implementing the Action trait while not supporting invocation by name or JSON deserialization.

  • deprecated_aliases = ["editor::SomeAction"] specifies deprecated old names for the action. These action names should not correspond to any actions that are registered. These old names can then still be used to refer to invoke this action. In Zed, the keymap JSON schema will accept these old names and provide warnings.

  • deprecated = "Message about why this action is deprecation" specifies a deprecation message. In Zed, the keymap JSON schema will cause this to be displayed as a warning.

§Manual Implementation

If you want to control the behavior of the action trait manually, you can use the lower-level #[register_action] macro, which only generates the code needed to register your action before main.

use gpui::{SharedString, register_action};
#[derive(Clone, PartialEq, Eq, serde::Deserialize, schemars::JsonSchema)]
pub struct Paste {
    pub content: SharedString,
}

impl gpui::Action for Paste {
}

register_action!(Paste);

Required Methods§

Source

fn boxed_clone(&self) -> Box<dyn Action>

Clone the action into a new box

Source

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Do a partial equality check on this action and the other

Source

fn name(&self) -> &'static str

Get the name of this action, for displaying in UI

Source

fn name_for_type() -> &'static str
where Self: Sized,

Get the name of this action type (static)

Source

fn build(value: Value) -> Result<Box<dyn Action>, Error>
where Self: Sized,

Build this action from a JSON value. This is used to construct actions from the keymap. A value of {} will be passed for actions that don’t have any parameters.

Provided Methods§

Source

fn action_json_schema(_: &mut SchemaGenerator) -> Option<Schema>
where Self: Sized,

Optional JSON schema for the action’s input data.

Source

fn deprecated_aliases() -> &'static [&'static str]
where Self: Sized,

A list of alternate, deprecated names for this action. These names can still be used to invoke the action. In Zed, the keymap JSON schema will accept these old names and provide warnings.

Source

fn deprecation_message() -> Option<&'static str>
where Self: Sized,

Returns the deprecation message for this action, if any. In Zed, the keymap JSON schema will cause this to be displayed as a warning.

Source

fn documentation() -> Option<&'static str>
where Self: Sized,

The documentation for this action, if any. When using the derive macro for actions this will be automatically generated from the doc comments on the action struct.

Implementations§

Source§

impl dyn Action

Source

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

Type-erase Action type.

Trait Implementations§

Source§

impl Debug for dyn Action

Source§

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

Formats the value using the given formatter. Read more

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl Action for Backspace

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Cancel

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Cancel: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for ClosePanel

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Confirm

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Confirm: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Copy

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Copy: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Cut

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Cut: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Decrement

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Delete

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Delete: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for DeleteToBeginningOfLine

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for DeleteToEndOfLine

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for DeleteToNextWordEnd

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for DeleteToPreviousWordStart

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Enter

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Enter: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Escape

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Escape: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for GoToDefinition

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Increment

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Indent

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Indent: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for IndentInline

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveDown

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where MoveDown: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveEnd

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where MoveEnd: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveHome

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where MoveHome: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveLeft

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where MoveLeft: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MovePageDown

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MovePageUp

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveRight

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveToEnd

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveToEndOfLine

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveToNextWord

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveToPreviousWord

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveToStart

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveToStartOfLine

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for MoveUp

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where MoveUp: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Outdent

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Outdent: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for OutdentInline

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Paste

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Paste: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Redo

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Redo: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Replace

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Replace: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Search: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectAll

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectDown

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectFirst

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectLast

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectLeft

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectNextColumn

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectPageDown

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectPageUp

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectPrevColumn

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectRight

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectToEnd

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectToEndOfLine

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectToNextWordEnd

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectToPreviousWordStart

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectToStart

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectToStartOfLine

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for SelectUp

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where SelectUp: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for ShowCharacterPalette

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for ToggleCodeActions

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for ToggleInspector

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for ToggleZoom

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Source§

impl Action for Undo

Source§

fn name(&self) -> &'static str

Source§

fn name_for_type() -> &'static str
where Undo: Sized,

Source§

fn partial_eq(&self, action: &(dyn Action + 'static)) -> bool

Source§

fn boxed_clone(&self) -> Box<dyn Action>

Source§

fn build(_value: Value) -> Result<Box<dyn Action>, Error>

Source§

fn action_json_schema(_generator: &mut SchemaGenerator) -> Option<Schema>

Source§

fn deprecated_aliases() -> &'static [&'static str]

Source§

fn deprecation_message() -> Option<&'static str>

Source§

fn documentation() -> Option<&'static str>

Implementors§