[][src]Enum mlua::MetaMethod

pub enum MetaMethod {
    Add,
    Sub,
    Mul,
    Div,
    Mod,
    Pow,
    Unm,
    IDiv,
    BAnd,
    BOr,
    BXor,
    BNot,
    Shl,
    Shr,
    Concat,
    Len,
    Eq,
    Lt,
    Le,
    Index,
    NewIndex,
    Call,
    ToString,
    Pairs,
    Close,
}

Kinds of metamethods that can be overridden.

Currently, this mechanism does not allow overriding the __gc metamethod, since there is generally no need to do so: UserData implementors can instead just implement Drop.

Variants

Add

The + operator.

Sub

The - operator.

Mul

The * operator.

Div

The / operator.

Mod

The % operator.

Pow

The ^ operator.

Unm

The unary minus (-) operator.

IDiv

The floor division (//) operator. Requires feature = "lua54/lua53"

BAnd

The bitwise AND (&) operator. Requires feature = "lua54/lua53"

BOr

The bitwise OR (|) operator. Requires feature = "lua54/lua53"

BXor

The bitwise XOR (binary ~) operator. Requires feature = "lua54/lua53"

BNot

The bitwise NOT (unary ~) operator. Requires feature = "lua54/lua53"

Shl

The bitwise left shift (<<) operator.

Shr

The bitwise right shift (>>) operator.

Concat

The string concatenation operator ...

Len

The length operator #.

Eq

The == operator.

Lt

The < operator.

Le

The <= operator.

Index

Index access obj[key].

NewIndex

Index write access obj[key] = value.

Call

The call "operator" obj(arg1, args2, ...).

ToString

The __tostring metamethod.

This is not an operator, but will be called by methods such as tostring and print.

Pairs

The __pairs metamethod.

This is not an operator, but it will be called by the built-in pairs function.

Requires feature = "lua54/lua53/lua52"

Close

The __close metamethod.

Executed when a variable, that marked as to-be-closed, goes out of scope.

More information about to-be-closed variabled can be found in the Lua 5.4 documentation.

Requires feature = "lua54"

Trait Implementations

impl Clone for MetaMethod[src]

impl Copy for MetaMethod[src]

impl Debug for MetaMethod[src]

impl Eq for MetaMethod[src]

impl Hash for MetaMethod[src]

impl PartialEq<MetaMethod> for MetaMethod[src]

impl StructuralEq for MetaMethod[src]

impl StructuralPartialEq for MetaMethod[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> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.