packages feed

polysemy-0.1.2.1: src/Polysemy/Internal/NonDet.hs

{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveFunctor  #-}
{-# LANGUAGE NoPolyKinds    #-}

{-# OPTIONS_HADDOCK not-home #-}

module Polysemy.Internal.NonDet where

------------------------------------------------------------------------------
-- | An effect corresponding to the 'Control.Applicative.Alternative' typeclass.
data NonDet (m :: * -> *) a
  = Empty
  | Choose (Bool -> a)