hslua-classes-2.3.1: Type classes for HsLua

Copyright | © 2007–2012 Gracjan Polak; © 2012–2016 Ömer Sinan Ağacan; © 2017-2024 Albert Krewinkel
License | MIT
Maintainer | Albert Krewinkel <tarleb@hslua.org>
Stability | beta
Portability | FlexibleInstances, ScopedTypeVariables
Safe Haskell | None
Language | Haskell2010

HsLua.Class.Pushable

Description

Sending haskell objects to the lua stack.

Synopsis

- class Pushable a where
  - push :: LuaError e => a -> LuaE e ()
- pushList :: (LuaError e, Pushable a) => [a] -> LuaE e ()

# Documentation

class Pushable a where Source #

A value that can be pushed to the Lua stack.

Methods

push :: LuaError e => a -> LuaE e () Source #

Pushes a value onto Lua stack, casting it into meaningfully nearest Lua type.

#### Instances

Instances details

Pushable ByteString Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => ByteString -> LuaE e () Source #
Pushable ByteString Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => ByteString -> LuaE e () Source #
Pushable CFunction Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => CFunction -> LuaE e () Source #
Pushable Integer Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Integer -> LuaE e () Source #
Pushable Number Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Number -> LuaE e () Source #
Pushable Text Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Text -> LuaE e () Source #
Pushable Integer Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Integer -> LuaE e () Source #
Pushable () Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => () -> LuaE e () Source #
Pushable Bool Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Bool -> LuaE e () Source #
Pushable Double Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Double -> LuaE e () Source #
Pushable Float Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Float -> LuaE e () Source #
Pushable Int Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Int -> LuaE e () Source #
Pushable a => Pushable (Set a) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Set a -> LuaE e () Source #
Pushable (Ptr a) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Ptr a -> LuaE e () Source #
Pushable a => Pushable (Optional a) Source # |
Instance details Defined in HsLua.Class.Util Methods push :: LuaError e => Optional a -> LuaE e () Source #
Pushable [Char] Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => [Char] -> LuaE e () Source #
Pushable a => Pushable [a] Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => [a] -> LuaE e () Source #
(Pushable a, Pushable b) => Pushable (Map a b) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => Map a b -> LuaE e () Source #
(Pushable a, Pushable b) => Pushable (a, b) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => (a, b) -> LuaE e () Source #
(Pushable a, Pushable b, Pushable c) => Pushable (a, b, c) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => (a, b, c) -> LuaE e () Source #
(Pushable a, Pushable b, Pushable c, Pushable d) => Pushable (a, b, c, d) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e => (a, b, c, d) -> LuaE e () Source #
(Pushable a, Pushable b, Pushable c, Pushable d, Pushable e) => Pushable (a, b, c, d, e) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e0 => (a, b, c, d, e) -> LuaE e0 () Source #
(Pushable a, Pushable b, Pushable c, Pushable d, Pushable e, Pushable f) => Pushable (a, b, c, d, e, f) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e0 => (a, b, c, d, e, f) -> LuaE e0 () Source #
(Pushable a, Pushable b, Pushable c, Pushable d, Pushable e, Pushable f, Pushable g) => Pushable (a, b, c, d, e, f, g) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e0 => (a, b, c, d, e, f, g) -> LuaE e0 () Source #
(Pushable a, Pushable b, Pushable c, Pushable d, Pushable e, Pushable f, Pushable g, Pushable h) => Pushable (a, b, c, d, e, f, g, h) Source # |
Instance details Defined in HsLua.Class.Pushable Methods push :: LuaError e0 => (a, b, c, d, e, f, g, h) -> LuaE e0 () Source #

pushList :: (LuaError e, Pushable a) => [a] -> LuaE e () Source #

Push list as numerically indexed table.