Moduleplutus-tx-1.70.0.0
PlutusTx.Maybe
- 1 type
- 5 values
- Packageplutus-tx-1.70.0.0
- Exports6
- LicenceApache-2.0
- SourceMaybe.hs
The Maybe type encapsulates an optional value. A value of type
Maybe a either contains a value of type a (represented as Just a),
or it is empty (represented as Nothing). 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.
Instances163Monad, MonadFix, MonadFail, Alternative, MonadPlus, MonadZip, …
Monad MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.BaseFunctor MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.BaseMonadFix MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.Control.Monad.FixMonadFail MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.Control.Monad.FailApplicative MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.BaseFoldable MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.Data.FoldableTraversable MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.Data.TraversableAlternative MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.BaseMonadPlus MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.BaseMonadZip MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.Control.Monad.ZipEq1 MaybeDefined in base-4.22.0.0 · Data.Functor.ClassesOrd1 MaybeDefined in base-4.22.0.0 · Data.Functor.ClassesRead1 MaybeDefined in base-4.22.0.0 · Data.Functor.ClassesShow1 MaybeDefined in base-4.22.0.0 · Data.Functor.ClassesNFData1 MaybeDefined in deepseq-1.5.1.0 · Control.DeepSeqMonadThrow MaybeDefined in exceptions-0.10.11 · Control.Monad.CatchArbitrary1 MaybeDefined in QuickCheck-2.18.0.0 · Test.QuickCheck.ArbitraryHashable1 MaybeDefined in hashable-1.5.1.0 · Data.Hashable.ClassAlt MaybeDefined in semigroupoids-6.0.2 · Data.Functor.AltApply MaybeDefined in semigroupoids-6.0.2 · Data.Functor.Bind.ClassBind MaybeDefined in semigroupoids-6.0.2 · Data.Functor.Bind.ClassExtend MaybeDefined in semigroupoids-6.0.2 · Data.Functor.ExtendPlus MaybeDefined in semigroupoids-6.0.2 · Data.Functor.PlusAlign MaybeDefined in semialign-1.4 · Data.Semialign.InternalSemialign MaybeDefined in semialign-1.4 · Data.Semialign.InternalUnalign MaybeDefined in semialign-1.4 · Data.Semialign.InternalCrosswalk MaybeDefined in semialign-1.4 · Data.CrosswalkRepeat MaybeDefined in semialign-1.4 · Data.Semialign.InternalUnzip MaybeDefined in semialign-1.4 · Data.Semialign.InternalZip MaybeDefined in semialign-1.4 · Data.Semialign.InternalFilterable MaybeDefined in witherable-0.5 · WitherableWitherable MaybeDefined in witherable-0.5 · WitherableFromJSON1 MaybeDefined in aeson-2.2.5.1 · Data.Aeson.Types.FromJSONToJSON1 MaybeDefined in aeson-2.2.5.1 · Data.Aeson.Types.ToJSONMonadFailure MaybeDefined in basement-0.0.16 · Basement.MonadInvariant MaybeDefined in invariant-0.6.5 · Data.Functor.InvariantApplicative MaybeDefined in plutus-tx-1.70.0.0 · PlutusTx.ApplicativeFunctor MaybeDefined in plutus-tx-1.70.0.0 · PlutusTx.FunctorFoldable MaybeDefined in plutus-tx-1.70.0.0 · PlutusTx.FoldableTraversable MaybeDefined in plutus-tx-1.70.0.0 · PlutusTx.TraversableGeneric1 MaybeDefined in ghc-internal-9.1401.0 · GHC.Internal.GenericsMonadError () MaybeDefined in mtl-2.3.1 · Control.Monad.Error.ClassFoldableWithIndex () MaybeDefined in indexed-traversable-0.1.5 · WithIndexFunctorWithIndex () MaybeDefined in indexed-traversable-0.1.5 · WithIndexTraversableWithIndex () MaybeDefined in indexed-traversable-0.1.5 · WithIndexMonadBase Maybe MaybeDefined in transformers-base-0.4.6.1 · Control.Monad.BaseComonadCofree Maybe NonEmptyDefined in free-5.2 · Control.Comonad.Cofree.ClassRepeatWithIndex () MaybeDefined in semialign-1.4 · Data.Semialign.InternalSemialignWithIndex () MaybeDefined in semialign-1.4 · Data.Semialign.InternalZipWithIndex () MaybeDefined in semialign-1.4 · Data.Semialign.InternalFilterableWithIndex () MaybeDefined in witherable-0.5 · WitherableWitherableWithIndex () MaybeDefined in witherable-0.5 · WitherableMonadBaseControl Maybe MaybeDefined in monad-control-1.0.3.1 · Control.Monad.Trans.ControlLifting Binary MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLifting NFData MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLifting Monoid MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLifting Semigroup MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLifting Eq MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLifting Ord MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLifting Read MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLifting Show MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLifting Hashable MaybeDefined in constraints-0.14.4 · Data.Constraint.LiftingLift a => Lift (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.TH.LiftPrettyAnn ann a => PrettyAnn ann (Maybe a)Defined in prettyprinter-1.7.2 · Prettyprinter.Internal() :=> Alternative MaybeDefined in constraints-0.14.4 · Data.Constraint() :=> Applicative MaybeDefined in constraints-0.14.4 · Data.Constraint() :=> Functor MaybeDefined in constraints-0.14.4 · Data.Constraint() :=> MonadPlus MaybeDefined in constraints-0.14.4 · Data.ConstraintPrettyDefaultBy config (Maybe a) => PrettyBy config (Maybe a)Defined in prettyprinter-configurable-1.36.0.0 · Text.PrettyBy.InternalBy default a
[Maybe a]is converted to[a]first and only then pretty-printed.Example4 expressions braces $ prettyBy () (Just True){True}braces $ prettyBy () (Nothing :: Maybe Bool){}prettyBy () [Just False, Nothing, Just True][False, True]prettyBy () [Nothing, Just 'a', Just 'b', Nothing, Just 'c']abc
PrettyBy config a => DefaultPrettyBy config (Maybe a)Defined in prettyprinter-configurable-1.36.0.0 · Text.PrettyBy.Internal(Typeable DefaultUni a, Lift DefaultUni a) => Lift DefaultUni (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.Lift.Instances · orphanEq a => Eq (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.MaybeData a => Data (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.Data.DataOrd a => Ord (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.MaybeRead a => Read (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.ReadShow a => Show (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.ShowGeneric (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.GenericsSemigroup a => Semigroup (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.BaseSemigroup a => Monoid (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.BaseLift a semigroup into Maybe forming a Monoid according to http://en.wikipedia.org/wiki/Monoid: "Any semigroup
Smay be turned into a monoid simply by adjoining an elementenot inSand defininge*e = eande*s = s = s*efor alls ∈ S."Since 4.11.0: constraint on inner
avalue generalised from Monoid to Semigroup.SingKind a => SingKind (Maybe a)Defined in ghc-internal-9.1401.0 · GHC.Internal.GenericsNFData a => NFData (Maybe a)Defined in deepseq-1.5.1.0 · Control.DeepSeqPretty a => Pretty (Maybe a)Defined in pretty-1.1.3.6 · Text.PrettyPrint.Annotated.HughesPJClassPretty a => Pretty (Maybe a)Defined in pretty-1.1.3.6 · Text.PrettyPrint.HughesPJClassBinary a => Binary (Maybe a)Defined in binary-0.8.9.3 · Data.Binary.ClassFinite a => Finite (Maybe a)Defined in random-1.3.1 · System.Random.GFinite(Finite a, Uniform a) => Uniform (Maybe a)Defined in random-1.3.1 · System.Random.InternalArbitrary a => Arbitrary (Maybe a)Defined in QuickCheck-2.18.0.0 · Test.QuickCheck.ArbitraryCoArbitrary a => CoArbitrary (Maybe a)Defined in QuickCheck-2.18.0.0 · Test.QuickCheck.ArbitraryFunction a => Function (Maybe a)Defined in QuickCheck-2.18.0.0 · Test.QuickCheck.FunctionTestable prop => Testable (Maybe prop)Defined in QuickCheck-2.18.0.0 · Test.QuickCheck.PropertyPretty a => Pretty (Maybe a)Defined in prettyprinter-1.7.2 · Prettyprinter.InternalHashable a => Hashable (Maybe a)Defined in hashable-1.5.1.0 · Data.Hashable.ClassFromJSON a => FromJSON (Maybe a)Defined in aeson-2.2.5.1 · Data.Aeson.Types.FromJSONToJSON (CekMachineCostsBase Maybe)Defined in plutus-core-1.70.0.0 · UntypedPlutusCore.Evaluation.Machine.Cek.CekMachineCostsToJSON a => ToJSON (Maybe a)Defined in aeson-2.2.5.1 · Data.Aeson.Types.ToJSONGraph g => Graph (Maybe g)Defined in algebraic-graphs-0.8 · Algebra.Graph.ClassPreorder g => Preorder (Maybe g)Defined in algebraic-graphs-0.8 · Algebra.Graph.ClassReflexive g => Reflexive (Maybe g)Defined in algebraic-graphs-0.8 · Algebra.Graph.ClassTransitive g => Transitive (Maybe g)Defined in algebraic-graphs-0.8 · Algebra.Graph.ClassUndirected g => Undirected (Maybe g)Defined in algebraic-graphs-0.8 · Algebra.Graph.ClassDefault (Maybe a)Defined in data-default-0.8.0.2 · Data.Default.InternalSerialise a => Serialise (Maybe a)Defined in serialise-0.2.6.1 · Codec.Serialise.ClassNormalForm a => NormalForm (Maybe a)Defined in basement-0.0.16 · Basement.NormalFormAbsurd a => Boring (Maybe a)Defined in boring-0.2.2.1 · Data.BoringMaybe a = a + 1,0 + 1 = 1.Finite a => Finite (Maybe a)Defined in universe-base-1.1.4 · Data.Universe.ClassUniverse a => Universe (Maybe a)Defined in universe-base-1.1.4 · Data.Universe.ClassMemPack a => MemPack (Maybe a)Defined in mempack-0.2.1.0 · Data.MemPackNoThunks a => NoThunks (Maybe a)Defined in nothunks-0.3.1 · NoThunks.ClassBuildable a => Buildable (Maybe a)Defined in formatting-7.2.0 · Formatting.BuildableCorecursive (Maybe a)Defined in recursion-schemes-5.2.3 · Data.Functor.FoldableRecursive (Maybe a)Defined in recursion-schemes-5.2.3 · Data.Functor.FoldableFromCBOR a => FromCBOR (Maybe a)Defined in cardano-binary-1.9.1.0 · Cardano.Binary.FromCBORToCBOR a => ToCBOR (Maybe a)Defined in cardano-binary-1.9.1.0 · Cardano.Binary.ToCBORHeapWords a => HeapWords (Maybe a)Defined in heapwords-0.1.0.2 · Cardano.HeapWordsAt (Maybe a)Defined in lens-5.3.6 · Control.Lens.AtIxed (Maybe a)Defined in lens-5.3.6 · Control.Lens.AtAsEmpty (Maybe a)Defined in lens-5.3.6 · Control.Lens.EmptyHasTypeVars t => HasTypeVars (Maybe t)Defined in lens-5.3.6 · Language.Haskell.TH.LensFromField a => FromField (Maybe a)Defined in cassava-0.5.4.1 · Data.Csv.ConversionToField a => ToField (Maybe a)Defined in cassava-0.5.4.1 · Data.Csv.ConversionPrettyVal a => PrettyVal (Maybe a)Defined in pretty-show-1.10 · Text.Show.PrettyValPretty a => Pretty (Maybe a)Defined in wl-pprint-annotated-0.1.0.2 · Text.PrettyPrint.Annotated.WLMonoFoldable (Maybe a)Defined in mono-traversable-1.0.21.0 · Data.MonoTraversableMonoFunctor (Maybe a)Defined in mono-traversable-1.0.21.0 · Data.MonoTraversableMonoTraversable (Maybe a)Defined in mono-traversable-1.0.21.0 · Data.MonoTraversableMonoPointed (Maybe a)Defined in mono-traversable-1.0.21.0 · Data.MonoTraversableFromData a => FromData (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.IsData.Instances · orphanToData a => ToData (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.IsData.Instances · orphanUnsafeFromData a => UnsafeFromData (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.IsData.Instances · orphanSemigroup a => Monoid (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.MonoidHasBlueprintDefinition a => HasBlueprintDefinition (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.Blueprint.Definition.UnrollSemigroup a => Semigroup (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.SemigroupEq a => Eq (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.Eq · orphanOrd a => Ord (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.Ord · orphanShow a => Show (Maybe a)Defined in plutus-tx-1.70.0.0 · PlutusTx.Show · orphan(HasBlueprintDefinition a, HasSchemaDefinition a referencedTypes) => HasBlueprintSchema (Maybe a) referencedTypesDefined in plutus-tx-1.70.0.0 · PlutusTx.IsData.Instances · orphanSingI 'NothingDefined in ghc-internal-9.1401.0 · GHC.Internal.GenericsStrict (Maybe a) (Maybe a)Defined in strict-0.5.1 · Data.Strict.ClassesMonoid a :=> Monoid (Maybe a)Defined in constraints-0.14.4 · Data.ConstraintSemigroup a :=> Semigroup (Maybe a)Defined in constraints-0.14.4 · Data.ConstraintEq a :=> Eq (Maybe a)Defined in constraints-0.14.4 · Data.ConstraintOrd a :=> Ord (Maybe a)Defined in constraints-0.14.4 · Data.ConstraintRead a :=> Read (Maybe a)Defined in constraints-0.14.4 · Data.ConstraintShow a :=> Show (Maybe a)Defined in constraints-0.14.4 · Data.ConstraintNewtype (First a) (Maybe a)Defined in newtype-0.2.2.1 · Control.NewtypeNewtype (Last a) (Maybe a)Defined in newtype-0.2.2.1 · Control.NewtypeEach (Maybe a) (Maybe b) a bDefined in microlens-0.4.14.0 · Lens.Micro.InternalEach (Maybe a) (Maybe b) a bDefined in lens-5.3.6 · Control.Lens.EachSingI a2 => SingI ('Just a2)Defined in ghc-internal-9.1401.0 · GHC.Internal.GenericsFrom (Maybe a) (Either () a)Defined in basement-0.0.16 · Basement.FromTypeable DefaultUni MaybeDefined in plutus-tx-1.70.0.0 · PlutusTx.Lift.Instances · orphantype Rep (Maybe a) = D1 ('MetaDataDefined in ghc-internal-9.1401.0 · GHC.Internal.Generics"Maybe"
"GHC.Internal.Maybe"
"ghc-internal"
'False) (C1 ('MetaCons"Nothing"
'PrefixI 'False) U1 :+: C1 ('MetaCons"Just"
'PrefixI 'False) (S1 ('MetaSel 'Nothing 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))type Rep1 Maybe = D1 ('MetaDataDefined in ghc-internal-9.1401.0 · GHC.Internal.Generics"Maybe"
"GHC.Internal.Maybe"
"ghc-internal"
'False) (C1 ('MetaCons"Nothing"
'PrefixI 'False) U1 :+: C1 ('MetaCons"Just"
'PrefixI 'False) (S1 ('MetaSel 'Nothing 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))type DemoteRep (Maybe a) = Maybe (DemoteRep a)Defined in ghc-internal-9.1401.0 · GHC.Internal.Genericsdata SingDefined in ghc-internal-9.1401.0 · GHC.Internal.Genericstype Vertex (Maybe g) = Vertex gDefined in algebraic-graphs-0.8 · Algebra.Graph.Classtype Failure Maybe = ()Defined in basement-0.0.16 · Basement.Monadtype Base (Maybe a) = Const (Maybe a)Defined in recursion-schemes-5.2.3 · Data.Functor.FoldableExample boring stub for non-recursive data types
type Index (Maybe a) = ()Defined in lens-5.3.6 · Control.Lens.Attype IxValue (Maybe a) = aDefined in lens-5.3.6 · Control.Lens.Attype StM Maybe a = aDefined in monad-control-1.0.3.1 · Control.Monad.Trans.Controltype Element (Maybe a) = aDefined in mono-traversable-1.0.21.0 · Data.MonoTraversabletype Unroll (Maybe a) = Insert (Maybe a) (Unrolled a)Defined in plutus-tx-1.70.0.0 · PlutusTx.Blueprint.Definition.Unroll