Enum forne::RawMethod

source ·
pub enum RawMethod {
    Inbuilt(String),
    Custom {
        name: String,
        body: String,
    },
}
Expand description

A representation of a method that has not yet been created.

Variants§

§

Inbuilt(String)

An inbuilt method, with the name attached.

§

Custom

Fields

§name: String

The name of the script. The provided method name must not overlap with that of any other custom method, and it is strongly recommended that users prefix their own name or handle in front of the names of scripts they write to avoid users of these scripts accidentally causing conflicts with scripts written by others.

E.g. if Alice writes a custom method script and distributes it on the internet with the name powerlearn-v2, and Bob starts using it, but then later decides to use a different script made by Chloe, also called powerlearn-v2, Forne will unwittingly pass the metadata Alice’s script expected to Chloe’s, at best causing it to completely fail, and at worst causing all Bob’s previous data to be overwritten irretrievably. This could be avoided if Alice produced alice/powerlearn-v2 and Chloe produces chloe/powerlearn-v2.

§body: String

The body of the Rhai script that defines this method, which must contain several key elements (see the documentation of custom methods to learn more about these).

A custom method defined by a Rhai script.

Implementations§

source§

impl RawMethod

source

pub fn is_inbuilt(method: &str) -> bool

Determines whether or not the given method name or script is inbuilt. This can be used in situations of ambiguity, such as in a CLI, where a path to a custom script or the name of an inbuilt method may be provided with no immediate distinction.

Trait Implementations§

source§

impl Clone for RawMethod

source§

fn clone(&self) -> RawMethod

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for RawMethod

source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

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 Twhere U: TryFrom<T>,

§

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.
§

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

§

fn vzip(self) -> V