{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE NoImplicitPrelude #-}

-- This file was generated by wgpu-raw-hs-codegen on:
--   2021-08-25T10:02:03.522705
-- Using wgpu-native git hash:
--   b10496e7eed9349f0fd541e6dfe5029cb436de74 wgpu-native (v0.9.2.2)

module WGPU.Raw.Generated.Enum.WGPUCompareFunction where

import Data.Word (Word32)
import Foreign (Storable)
import Prelude (Eq, Num, Show)

newtype WGPUCompareFunction = WGPUCompareFunction Word32
  deriving (WGPUCompareFunction -> WGPUCompareFunction -> Bool
(WGPUCompareFunction -> WGPUCompareFunction -> Bool)
-> (WGPUCompareFunction -> WGPUCompareFunction -> Bool)
-> Eq WGPUCompareFunction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: WGPUCompareFunction -> WGPUCompareFunction -> Bool
$c/= :: WGPUCompareFunction -> WGPUCompareFunction -> Bool
== :: WGPUCompareFunction -> WGPUCompareFunction -> Bool
$c== :: WGPUCompareFunction -> WGPUCompareFunction -> Bool
Eq, Int -> WGPUCompareFunction -> ShowS
[WGPUCompareFunction] -> ShowS
WGPUCompareFunction -> String
(Int -> WGPUCompareFunction -> ShowS)
-> (WGPUCompareFunction -> String)
-> ([WGPUCompareFunction] -> ShowS)
-> Show WGPUCompareFunction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [WGPUCompareFunction] -> ShowS
$cshowList :: [WGPUCompareFunction] -> ShowS
show :: WGPUCompareFunction -> String
$cshow :: WGPUCompareFunction -> String
showsPrec :: Int -> WGPUCompareFunction -> ShowS
$cshowsPrec :: Int -> WGPUCompareFunction -> ShowS
Show, Integer -> WGPUCompareFunction
WGPUCompareFunction -> WGPUCompareFunction
WGPUCompareFunction -> WGPUCompareFunction -> WGPUCompareFunction
(WGPUCompareFunction -> WGPUCompareFunction -> WGPUCompareFunction)
-> (WGPUCompareFunction
    -> WGPUCompareFunction -> WGPUCompareFunction)
-> (WGPUCompareFunction
    -> WGPUCompareFunction -> WGPUCompareFunction)
-> (WGPUCompareFunction -> WGPUCompareFunction)
-> (WGPUCompareFunction -> WGPUCompareFunction)
-> (WGPUCompareFunction -> WGPUCompareFunction)
-> (Integer -> WGPUCompareFunction)
-> Num WGPUCompareFunction
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
fromInteger :: Integer -> WGPUCompareFunction
$cfromInteger :: Integer -> WGPUCompareFunction
signum :: WGPUCompareFunction -> WGPUCompareFunction
$csignum :: WGPUCompareFunction -> WGPUCompareFunction
abs :: WGPUCompareFunction -> WGPUCompareFunction
$cabs :: WGPUCompareFunction -> WGPUCompareFunction
negate :: WGPUCompareFunction -> WGPUCompareFunction
$cnegate :: WGPUCompareFunction -> WGPUCompareFunction
* :: WGPUCompareFunction -> WGPUCompareFunction -> WGPUCompareFunction
$c* :: WGPUCompareFunction -> WGPUCompareFunction -> WGPUCompareFunction
- :: WGPUCompareFunction -> WGPUCompareFunction -> WGPUCompareFunction
$c- :: WGPUCompareFunction -> WGPUCompareFunction -> WGPUCompareFunction
+ :: WGPUCompareFunction -> WGPUCompareFunction -> WGPUCompareFunction
$c+ :: WGPUCompareFunction -> WGPUCompareFunction -> WGPUCompareFunction
Num, Ptr b -> Int -> IO WGPUCompareFunction
Ptr b -> Int -> WGPUCompareFunction -> IO ()
Ptr WGPUCompareFunction -> IO WGPUCompareFunction
Ptr WGPUCompareFunction -> Int -> IO WGPUCompareFunction
Ptr WGPUCompareFunction -> Int -> WGPUCompareFunction -> IO ()
Ptr WGPUCompareFunction -> WGPUCompareFunction -> IO ()
WGPUCompareFunction -> Int
(WGPUCompareFunction -> Int)
-> (WGPUCompareFunction -> Int)
-> (Ptr WGPUCompareFunction -> Int -> IO WGPUCompareFunction)
-> (Ptr WGPUCompareFunction -> Int -> WGPUCompareFunction -> IO ())
-> (forall b. Ptr b -> Int -> IO WGPUCompareFunction)
-> (forall b. Ptr b -> Int -> WGPUCompareFunction -> IO ())
-> (Ptr WGPUCompareFunction -> IO WGPUCompareFunction)
-> (Ptr WGPUCompareFunction -> WGPUCompareFunction -> IO ())
-> Storable WGPUCompareFunction
forall b. Ptr b -> Int -> IO WGPUCompareFunction
forall b. Ptr b -> Int -> WGPUCompareFunction -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
poke :: Ptr WGPUCompareFunction -> WGPUCompareFunction -> IO ()
$cpoke :: Ptr WGPUCompareFunction -> WGPUCompareFunction -> IO ()
peek :: Ptr WGPUCompareFunction -> IO WGPUCompareFunction
$cpeek :: Ptr WGPUCompareFunction -> IO WGPUCompareFunction
pokeByteOff :: Ptr b -> Int -> WGPUCompareFunction -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> WGPUCompareFunction -> IO ()
peekByteOff :: Ptr b -> Int -> IO WGPUCompareFunction
$cpeekByteOff :: forall b. Ptr b -> Int -> IO WGPUCompareFunction
pokeElemOff :: Ptr WGPUCompareFunction -> Int -> WGPUCompareFunction -> IO ()
$cpokeElemOff :: Ptr WGPUCompareFunction -> Int -> WGPUCompareFunction -> IO ()
peekElemOff :: Ptr WGPUCompareFunction -> Int -> IO WGPUCompareFunction
$cpeekElemOff :: Ptr WGPUCompareFunction -> Int -> IO WGPUCompareFunction
alignment :: WGPUCompareFunction -> Int
$calignment :: WGPUCompareFunction -> Int
sizeOf :: WGPUCompareFunction -> Int
$csizeOf :: WGPUCompareFunction -> Int
Storable)

pattern Undefined :: forall a. (Eq a, Num a) => a
pattern $bUndefined :: a
$mUndefined :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
Undefined = 0x00000000

pattern Never :: forall a. (Eq a, Num a) => a
pattern $bNever :: a
$mNever :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
Never = 0x00000001

pattern Less :: forall a. (Eq a, Num a) => a
pattern $bLess :: a
$mLess :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
Less = 0x00000002

pattern LessEqual :: forall a. (Eq a, Num a) => a
pattern $bLessEqual :: a
$mLessEqual :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LessEqual = 0x00000003

pattern Greater :: forall a. (Eq a, Num a) => a
pattern $bGreater :: a
$mGreater :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
Greater = 0x00000004

pattern GreaterEqual :: forall a. (Eq a, Num a) => a
pattern $bGreaterEqual :: a
$mGreaterEqual :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GreaterEqual = 0x00000005

pattern Equal :: forall a. (Eq a, Num a) => a
pattern $bEqual :: a
$mEqual :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
Equal = 0x00000006

pattern NotEqual :: forall a. (Eq a, Num a) => a
pattern $bNotEqual :: a
$mNotEqual :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NotEqual = 0x00000007

pattern Always :: forall a. (Eq a, Num a) => a
pattern $bAlways :: a
$mAlways :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
Always = 0x00000008