{-# 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.WGPUSamplerBindingType where

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

newtype WGPUSamplerBindingType = WGPUSamplerBindingType Word32
  deriving (WGPUSamplerBindingType -> WGPUSamplerBindingType -> Bool
(WGPUSamplerBindingType -> WGPUSamplerBindingType -> Bool)
-> (WGPUSamplerBindingType -> WGPUSamplerBindingType -> Bool)
-> Eq WGPUSamplerBindingType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: WGPUSamplerBindingType -> WGPUSamplerBindingType -> Bool
$c/= :: WGPUSamplerBindingType -> WGPUSamplerBindingType -> Bool
== :: WGPUSamplerBindingType -> WGPUSamplerBindingType -> Bool
$c== :: WGPUSamplerBindingType -> WGPUSamplerBindingType -> Bool
Eq, Int -> WGPUSamplerBindingType -> ShowS
[WGPUSamplerBindingType] -> ShowS
WGPUSamplerBindingType -> String
(Int -> WGPUSamplerBindingType -> ShowS)
-> (WGPUSamplerBindingType -> String)
-> ([WGPUSamplerBindingType] -> ShowS)
-> Show WGPUSamplerBindingType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [WGPUSamplerBindingType] -> ShowS
$cshowList :: [WGPUSamplerBindingType] -> ShowS
show :: WGPUSamplerBindingType -> String
$cshow :: WGPUSamplerBindingType -> String
showsPrec :: Int -> WGPUSamplerBindingType -> ShowS
$cshowsPrec :: Int -> WGPUSamplerBindingType -> ShowS
Show, Integer -> WGPUSamplerBindingType
WGPUSamplerBindingType -> WGPUSamplerBindingType
WGPUSamplerBindingType
-> WGPUSamplerBindingType -> WGPUSamplerBindingType
(WGPUSamplerBindingType
 -> WGPUSamplerBindingType -> WGPUSamplerBindingType)
-> (WGPUSamplerBindingType
    -> WGPUSamplerBindingType -> WGPUSamplerBindingType)
-> (WGPUSamplerBindingType
    -> WGPUSamplerBindingType -> WGPUSamplerBindingType)
-> (WGPUSamplerBindingType -> WGPUSamplerBindingType)
-> (WGPUSamplerBindingType -> WGPUSamplerBindingType)
-> (WGPUSamplerBindingType -> WGPUSamplerBindingType)
-> (Integer -> WGPUSamplerBindingType)
-> Num WGPUSamplerBindingType
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
fromInteger :: Integer -> WGPUSamplerBindingType
$cfromInteger :: Integer -> WGPUSamplerBindingType
signum :: WGPUSamplerBindingType -> WGPUSamplerBindingType
$csignum :: WGPUSamplerBindingType -> WGPUSamplerBindingType
abs :: WGPUSamplerBindingType -> WGPUSamplerBindingType
$cabs :: WGPUSamplerBindingType -> WGPUSamplerBindingType
negate :: WGPUSamplerBindingType -> WGPUSamplerBindingType
$cnegate :: WGPUSamplerBindingType -> WGPUSamplerBindingType
* :: WGPUSamplerBindingType
-> WGPUSamplerBindingType -> WGPUSamplerBindingType
$c* :: WGPUSamplerBindingType
-> WGPUSamplerBindingType -> WGPUSamplerBindingType
- :: WGPUSamplerBindingType
-> WGPUSamplerBindingType -> WGPUSamplerBindingType
$c- :: WGPUSamplerBindingType
-> WGPUSamplerBindingType -> WGPUSamplerBindingType
+ :: WGPUSamplerBindingType
-> WGPUSamplerBindingType -> WGPUSamplerBindingType
$c+ :: WGPUSamplerBindingType
-> WGPUSamplerBindingType -> WGPUSamplerBindingType
Num, Ptr b -> Int -> IO WGPUSamplerBindingType
Ptr b -> Int -> WGPUSamplerBindingType -> IO ()
Ptr WGPUSamplerBindingType -> IO WGPUSamplerBindingType
Ptr WGPUSamplerBindingType -> Int -> IO WGPUSamplerBindingType
Ptr WGPUSamplerBindingType
-> Int -> WGPUSamplerBindingType -> IO ()
Ptr WGPUSamplerBindingType -> WGPUSamplerBindingType -> IO ()
WGPUSamplerBindingType -> Int
(WGPUSamplerBindingType -> Int)
-> (WGPUSamplerBindingType -> Int)
-> (Ptr WGPUSamplerBindingType -> Int -> IO WGPUSamplerBindingType)
-> (Ptr WGPUSamplerBindingType
    -> Int -> WGPUSamplerBindingType -> IO ())
-> (forall b. Ptr b -> Int -> IO WGPUSamplerBindingType)
-> (forall b. Ptr b -> Int -> WGPUSamplerBindingType -> IO ())
-> (Ptr WGPUSamplerBindingType -> IO WGPUSamplerBindingType)
-> (Ptr WGPUSamplerBindingType -> WGPUSamplerBindingType -> IO ())
-> Storable WGPUSamplerBindingType
forall b. Ptr b -> Int -> IO WGPUSamplerBindingType
forall b. Ptr b -> Int -> WGPUSamplerBindingType -> 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 WGPUSamplerBindingType -> WGPUSamplerBindingType -> IO ()
$cpoke :: Ptr WGPUSamplerBindingType -> WGPUSamplerBindingType -> IO ()
peek :: Ptr WGPUSamplerBindingType -> IO WGPUSamplerBindingType
$cpeek :: Ptr WGPUSamplerBindingType -> IO WGPUSamplerBindingType
pokeByteOff :: Ptr b -> Int -> WGPUSamplerBindingType -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> WGPUSamplerBindingType -> IO ()
peekByteOff :: Ptr b -> Int -> IO WGPUSamplerBindingType
$cpeekByteOff :: forall b. Ptr b -> Int -> IO WGPUSamplerBindingType
pokeElemOff :: Ptr WGPUSamplerBindingType
-> Int -> WGPUSamplerBindingType -> IO ()
$cpokeElemOff :: Ptr WGPUSamplerBindingType
-> Int -> WGPUSamplerBindingType -> IO ()
peekElemOff :: Ptr WGPUSamplerBindingType -> Int -> IO WGPUSamplerBindingType
$cpeekElemOff :: Ptr WGPUSamplerBindingType -> Int -> IO WGPUSamplerBindingType
alignment :: WGPUSamplerBindingType -> Int
$calignment :: WGPUSamplerBindingType -> Int
sizeOf :: WGPUSamplerBindingType -> Int
$csizeOf :: WGPUSamplerBindingType -> 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 Filtering :: forall a. (Eq a, Num a) => a
pattern $bFiltering :: a
$mFiltering :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
Filtering = 0x00000001

pattern NonFiltering :: forall a. (Eq a, Num a) => a
pattern $bNonFiltering :: a
$mNonFiltering :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NonFiltering = 0x00000002

pattern Comparison :: forall a. (Eq a, Num a) => a
pattern $bComparison :: a
$mComparison :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
Comparison = 0x00000003