{-# LINE 1 "src/Graphics/Cairo/Exception.hsc" #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE BlockArguments, LambdaCase #-}
{-# LANGUAGE ExistentialQuantification #-}
{-# OPTIONS_GHC -Wall -fno-warn-tabs #-}

module Graphics.Cairo.Exception where

import Foreign.Ptr
import Foreign.ForeignPtr
import Control.Exception
import Control.Exception.Hierarchy
import Data.Word

import Data.CairoContext

import {-# SOURCE #-} Graphics.Cairo.Drawing.Regions
import Graphics.Cairo.Surfaces.CairoSurfaceT.Internal



data CairoStatusNoMemory = CairoStatusNoMemory deriving Int -> CairoStatusNoMemory -> ShowS
[CairoStatusNoMemory] -> ShowS
CairoStatusNoMemory -> String
(Int -> CairoStatusNoMemory -> ShowS)
-> (CairoStatusNoMemory -> String)
-> ([CairoStatusNoMemory] -> ShowS)
-> Show CairoStatusNoMemory
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusNoMemory -> ShowS
showsPrec :: Int -> CairoStatusNoMemory -> ShowS
$cshow :: CairoStatusNoMemory -> String
show :: CairoStatusNoMemory -> String
$cshowList :: [CairoStatusNoMemory] -> ShowS
showList :: [CairoStatusNoMemory] -> ShowS
Show
data CairoStatusInvalidRestore = CairoStatusInvalidRestore deriving Int -> CairoStatusInvalidRestore -> ShowS
[CairoStatusInvalidRestore] -> ShowS
CairoStatusInvalidRestore -> String
(Int -> CairoStatusInvalidRestore -> ShowS)
-> (CairoStatusInvalidRestore -> String)
-> ([CairoStatusInvalidRestore] -> ShowS)
-> Show CairoStatusInvalidRestore
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusInvalidRestore -> ShowS
showsPrec :: Int -> CairoStatusInvalidRestore -> ShowS
$cshow :: CairoStatusInvalidRestore -> String
show :: CairoStatusInvalidRestore -> String
$cshowList :: [CairoStatusInvalidRestore] -> ShowS
showList :: [CairoStatusInvalidRestore] -> ShowS
Show
data CairoStatusInvalidPopGroup = CairoStatusInvalidPopGroup deriving Int -> CairoStatusInvalidPopGroup -> ShowS
[CairoStatusInvalidPopGroup] -> ShowS
CairoStatusInvalidPopGroup -> String
(Int -> CairoStatusInvalidPopGroup -> ShowS)
-> (CairoStatusInvalidPopGroup -> String)
-> ([CairoStatusInvalidPopGroup] -> ShowS)
-> Show CairoStatusInvalidPopGroup
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusInvalidPopGroup -> ShowS
showsPrec :: Int -> CairoStatusInvalidPopGroup -> ShowS
$cshow :: CairoStatusInvalidPopGroup -> String
show :: CairoStatusInvalidPopGroup -> String
$cshowList :: [CairoStatusInvalidPopGroup] -> ShowS
showList :: [CairoStatusInvalidPopGroup] -> ShowS
Show
data CairoStatusNoCurrentPoint = CairoStatusNoCurrentPoint deriving Int -> CairoStatusNoCurrentPoint -> ShowS
[CairoStatusNoCurrentPoint] -> ShowS
CairoStatusNoCurrentPoint -> String
(Int -> CairoStatusNoCurrentPoint -> ShowS)
-> (CairoStatusNoCurrentPoint -> String)
-> ([CairoStatusNoCurrentPoint] -> ShowS)
-> Show CairoStatusNoCurrentPoint
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusNoCurrentPoint -> ShowS
showsPrec :: Int -> CairoStatusNoCurrentPoint -> ShowS
$cshow :: CairoStatusNoCurrentPoint -> String
show :: CairoStatusNoCurrentPoint -> String
$cshowList :: [CairoStatusNoCurrentPoint] -> ShowS
showList :: [CairoStatusNoCurrentPoint] -> ShowS
Show
data CairoStatusInvalidMatrix = CairoStatusInvalidMatrix deriving Int -> CairoStatusInvalidMatrix -> ShowS
[CairoStatusInvalidMatrix] -> ShowS
CairoStatusInvalidMatrix -> String
(Int -> CairoStatusInvalidMatrix -> ShowS)
-> (CairoStatusInvalidMatrix -> String)
-> ([CairoStatusInvalidMatrix] -> ShowS)
-> Show CairoStatusInvalidMatrix
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusInvalidMatrix -> ShowS
showsPrec :: Int -> CairoStatusInvalidMatrix -> ShowS
$cshow :: CairoStatusInvalidMatrix -> String
show :: CairoStatusInvalidMatrix -> String
$cshowList :: [CairoStatusInvalidMatrix] -> ShowS
showList :: [CairoStatusInvalidMatrix] -> ShowS
Show
data CairoStatusInvalidStatus = CairoStatusInvalidStatus deriving Int -> CairoStatusInvalidStatus -> ShowS
[CairoStatusInvalidStatus] -> ShowS
CairoStatusInvalidStatus -> String
(Int -> CairoStatusInvalidStatus -> ShowS)
-> (CairoStatusInvalidStatus -> String)
-> ([CairoStatusInvalidStatus] -> ShowS)
-> Show CairoStatusInvalidStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusInvalidStatus -> ShowS
showsPrec :: Int -> CairoStatusInvalidStatus -> ShowS
$cshow :: CairoStatusInvalidStatus -> String
show :: CairoStatusInvalidStatus -> String
$cshowList :: [CairoStatusInvalidStatus] -> ShowS
showList :: [CairoStatusInvalidStatus] -> ShowS
Show
data CairoStatusNullPointer = CairoStatusNullPointer deriving Int -> CairoStatusNullPointer -> ShowS
[CairoStatusNullPointer] -> ShowS
CairoStatusNullPointer -> String
(Int -> CairoStatusNullPointer -> ShowS)
-> (CairoStatusNullPointer -> String)
-> ([CairoStatusNullPointer] -> ShowS)
-> Show CairoStatusNullPointer
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusNullPointer -> ShowS
showsPrec :: Int -> CairoStatusNullPointer -> ShowS
$cshow :: CairoStatusNullPointer -> String
show :: CairoStatusNullPointer -> String
$cshowList :: [CairoStatusNullPointer] -> ShowS
showList :: [CairoStatusNullPointer] -> ShowS
Show
data CairoStatusInvalidString = CairoStatusInvalidString deriving Int -> CairoStatusInvalidString -> ShowS
[CairoStatusInvalidString] -> ShowS
CairoStatusInvalidString -> String
(Int -> CairoStatusInvalidString -> ShowS)
-> (CairoStatusInvalidString -> String)
-> ([CairoStatusInvalidString] -> ShowS)
-> Show CairoStatusInvalidString
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusInvalidString -> ShowS
showsPrec :: Int -> CairoStatusInvalidString -> ShowS
$cshow :: CairoStatusInvalidString -> String
show :: CairoStatusInvalidString -> String
$cshowList :: [CairoStatusInvalidString] -> ShowS
showList :: [CairoStatusInvalidString] -> ShowS
Show
data CairoStatusInvalidPathData = CairoStatusInvalidPathData deriving Int -> CairoStatusInvalidPathData -> ShowS
[CairoStatusInvalidPathData] -> ShowS
CairoStatusInvalidPathData -> String
(Int -> CairoStatusInvalidPathData -> ShowS)
-> (CairoStatusInvalidPathData -> String)
-> ([CairoStatusInvalidPathData] -> ShowS)
-> Show CairoStatusInvalidPathData
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusInvalidPathData -> ShowS
showsPrec :: Int -> CairoStatusInvalidPathData -> ShowS
$cshow :: CairoStatusInvalidPathData -> String
show :: CairoStatusInvalidPathData -> String
$cshowList :: [CairoStatusInvalidPathData] -> ShowS
showList :: [CairoStatusInvalidPathData] -> ShowS
Show
data CairoStatusReadError = CairoStatusReadError deriving Int -> CairoStatusReadError -> ShowS
[CairoStatusReadError] -> ShowS
CairoStatusReadError -> String
(Int -> CairoStatusReadError -> ShowS)
-> (CairoStatusReadError -> String)
-> ([CairoStatusReadError] -> ShowS)
-> Show CairoStatusReadError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusReadError -> ShowS
showsPrec :: Int -> CairoStatusReadError -> ShowS
$cshow :: CairoStatusReadError -> String
show :: CairoStatusReadError -> String
$cshowList :: [CairoStatusReadError] -> ShowS
showList :: [CairoStatusReadError] -> ShowS
Show
data CairoStatusWriteError = CairoStatusWriteError deriving Int -> CairoStatusWriteError -> ShowS
[CairoStatusWriteError] -> ShowS
CairoStatusWriteError -> String
(Int -> CairoStatusWriteError -> ShowS)
-> (CairoStatusWriteError -> String)
-> ([CairoStatusWriteError] -> ShowS)
-> Show CairoStatusWriteError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusWriteError -> ShowS
showsPrec :: Int -> CairoStatusWriteError -> ShowS
$cshow :: CairoStatusWriteError -> String
show :: CairoStatusWriteError -> String
$cshowList :: [CairoStatusWriteError] -> ShowS
showList :: [CairoStatusWriteError] -> ShowS
Show
data CairoStatusFileNotFound = CairoStatusFileNotFound deriving Int -> CairoStatusFileNotFound -> ShowS
[CairoStatusFileNotFound] -> ShowS
CairoStatusFileNotFound -> String
(Int -> CairoStatusFileNotFound -> ShowS)
-> (CairoStatusFileNotFound -> String)
-> ([CairoStatusFileNotFound] -> ShowS)
-> Show CairoStatusFileNotFound
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusFileNotFound -> ShowS
showsPrec :: Int -> CairoStatusFileNotFound -> ShowS
$cshow :: CairoStatusFileNotFound -> String
show :: CairoStatusFileNotFound -> String
$cshowList :: [CairoStatusFileNotFound] -> ShowS
showList :: [CairoStatusFileNotFound] -> ShowS
Show
data CairoStatusInvalidDash = CairoStatusInvalidDash deriving Int -> CairoStatusInvalidDash -> ShowS
[CairoStatusInvalidDash] -> ShowS
CairoStatusInvalidDash -> String
(Int -> CairoStatusInvalidDash -> ShowS)
-> (CairoStatusInvalidDash -> String)
-> ([CairoStatusInvalidDash] -> ShowS)
-> Show CairoStatusInvalidDash
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusInvalidDash -> ShowS
showsPrec :: Int -> CairoStatusInvalidDash -> ShowS
$cshow :: CairoStatusInvalidDash -> String
show :: CairoStatusInvalidDash -> String
$cshowList :: [CairoStatusInvalidDash] -> ShowS
showList :: [CairoStatusInvalidDash] -> ShowS
Show
data CairoStatusInvalidMeshConstruction = CairoStatusInvalidMeshConstruction deriving Int -> CairoStatusInvalidMeshConstruction -> ShowS
[CairoStatusInvalidMeshConstruction] -> ShowS
CairoStatusInvalidMeshConstruction -> String
(Int -> CairoStatusInvalidMeshConstruction -> ShowS)
-> (CairoStatusInvalidMeshConstruction -> String)
-> ([CairoStatusInvalidMeshConstruction] -> ShowS)
-> Show CairoStatusInvalidMeshConstruction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusInvalidMeshConstruction -> ShowS
showsPrec :: Int -> CairoStatusInvalidMeshConstruction -> ShowS
$cshow :: CairoStatusInvalidMeshConstruction -> String
show :: CairoStatusInvalidMeshConstruction -> String
$cshowList :: [CairoStatusInvalidMeshConstruction] -> ShowS
showList :: [CairoStatusInvalidMeshConstruction] -> ShowS
Show
data CairoStatusOthers = CairoStatusOthers Word32 deriving Int -> CairoStatusOthers -> ShowS
[CairoStatusOthers] -> ShowS
CairoStatusOthers -> String
(Int -> CairoStatusOthers -> ShowS)
-> (CairoStatusOthers -> String)
-> ([CairoStatusOthers] -> ShowS)
-> Show CairoStatusOthers
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusOthers -> ShowS
showsPrec :: Int -> CairoStatusOthers -> ShowS
$cshow :: CairoStatusOthers -> String
show :: CairoStatusOthers -> String
$cshowList :: [CairoStatusOthers] -> ShowS
showList :: [CairoStatusOthers] -> ShowS
Show
{-# LINE 36 "src/Graphics/Cairo/Exception.hsc" #-}

exceptionHierarchy Nothing $ ExNode "CairoStatus" [
	ExType ''CairoStatusNoMemory,
	ExType ''CairoStatusInvalidRestore,
	ExType ''CairoStatusInvalidPopGroup,
	ExType ''CairoStatusNoCurrentPoint,
	ExType ''CairoStatusInvalidMatrix,
	ExType ''CairoStatusInvalidStatus,
	ExType ''CairoStatusNullPointer,
	ExType ''CairoStatusInvalidString,
	ExType ''CairoStatusInvalidPathData,
	ExType ''CairoStatusReadError,
	ExType ''CairoStatusWriteError,
	ExType ''CairoStatusFileNotFound,
	ExType ''CairoStatusInvalidDash,
	ExType ''CairoStatusInvalidMeshConstruction,
	ExType ''CairoStatusOthers
	]

newtype CairoStatusT = CairoStatusT Word32 deriving (Int -> CairoStatusT -> ShowS
[CairoStatusT] -> ShowS
CairoStatusT -> String
(Int -> CairoStatusT -> ShowS)
-> (CairoStatusT -> String)
-> ([CairoStatusT] -> ShowS)
-> Show CairoStatusT
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CairoStatusT -> ShowS
showsPrec :: Int -> CairoStatusT -> ShowS
$cshow :: CairoStatusT -> String
show :: CairoStatusT -> String
$cshowList :: [CairoStatusT] -> ShowS
showList :: [CairoStatusT] -> ShowS
Show, CairoStatusT -> CairoStatusT -> Bool
(CairoStatusT -> CairoStatusT -> Bool)
-> (CairoStatusT -> CairoStatusT -> Bool) -> Eq CairoStatusT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CairoStatusT -> CairoStatusT -> Bool
== :: CairoStatusT -> CairoStatusT -> Bool
$c/= :: CairoStatusT -> CairoStatusT -> Bool
/= :: CairoStatusT -> CairoStatusT -> Bool
Eq)
{-# LINE 56 "src/Graphics/Cairo/Exception.hsc" #-}

foreign import ccall "cairo_status" c_cairo_status :: Ptr (CairoT r s) -> IO Word32
{-# LINE 58 "src/Graphics/Cairo/Exception.hsc" #-}

raiseIfError :: CairoT r s -> IO ()
raiseIfError :: forall r s. CairoT r s -> IO ()
raiseIfError (CairoT ForeignPtr (CairoT r s)
fcr) = ForeignPtr (CairoT r s) -> (Ptr (CairoT r s) -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr (CairoT r s)
fcr \Ptr (CairoT r s)
pcr -> Word32 -> IO ()
cairoStatusToThrowError (Word32 -> IO ()) -> IO Word32 -> IO ()
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Ptr (CairoT r s) -> IO Word32
forall r s. Ptr (CairoT r s) -> IO Word32
c_cairo_status Ptr (CairoT r s)
pcr

raiseIfErrorRegion :: CairoRegionT s -> IO ()
raiseIfErrorRegion :: forall s. CairoRegionT s -> IO ()
raiseIfErrorRegion (CairoRegionT ForeignPtr (CairoRegionT s)
fr) = ForeignPtr (CairoRegionT s)
-> (Ptr (CairoRegionT s) -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr (CairoRegionT s)
fr \Ptr (CairoRegionT s)
r -> Word32 -> IO ()
cairoStatusToThrowError (Word32 -> IO ()) -> IO Word32 -> IO ()
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Ptr (CairoRegionT s) -> IO Word32
forall s. Ptr (CairoRegionT s) -> IO Word32
c_cairo_region_status Ptr (CairoRegionT s)
r

foreign import ccall "cairo_region_status" c_cairo_region_status ::
	Ptr (CairoRegionT s) -> IO Word32
{-# LINE 67 "src/Graphics/Cairo/Exception.hsc" #-}

foreign import ccall "cairo_surface_status" c_cairo_surface_status :: Ptr (CairoSurfaceT s ps) -> IO Word32
{-# LINE 69 "src/Graphics/Cairo/Exception.hsc" #-}

raiseIfErrorSurface :: CairoSurfaceT s ps -> IO ()
raiseIfErrorSurface :: forall s ps. CairoSurfaceT s ps -> IO ()
raiseIfErrorSurface (CairoSurfaceT ForeignPtr (CairoSurfaceT s ps)
fsr) = ForeignPtr (CairoSurfaceT s ps)
-> (Ptr (CairoSurfaceT s ps) -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr (CairoSurfaceT s ps)
fsr \Ptr (CairoSurfaceT s ps)
sr -> Word32 -> IO ()
cairoStatusToThrowError (Word32 -> IO ()) -> IO Word32 -> IO ()
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Ptr (CairoSurfaceT s ps) -> IO Word32
forall s ps. Ptr (CairoSurfaceT s ps) -> IO Word32
c_cairo_surface_status Ptr (CairoSurfaceT s ps)
sr

raiseIfErrorPtrSurface :: Ptr (CairoSurfaceT s ps) -> IO ()
raiseIfErrorPtrSurface :: forall s ps. Ptr (CairoSurfaceT s ps) -> IO ()
raiseIfErrorPtrSurface Ptr (CairoSurfaceT s ps)
sr = Word32 -> IO ()
cairoStatusToThrowError (Word32 -> IO ()) -> IO Word32 -> IO ()
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Ptr (CairoSurfaceT s ps) -> IO Word32
forall s ps. Ptr (CairoSurfaceT s ps) -> IO Word32
c_cairo_surface_status Ptr (CairoSurfaceT s ps)
sr

cairoStatusToThrowError :: Word32 -> IO ()
{-# LINE 77 "src/Graphics/Cairo/Exception.hsc" #-}
cairoStatusToThrowError = \case
	0 -> pure ()
{-# LINE 79 "src/Graphics/Cairo/Exception.hsc" #-}
	1 -> throw CairoStatusNoMemory
{-# LINE 80 "src/Graphics/Cairo/Exception.hsc" #-}
	2 -> throw CairoStatusInvalidRestore
{-# LINE 81 "src/Graphics/Cairo/Exception.hsc" #-}
	3 -> throw CairoStatusInvalidPopGroup
{-# LINE 82 "src/Graphics/Cairo/Exception.hsc" #-}
	4 -> throw CairoStatusNoCurrentPoint
{-# LINE 83 "src/Graphics/Cairo/Exception.hsc" #-}
	5 -> throw CairoStatusInvalidMatrix
{-# LINE 84 "src/Graphics/Cairo/Exception.hsc" #-}
	6 -> throw CairoStatusInvalidStatus
{-# LINE 85 "src/Graphics/Cairo/Exception.hsc" #-}
	7 -> throw CairoStatusNullPointer
{-# LINE 86 "src/Graphics/Cairo/Exception.hsc" #-}
	8 -> throw CairoStatusInvalidString
{-# LINE 87 "src/Graphics/Cairo/Exception.hsc" #-}
	9 -> throw CairoStatusInvalidPathData
{-# LINE 88 "src/Graphics/Cairo/Exception.hsc" #-}
	10 -> throw CairoStatusReadError
{-# LINE 89 "src/Graphics/Cairo/Exception.hsc" #-}
	11 -> throw CairoStatusWriteError
{-# LINE 90 "src/Graphics/Cairo/Exception.hsc" #-}
	18 -> throw CairoStatusFileNotFound
{-# LINE 91 "src/Graphics/Cairo/Exception.hsc" #-}
	19 -> throw CairoStatusInvalidDash
{-# LINE 92 "src/Graphics/Cairo/Exception.hsc" #-}
	36 -> throw CairoStatusInvalidMeshConstruction
{-# LINE 93 "src/Graphics/Cairo/Exception.hsc" #-}
	st -> throw $ CairoStatusOthers st

cairoStatusSuccess :: CairoStatusT
cairoStatusSuccess :: CairoStatusT
cairoStatusSuccess = Word32 -> CairoStatusT
CairoStatusT Word32
0
cairoStatusNoMemory :: CairoStatusT
cairoStatusNoMemory :: CairoStatusT
cairoStatusNoMemory = Word32 -> CairoStatusT
CairoStatusT Word32
1
cairoStatusInvalidRestore :: CairoStatusT
cairoStatusInvalidRestore :: CairoStatusT
cairoStatusInvalidRestore = Word32 -> CairoStatusT
CairoStatusT Word32
2
cairoStatusInvalidPopGroup :: CairoStatusT
cairoStatusInvalidPopGroup = CairoStatusT 3
cairoStatusNoCurrentPoint :: CairoStatusT
cairoStatusNoCurrentPoint :: CairoStatusT
cairoStatusNoCurrentPoint = Word32 -> CairoStatusT
CairoStatusT Word32
4

{-# LINE 98 "src/Graphics/Cairo/Exception.hsc" #-}

tryCairoWriteFunc :: IO a -> IO Word32
{-# LINE 100 "src/Graphics/Cairo/Exception.hsc" #-}
tryCairoWriteFunc io = (<$> try io) \case
	Left CairoStatusWriteError -> 11
{-# LINE 102 "src/Graphics/Cairo/Exception.hsc" #-}
	Right _ -> 0
{-# LINE 103 "src/Graphics/Cairo/Exception.hsc" #-}

{-
pattern CairoStatusSuccess :: CairoStatusT
pattern CairoStatusSuccess = CairoStatusT #const CAIRO_STATUS_SUCCESS

pattern CairoStatusNoMemory :: CairoStatusT
pattern CairoStatusNoMemory = CairoStatusT #const CAIRO_STATUS_NO_MEMORY

pattern CairoStatusInvalidRestore :: CairoStatusT
pattern CairoStatusInvalidRestore = CairoStatusT #const CAIRO_STATUS_INVALID_RESTORE

pattern CairoStatusInvalidPopGroup :: CairoStatusT
pattern CairoStatusInvalidPopGroup = CairoStatusT #const CAIRO_STATUS_INVALID_POP_GROUP

pattern CairoStatusNoCurrentPoint :: CairoStatusT
pattern CairoStatusNoCurrentPoint = CairoStatusT #const CAIRO_STATUS_NO_CURRENT_POINT
	-}