[][src]Struct firefox_native_manifest_types::NativeMessagingManifest

pub struct NativeMessagingManifest {
    pub name: String,
    pub description: String,
    pub path: PathBuf,
    pub ty: NativeMessagingType,
    pub allowed_extensions: Vec<String>,
}

Manifest object for native messaging by which an extension can communicate with a native app installed on the device.

Fields

name: String

Name of the native application.

This must match the name passed into runtime.connectNative() or runtime.sendNativeMessage() by the extension.

On MacOS and Linux, it must also match the native messaging manifest's filename (excluding the .json extension).

On Windows, it must match the name of the registry key you create, that contains the location of the native messaging manifest.

The name must match the following regular expression: "^\w+(\.\w+)*$". This means that it may only contain (lowercase or uppercase) alphanumeric characters, underscores, and dots. It may not start or end with a dot, and a dot cannot be followed by another dot.

description: String

Description of the native application.

path: PathBuf

Path to the native application.

On Windows, this may be relative to the manifest itself. On MacOS and Linux it must be absolute.

ty: NativeMessagingType

Describes the method used to connect the extension with the app.

allowed_extensions: Vec<String>

An array of Add-on ID values.

Each value represents an extension which is allowed to communicate with the native application.

Note that this means you will probably want to include the browser_specific_settings key in your extension's manifest.json file, so you can set an explicit ID during development.

Trait Implementations

impl Debug for NativeMessagingManifest[src]

impl<'de> Deserialize<'de> for NativeMessagingManifest[src]

impl Serialize for NativeMessagingManifest[src]

Auto Trait Implementations

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> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[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.