HsLua.Class.Pushable

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 #

A value that can be pushed to the Lua stack.

Methods

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

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

#### Instances

Instances details

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

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

Push list as numerically indexed table.