[][src]Trait mlua::TableExt

pub trait TableExt<'lua> {
    pub fn call_method<K, A, R>(&self, key: K, args: A) -> Result<R>
    where
        K: ToLua<'lua>,
        A: ToLuaMulti<'lua>,
        R: FromLuaMulti<'lua>
;
pub fn call_function<K, A, R>(&self, key: K, args: A) -> Result<R>
    where
        K: ToLua<'lua>,
        A: ToLuaMulti<'lua>,
        R: FromLuaMulti<'lua>
;
pub fn call_async_method<'fut, K, A, R>(
        &self,
        key: K,
        args: A
    ) -> LocalBoxFuture<'fut, Result<R>>
    where
        'lua: 'fut,
        K: ToLua<'lua>,
        A: ToLuaMulti<'lua>,
        R: FromLuaMulti<'lua> + 'fut
;
pub fn call_async_function<'fut, K, A, R>(
        &self,
        key: K,
        args: A
    ) -> LocalBoxFuture<'fut, Result<R>>
    where
        'lua: 'fut,
        K: ToLua<'lua>,
        A: ToLuaMulti<'lua>,
        R: FromLuaMulti<'lua> + 'fut
; }

An extension trait for Tables that provides a variety of convenient functionality.

Required methods

pub fn call_method<K, A, R>(&self, key: K, args: A) -> Result<R> where
    K: ToLua<'lua>,
    A: ToLuaMulti<'lua>,
    R: FromLuaMulti<'lua>, 
[src]

Gets the function associated to key from the table and executes it, passing the table itself along with args as function arguments.

This is a shortcut for table.get::<_, Function>(key)?.call((table.clone(), arg1, ..., argN))

This might invoke the __index metamethod.

pub fn call_function<K, A, R>(&self, key: K, args: A) -> Result<R> where
    K: ToLua<'lua>,
    A: ToLuaMulti<'lua>,
    R: FromLuaMulti<'lua>, 
[src]

Gets the function associated to key from the table and executes it, passing args as function arguments.

This is a shortcut for table.get::<_, Function>(key)?.call(args)

This might invoke the __index metamethod.

pub fn call_async_method<'fut, K, A, R>(
    &self,
    key: K,
    args: A
) -> LocalBoxFuture<'fut, Result<R>> where
    'lua: 'fut,
    K: ToLua<'lua>,
    A: ToLuaMulti<'lua>,
    R: FromLuaMulti<'lua> + 'fut, 
[src]

This is supported on crate feature async only.

Gets the function associated to key from the table and asynchronously executes it, passing the table itself along with args as function arguments and returning Future.

Requires feature = "async"

This might invoke the __index metamethod.

pub fn call_async_function<'fut, K, A, R>(
    &self,
    key: K,
    args: A
) -> LocalBoxFuture<'fut, Result<R>> where
    'lua: 'fut,
    K: ToLua<'lua>,
    A: ToLuaMulti<'lua>,
    R: FromLuaMulti<'lua> + 'fut, 
[src]

This is supported on crate feature async only.

Gets the function associated to key from the table and asynchronously executes it, passing args as function arguments and returning Future.

Requires feature = "async"

This might invoke the __index metamethod.

Loading content...

Implementors

impl<'lua> TableExt<'lua> for Table<'lua>[src]

Loading content...