module Memfd.OnExecType where

import Prelude (Eq, Ord, Enum, Bounded, Show)

data OnExec =
    CloseOnExec
      -- ^ The file descriptor will automatically be closed during a successful execve
  | RemainOpenOnExec
  deriving stock (OnExec -> OnExec -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: OnExec -> OnExec -> Bool
$c/= :: OnExec -> OnExec -> Bool
== :: OnExec -> OnExec -> Bool
$c== :: OnExec -> OnExec -> Bool
Eq, Eq OnExec
OnExec -> OnExec -> Bool
OnExec -> OnExec -> Ordering
OnExec -> OnExec -> OnExec
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: OnExec -> OnExec -> OnExec
$cmin :: OnExec -> OnExec -> OnExec
max :: OnExec -> OnExec -> OnExec
$cmax :: OnExec -> OnExec -> OnExec
>= :: OnExec -> OnExec -> Bool
$c>= :: OnExec -> OnExec -> Bool
> :: OnExec -> OnExec -> Bool
$c> :: OnExec -> OnExec -> Bool
<= :: OnExec -> OnExec -> Bool
$c<= :: OnExec -> OnExec -> Bool
< :: OnExec -> OnExec -> Bool
$c< :: OnExec -> OnExec -> Bool
compare :: OnExec -> OnExec -> Ordering
$ccompare :: OnExec -> OnExec -> Ordering
Ord, Int -> OnExec
OnExec -> Int
OnExec -> [OnExec]
OnExec -> OnExec
OnExec -> OnExec -> [OnExec]
OnExec -> OnExec -> OnExec -> [OnExec]
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
enumFromThenTo :: OnExec -> OnExec -> OnExec -> [OnExec]
$cenumFromThenTo :: OnExec -> OnExec -> OnExec -> [OnExec]
enumFromTo :: OnExec -> OnExec -> [OnExec]
$cenumFromTo :: OnExec -> OnExec -> [OnExec]
enumFromThen :: OnExec -> OnExec -> [OnExec]
$cenumFromThen :: OnExec -> OnExec -> [OnExec]
enumFrom :: OnExec -> [OnExec]
$cenumFrom :: OnExec -> [OnExec]
fromEnum :: OnExec -> Int
$cfromEnum :: OnExec -> Int
toEnum :: Int -> OnExec
$ctoEnum :: Int -> OnExec
pred :: OnExec -> OnExec
$cpred :: OnExec -> OnExec
succ :: OnExec -> OnExec
$csucc :: OnExec -> OnExec
Enum, OnExec
forall a. a -> a -> Bounded a
maxBound :: OnExec
$cmaxBound :: OnExec
minBound :: OnExec
$cminBound :: OnExec
Bounded, Int -> OnExec -> ShowS
[OnExec] -> ShowS
OnExec -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [OnExec] -> ShowS
$cshowList :: [OnExec] -> ShowS
show :: OnExec -> String
$cshow :: OnExec -> String
showsPrec :: Int -> OnExec -> ShowS
$cshowsPrec :: Int -> OnExec -> ShowS
Show)