| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
PlutusTx.Maybe
Documentation
The Maybe type encapsulates an optional value. A value of type
either contains a value of type Maybe aa (represented as ),
or it is empty (represented as Just aNothing). Using Maybe is a good way to
deal with errors or exceptional cases without resorting to drastic
measures such as error.
The Maybe type is also a monad. It is a simple kind of error
monad, where all errors are represented by Nothing. A richer
error monad can be built using the Either type.
Instances
| FromJSON1 Maybe | |
Defined in Data.Aeson.Types.FromJSON Methods liftParseJSON ∷ Maybe a → (Value → Parser a) → (Value → Parser [a]) → Value → Parser (Maybe a) liftParseJSONList ∷ Maybe a → (Value → Parser a) → (Value → Parser [a]) → Value → Parser [Maybe a] liftOmittedField ∷ Maybe a → Maybe (Maybe a) | |
| ToJSON1 Maybe | |
Defined in Data.Aeson.Types.ToJSON Methods liftToJSON ∷ (a → Bool) → (a → Value) → ([a] → Value) → Maybe a → Value liftToJSONList ∷ (a → Bool) → (a → Value) → ([a] → Value) → [Maybe a] → Value liftToEncoding ∷ (a → Bool) → (a → Encoding) → ([a] → Encoding) → Maybe a → Encoding liftToEncodingList ∷ (a → Bool) → (a → Encoding) → ([a] → Encoding) → [Maybe a] → Encoding liftOmitField ∷ (a → Bool) → Maybe a → Bool | |
| MonadFail Maybe | Since: base-4.9.0.0 |
| Foldable Maybe | Since: base-2.1 |
Defined in Data.Foldable Methods fold ∷ Monoid m ⇒ Maybe m → m Source # foldMap ∷ Monoid m ⇒ (a → m) → Maybe a → m Source # foldMap' ∷ Monoid m ⇒ (a → m) → Maybe a → m Source # foldr ∷ (a → b → b) → b → Maybe a → b Source # foldr' ∷ (a → b → b) → b → Maybe a → b Source # foldl ∷ (b → a → b) → b → Maybe a → b Source # foldl' ∷ (b → a → b) → b → Maybe a → b Source # foldr1 ∷ (a → a → a) → Maybe a → a Source # foldl1 ∷ (a → a → a) → Maybe a → a Source # toList ∷ Maybe a → [a] Source # null ∷ Maybe a → Bool Source # length ∷ Maybe a → Int Source # elem ∷ Eq a ⇒ a → Maybe a → Bool Source # maximum ∷ Ord a ⇒ Maybe a → a Source # minimum ∷ Ord a ⇒ Maybe a → a Source # | |
| Traversable Maybe | Since: base-2.1 |
| Alternative Maybe | Picks the leftmost Since: base-2.1 |
| Applicative Maybe | Since: base-2.1 |
| Functor Maybe | Since: base-2.1 |
| Monad Maybe | Since: base-2.1 |
| MonadPlus Maybe | Picks the leftmost Since: base-2.1 |
| MonadFailure Maybe | |
Defined in Basement.Monad Associated Types type Failure Maybe | |
| NFData1 Maybe | Since: deepseq-1.4.3.0 |
Defined in Control.DeepSeq | |
| Hashable1 Maybe | |
Defined in Data.Hashable.Class | |
| Applicative Maybe Source # | |
| Foldable Maybe Source # | |
Defined in PlutusTx.Foldable | |
| Functor Maybe Source # | |
| Traversable Maybe Source # | |
Defined in PlutusTx.Traversable | |
| Generic1 Maybe | |
| FoldableWithIndex () Maybe | |
| FunctorWithIndex () Maybe | |
| TraversableWithIndex () Maybe | |
Defined in WithIndex Methods itraverse ∷ Applicative f ⇒ (() → a → f b) → Maybe a → f (Maybe b) | |
| MonadBaseControl Maybe Maybe | |
Defined in Control.Monad.Trans.Control Associated Types type StM Maybe a | |
| MonadError () Maybe | Since: mtl-2.2.2 |
Defined in Control.Monad.Error.Class | |
| (Typeable DefaultUni a, Lift DefaultUni a) ⇒ Lift DefaultUni (Maybe a) Source # | |
Defined in PlutusTx.Lift.Instances Methods lift ∷ Maybe a → RTCompile DefaultUni fun (Term TyName Name DefaultUni fun ()) Source # | |
| PrettyBy config a ⇒ DefaultPrettyBy config (Maybe a) | |
Defined in Text.PrettyBy.Internal Methods defaultPrettyBy ∷ config → Maybe a → Doc ann Source # defaultPrettyListBy ∷ config → [Maybe a] → Doc ann Source # | |
| PrettyDefaultBy config (Maybe a) ⇒ PrettyBy config (Maybe a) | By default a
|
| Lift a ⇒ Lift (Maybe a ∷ Type) | |
| FromJSON a ⇒ FromJSON (Maybe a) | |
Defined in Data.Aeson.Types.FromJSON Methods parseJSON ∷ Value → Parser (Maybe a) parseJSONList ∷ Value → Parser [Maybe a] omittedField ∷ Maybe (Maybe a) | |
| ToJSON (CekMachineCostsBase Maybe) | |
Defined in UntypedPlutusCore.Evaluation.Machine.Cek.CekMachineCosts Methods toJSON ∷ CekMachineCostsBase Maybe → Value toEncoding ∷ CekMachineCostsBase Maybe → Encoding toJSONList ∷ [CekMachineCostsBase Maybe] → Value toEncodingList ∷ [CekMachineCostsBase Maybe] → Encoding | |
| ToJSON a ⇒ ToJSON (Maybe a) | |
Defined in Data.Aeson.Types.ToJSON Methods toEncoding ∷ Maybe a → Encoding toJSONList ∷ [Maybe a] → Value toEncodingList ∷ [Maybe a] → Encoding | |
| Graph g ⇒ Graph (Maybe g) | |
| Preorder g ⇒ Preorder (Maybe g) | |
Defined in Algebra.Graph.Class | |
| Reflexive g ⇒ Reflexive (Maybe g) | |
Defined in Algebra.Graph.Class | |
| Transitive g ⇒ Transitive (Maybe g) | |
Defined in Algebra.Graph.Class | |
| Undirected g ⇒ Undirected (Maybe g) | |
Defined in Algebra.Graph.Class | |
| Data a ⇒ Data (Maybe a) | Since: base-4.0.0.0 |
Defined in Data.Data Methods gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → Maybe a → c (Maybe a) Source # gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c (Maybe a) Source # toConstr ∷ Maybe a → Constr Source # dataTypeOf ∷ Maybe a → DataType Source # dataCast1 ∷ Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c (Maybe a)) Source # dataCast2 ∷ Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c (Maybe a)) Source # gmapT ∷ (∀ b. Data b ⇒ b → b) → Maybe a → Maybe a Source # gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → Maybe a → r Source # gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → Maybe a → r Source # gmapQ ∷ (∀ d. Data d ⇒ d → u) → Maybe a → [u] Source # gmapQi ∷ Int → (∀ d. Data d ⇒ d → u) → Maybe a → u Source # gmapM ∷ Monad m ⇒ (∀ d. Data d ⇒ d → m d) → Maybe a → m (Maybe a) Source # gmapMp ∷ MonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Maybe a → m (Maybe a) Source # gmapMo ∷ MonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Maybe a → m (Maybe a) Source # | |
| Semigroup a ⇒ Monoid (Maybe a) | Lift a semigroup into Since 4.11.0: constraint on inner Since: base-2.1 |
| Semigroup a ⇒ Semigroup (Maybe a) | Since: base-4.9.0.0 |
| Generic (Maybe a) | |
| SingKind a ⇒ SingKind (Maybe a) | Since: base-4.9.0.0 |
Defined in GHC.Generics Associated Types type DemoteRep (Maybe a) | |
| Read a ⇒ Read (Maybe a) | Since: base-2.1 |
| Show a ⇒ Show (Maybe a) | Since: base-2.1 |
| Default (Maybe a) | |
Defined in Data.Default.Internal | |
| NFData a ⇒ NFData (Maybe a) | |
Defined in Control.DeepSeq | |
| Buildable a ⇒ Buildable (Maybe a) | |
| Eq a ⇒ Eq (Maybe a) | Since: base-2.1 |
| Ord a ⇒ Ord (Maybe a) | Since: base-2.1 |
Defined in GHC.Maybe | |
| Hashable a ⇒ Hashable (Maybe a) | |
| At (Maybe a) | |
| Ixed (Maybe a) | |
Defined in Control.Lens.At | |
| AsEmpty (Maybe a) | |
Defined in Control.Lens.Empty | |
| MonoFoldable (Maybe a) | |
Defined in Data.MonoTraversable Methods ofoldMap ∷ Monoid m ⇒ (Element (Maybe a) → m) → Maybe a → m Source # ofoldr ∷ (Element (Maybe a) → b → b) → b → Maybe a → b Source # ofoldl' ∷ (a0 → Element (Maybe a) → a0) → a0 → Maybe a → a0 Source # otoList ∷ Maybe a → [Element (Maybe a)] Source # oall ∷ (Element (Maybe a) → Bool) → Maybe a → Bool Source # oany ∷ (Element (Maybe a) → Bool) → Maybe a → Bool Source # onull ∷ Maybe a → Bool Source # olength ∷ Maybe a → Int Source # olength64 ∷ Maybe a → Int64 Source # ocompareLength ∷ Integral i ⇒ Maybe a → i → Ordering Source # otraverse_ ∷ Applicative f ⇒ (Element (Maybe a) → f b) → Maybe a → f () Source # ofor_ ∷ Applicative f ⇒ Maybe a → (Element (Maybe a) → f b) → f () Source # omapM_ ∷ Applicative m ⇒ (Element (Maybe a) → m ()) → Maybe a → m () Source # oforM_ ∷ Applicative m ⇒ Maybe a → (Element (Maybe a) → m ()) → m () Source # ofoldlM ∷ Monad m ⇒ (a0 → Element (Maybe a) → m a0) → a0 → Maybe a → m a0 Source # ofoldMap1Ex ∷ Semigroup m ⇒ (Element (Maybe a) → m) → Maybe a → m Source # ofoldr1Ex ∷ (Element (Maybe a) → Element (Maybe a) → Element (Maybe a)) → Maybe a → Element (Maybe a) Source # ofoldl1Ex' ∷ (Element (Maybe a) → Element (Maybe a) → Element (Maybe a)) → Maybe a → Element (Maybe a) Source # headEx ∷ Maybe a → Element (Maybe a) Source # lastEx ∷ Maybe a → Element (Maybe a) Source # unsafeHead ∷ Maybe a → Element (Maybe a) Source # unsafeLast ∷ Maybe a → Element (Maybe a) Source # maximumByEx ∷ (Element (Maybe a) → Element (Maybe a) → Ordering) → Maybe a → Element (Maybe a) Source # minimumByEx ∷ (Element (Maybe a) → Element (Maybe a) → Ordering) → Maybe a → Element (Maybe a) Source # | |
| MonoFunctor (Maybe a) | |
| MonoPointed (Maybe a) | |
| MonoTraversable (Maybe a) | |
| HasBlueprintDefinition a ⇒ HasBlueprintDefinition (Maybe a) Source # | |
Defined in PlutusTx.Blueprint.Definition.Unroll Methods | |
| Eq a ⇒ Eq (Maybe a) Source # | |
| FromData a ⇒ FromData (Maybe a) Source # | |
Defined in PlutusTx.IsData.Instances Methods fromBuiltinData ∷ BuiltinData → Maybe (Maybe a) Source # | |
| ToData a ⇒ ToData (Maybe a) Source # | |
Defined in PlutusTx.IsData.Instances Methods toBuiltinData ∷ Maybe a → BuiltinData Source # | |
| UnsafeFromData a ⇒ UnsafeFromData (Maybe a) Source # | |
Defined in PlutusTx.IsData.Instances Methods | |
| Semigroup a ⇒ Monoid (Maybe a) Source # | |
Defined in PlutusTx.Monoid | |
| Ord a ⇒ Ord (Maybe a) Source # | |
Defined in PlutusTx.Ord | |
| Semigroup a ⇒ Semigroup (Maybe a) Source # | |
| Show a ⇒ Show (Maybe a) Source # | |
| Pretty a ⇒ Pretty (Maybe a) | Ignore
|
| (Finite a, Uniform a) ⇒ Uniform (Maybe a) | |
Defined in System.Random.Internal Methods uniformM ∷ StatefulGen g m ⇒ g → m (Maybe a) Source # | |
| Corecursive (Maybe a) | |
Defined in Data.Functor.Foldable Methods embed ∷ Base (Maybe a) (Maybe a) → Maybe a Source # ana ∷ (a0 → Base (Maybe a) a0) → a0 → Maybe a Source # apo ∷ (a0 → Base (Maybe a) (Either (Maybe a) a0)) → a0 → Maybe a Source # postpro ∷ Recursive (Maybe a) ⇒ (∀ b. Base (Maybe a) b → Base (Maybe a) b) → (a0 → Base (Maybe a) a0) → a0 → Maybe a Source # gpostpro ∷ (Recursive (Maybe a), Monad m) ⇒ (∀ b. m (Base (Maybe a) b) → Base (Maybe a) (m b)) → (∀ c. Base (Maybe a) c → Base (Maybe a) c) → (a0 → Base (Maybe a) (m a0)) → a0 → Maybe a Source # | |
| Recursive (Maybe a) | |
Defined in Data.Functor.Foldable Methods project ∷ Maybe a → Base (Maybe a) (Maybe a) Source # cata ∷ (Base (Maybe a) a0 → a0) → Maybe a → a0 Source # para ∷ (Base (Maybe a) (Maybe a, a0) → a0) → Maybe a → a0 Source # gpara ∷ (Corecursive (Maybe a), Comonad w) ⇒ (∀ b. Base (Maybe a) (w b) → w (Base (Maybe a) b)) → (Base (Maybe a) (EnvT (Maybe a) w a0) → a0) → Maybe a → a0 Source # prepro ∷ Corecursive (Maybe a) ⇒ (∀ b. Base (Maybe a) b → Base (Maybe a) b) → (Base (Maybe a) a0 → a0) → Maybe a → a0 Source # gprepro ∷ (Corecursive (Maybe a), Comonad w) ⇒ (∀ b. Base (Maybe a) (w b) → w (Base (Maybe a) b)) → (∀ c. Base (Maybe a) c → Base (Maybe a) c) → (Base (Maybe a) (w a0) → a0) → Maybe a → a0 Source # | |
| Serialise a ⇒ Serialise (Maybe a) | Since: serialise-0.2.0.0 |
| Pretty a ⇒ Pretty (Maybe a) | |
Defined in Text.PrettyPrint.Annotated.WL | |
| (HasBlueprintDefinition a, HasSchemaDefinition a referencedTypes) ⇒ HasBlueprintSchema (Maybe a) referencedTypes Source # | |
Defined in PlutusTx.IsData.Instances | |
| SingI ('Nothing ∷ Maybe a) | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
| Each (Maybe a) (Maybe b) a b | |
Defined in Control.Lens.Each | |
| Each (Maybe a) (Maybe b) a b | |
| SingI a2 ⇒ SingI ('Just a2 ∷ Maybe a1) | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
| Typeable DefaultUni Maybe Source # | |
Defined in PlutusTx.Lift.Instances Methods typeRep ∷ Proxy Maybe → RTCompile DefaultUni fun (Type TyName DefaultUni ()) Source # | |
| type Failure Maybe | |
Defined in Basement.Monad type Failure Maybe = () | |
| type Rep1 Maybe | Since: base-4.6.0.0 |
| type StM Maybe a | |
Defined in Control.Monad.Trans.Control type StM Maybe a = a | |
| type Vertex (Maybe g) | |
Defined in Algebra.Graph.Class | |
| type DemoteRep (Maybe a) | |
Defined in GHC.Generics | |
| type Rep (Maybe a) | Since: base-4.6.0.0 |
Defined in GHC.Generics | |
| data Sing (b ∷ Maybe a) | |
| type Index (Maybe a) | |
Defined in Control.Lens.At type Index (Maybe a) = () | |
| type IxValue (Maybe a) | |
Defined in Control.Lens.At type IxValue (Maybe a) = a | |
| type Element (Maybe a) | |
Defined in Data.MonoTraversable | |
| type Unroll (Maybe a) Source # | |
| type Base (Maybe a) | Example boring stub for non-recursive data types |
isJust ∷ Maybe a → Bool Source #
Check if a Maybe a is Just a
>>>isJust NothingFalse>>>isJust (Just "plutus")True
isNothing ∷ Maybe a → Bool Source #
Check if a Maybe a is Nothing
>>>isNothing NothingTrue>>>isNothing (Just "plutus")False