module CPython.Constants
( none
, true
, false
, isNone
, isTrue
, isFalse
) where
import CPython.Internal
none :: IO (SomeObject)
none =
none'_ >>= \res ->
peekObject res >>= \res' ->
return (res')
true :: IO (SomeObject)
true =
true'_ >>= \res ->
peekObject res >>= \res' ->
return (res')
false :: IO (SomeObject)
false =
false'_ >>= \res ->
peekObject res >>= \res' ->
return (res')
rawNone :: Ptr ()
rawNone =
let {res = rawNone'_} in
let {res' = id res} in
(res')
rawTrue :: Ptr ()
rawTrue =
let {res = rawTrue'_} in
let {res' = id res} in
(res')
rawFalse :: Ptr ()
rawFalse =
let {res = rawFalse'_} in
let {res' = id res} in
(res')
isNone :: SomeObject -> IO Bool
isNone obj = withObject obj $ \ptr -> return $ ptr == rawNone
isTrue :: SomeObject -> IO Bool
isTrue obj = withObject obj $ \ptr -> return $ ptr == rawTrue
isFalse :: SomeObject -> IO Bool
isFalse obj = withObject obj $ \ptr -> return $ ptr == rawFalse
foreign import ccall unsafe "CPython/Constants.chs.h hscpython_Py_None"
none'_ :: (IO (Ptr ()))
foreign import ccall unsafe "CPython/Constants.chs.h hscpython_Py_True"
true'_ :: (IO (Ptr ()))
foreign import ccall unsafe "CPython/Constants.chs.h hscpython_Py_False"
false'_ :: (IO (Ptr ()))
foreign import ccall unsafe "CPython/Constants.chs.h hscpython_Py_None"
rawNone'_ :: (Ptr ())
foreign import ccall unsafe "CPython/Constants.chs.h hscpython_Py_True"
rawTrue'_ :: (Ptr ())
foreign import ccall unsafe "CPython/Constants.chs.h hscpython_Py_False"
rawFalse'_ :: (Ptr ())