Enum nvim_utils::prelude::LuaMetaMethod
source · pub enum LuaMetaMethod {
Show 17 variants
Add,
Sub,
Mul,
Div,
Mod,
Pow,
Unm,
Concat,
Len,
Eq,
Lt,
Le,
Index,
NewIndex,
Call,
ToString,
Custom(String),
}Expand description
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.
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.
Custom(String)
A custom metamethod.
Must not be in the protected list: __gc, __metatable, __mlua*.
Implementations§
Trait Implementations§
source§impl Clone for MetaMethod
impl Clone for MetaMethod
source§fn clone(&self) -> MetaMethod
fn clone(&self) -> MetaMethod
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl Debug for MetaMethod
impl Debug for MetaMethod
source§impl Display for MetaMethod
impl Display for MetaMethod
source§impl From<&str> for MetaMethod
impl From<&str> for MetaMethod
source§fn from(name: &str) -> MetaMethod
fn from(name: &str) -> MetaMethod
Converts to this type from the input type.
source§impl From<String> for MetaMethod
impl From<String> for MetaMethod
source§fn from(name: String) -> MetaMethod
fn from(name: String) -> MetaMethod
Converts to this type from the input type.
source§impl Hash for MetaMethod
impl Hash for MetaMethod
source§impl PartialEq<MetaMethod> for MetaMethod
impl PartialEq<MetaMethod> for MetaMethod
source§fn eq(&self, other: &MetaMethod) -> bool
fn eq(&self, other: &MetaMethod) -> bool
This method tests for
self and other values to be equal, and is used
by ==.