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

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

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

pattern WriteOnly :: forall a. (Eq a, Num a) => a
pattern $bWriteOnly :: a
$mWriteOnly :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
WriteOnly = 0x00000002