plutus-core-1.36.0.0: Language library for Plutus Core
Safe HaskellSafe-Inferred
LanguageHaskell2010

PlutusCore.Error

Synopsis

Documentation

data ParserError Source #

An error encountered during parsing.

Instances

Instances details
Generic ParserError Source # 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep ParserError :: Type -> Type Source #

Show ParserError Source # 
Instance details

Defined in PlutusCore.Error

NFData ParserError Source # 
Instance details

Defined in PlutusCore.Error

Methods

rnf :: ParserError -> () Source #

Eq ParserError Source # 
Instance details

Defined in PlutusCore.Error

Ord ParserError Source # 
Instance details

Defined in PlutusCore.Error

ShowErrorComponent ParserError Source # 
Instance details

Defined in PlutusCore.Error

Pretty ParserError Source # 
Instance details

Defined in PlutusCore.Error

Methods

pretty :: ParserError -> Doc ann #

prettyList :: [ParserError] -> Doc ann #

type Rep ParserError Source # 
Instance details

Defined in PlutusCore.Error

class AsParserErrorBundle r where Source #

Minimal complete definition

_ParserErrorBundle

Methods

_ParserErrorBundle :: Prism' r ParserErrorBundle Source #

_ParseErrorB :: Prism' r (ParseErrorBundle Text ParserError) Source #

Instances

Instances details
AsParserErrorBundle ParserErrorBundle Source # 
Instance details

Defined in PlutusCore.Error

AsParserErrorBundle (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

_ParserErrorBundle :: Prism' (Error uni fun ann) ParserErrorBundle Source #

_ParseErrorB :: Prism' (Error uni fun ann) (ParseErrorBundle Text ParserError) Source #

data ParserErrorBundle Source #

Constructors

ParseErrorB !(ParseErrorBundle Text ParserError) 

Instances

Instances details
Generic ParserErrorBundle Source # 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep ParserErrorBundle :: Type -> Type Source #

Show ParserErrorBundle Source # 
Instance details

Defined in PlutusCore.Error

NFData ParserErrorBundle Source # 
Instance details

Defined in PlutusCore.Error

Methods

rnf :: ParserErrorBundle -> () Source #

Eq ParserErrorBundle Source # 
Instance details

Defined in PlutusCore.Error

AsParserErrorBundle ParserErrorBundle Source # 
Instance details

Defined in PlutusCore.Error

Pretty ParserErrorBundle Source # 
Instance details

Defined in PlutusCore.Error

type Rep ParserErrorBundle Source # 
Instance details

Defined in PlutusCore.Error

type Rep ParserErrorBundle = D1 ('MetaData "ParserErrorBundle" "PlutusCore.Error" "plutus-core-1.36.0.0-7ehJj5tIPqoJIiiivXkX9N" 'False) (C1 ('MetaCons "ParseErrorB" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ParseErrorBundle Text ParserError))))

data NormCheckError tyname name uni fun ann Source #

Constructors

BadType !ann !(Type tyname uni ann) !Text 
BadTerm !ann !(Term tyname name uni fun ann) !Text 

Instances

Instances details
(Pretty ann, PrettyBy config (Type tyname uni ann), PrettyBy config (Term tyname name uni fun ann)) => PrettyBy config (NormCheckError tyname name uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

prettyBy :: config -> NormCheckError tyname name uni fun ann -> Doc ann0 #

prettyListBy :: config -> [NormCheckError tyname name uni fun ann] -> Doc ann0 #

Functor (NormCheckError tyname name uni fun) Source # 
Instance details

Defined in PlutusCore.Error

Methods

fmap :: (a -> b) -> NormCheckError tyname name uni fun a -> NormCheckError tyname name uni fun b Source #

(<$) :: a -> NormCheckError tyname name uni fun b -> NormCheckError tyname name uni fun a Source #

Generic (NormCheckError tyname name uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (NormCheckError tyname name uni fun ann) :: Type -> Type Source #

Methods

from :: NormCheckError tyname name uni fun ann -> Rep (NormCheckError tyname name uni fun ann) x Source #

to :: Rep (NormCheckError tyname name uni fun ann) x -> NormCheckError tyname name uni fun ann Source #

(Show tyname, Show name, Closed uni, Everywhere uni Show, Show fun, Show ann, GShow uni) => Show (NormCheckError tyname name uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

showsPrec :: Int -> NormCheckError tyname name uni fun ann -> ShowS Source #

show :: NormCheckError tyname name uni fun ann -> String Source #

showList :: [NormCheckError tyname name uni fun ann] -> ShowS Source #

(NFData tyname, NFData name, Closed uni, Everywhere uni NFData, NFData fun, NFData ann) => NFData (NormCheckError tyname name uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

rnf :: NormCheckError tyname name uni fun ann -> () Source #

(Eq (Term tyname name uni fun ann), Eq (Type tyname uni ann), GEq uni, Closed uni, Everywhere uni Eq, Eq fun, Eq ann) => Eq (NormCheckError tyname name uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

(==) :: NormCheckError tyname name uni fun ann -> NormCheckError tyname name uni fun ann -> Bool Source #

(/=) :: NormCheckError tyname name uni fun ann -> NormCheckError tyname name uni fun ann -> Bool Source #

AsNormCheckError (NormCheckError tyname name uni fun ann) tyname name uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_NormCheckError :: Prism' (NormCheckError tyname name uni fun ann) (NormCheckError tyname name uni fun ann) Source #

_BadType :: Prism' (NormCheckError tyname name uni fun ann) (ann, Type tyname uni ann, Text) Source #

_BadTerm :: Prism' (NormCheckError tyname name uni fun ann) (ann, Term tyname name uni fun ann, Text) Source #

type Rep (NormCheckError tyname name uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

class AsNormCheckError r tyname name uni fun ann | r -> tyname name uni fun ann where Source #

Minimal complete definition

_NormCheckError

Methods

_NormCheckError :: Prism' r (NormCheckError tyname name uni fun ann) Source #

_BadType :: Prism' r (ann, Type tyname uni ann, Text) Source #

_BadTerm :: Prism' r (ann, Term tyname name uni fun ann, Text) Source #

Instances

Instances details
(tyname ~ TyName, name ~ Name) => AsNormCheckError (Error uni fun ann) tyname name uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_NormCheckError :: Prism' (Error uni fun ann) (NormCheckError tyname name uni fun ann) Source #

_BadType :: Prism' (Error uni fun ann) (ann, Type tyname uni ann, Text) Source #

_BadTerm :: Prism' (Error uni fun ann) (ann, Term tyname name uni fun ann, Text) Source #

AsNormCheckError (NormCheckError tyname name uni fun ann) tyname name uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_NormCheckError :: Prism' (NormCheckError tyname name uni fun ann) (NormCheckError tyname name uni fun ann) Source #

_BadType :: Prism' (NormCheckError tyname name uni fun ann) (ann, Type tyname uni ann, Text) Source #

_BadTerm :: Prism' (NormCheckError tyname name uni fun ann) (ann, Term tyname name uni fun ann, Text) Source #

data UniqueError ann Source #

Constructors

MultiplyDefined !Unique !ann !ann 
IncoherentUsage !Unique !ann !ann 
FreeVariable !Unique !ann 

Instances

Instances details
Functor UniqueError Source # 
Instance details

Defined in PlutusCore.Error

Methods

fmap :: (a -> b) -> UniqueError a -> UniqueError b Source #

(<$) :: a -> UniqueError b -> UniqueError a Source #

Exception (UniqueError SrcSpan) Source # 
Instance details

Defined in PlutusCore.Error

Generic (UniqueError ann) Source # 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (UniqueError ann) :: Type -> Type Source #

Methods

from :: UniqueError ann -> Rep (UniqueError ann) x Source #

to :: Rep (UniqueError ann) x -> UniqueError ann Source #

Show ann => Show (UniqueError ann) Source # 
Instance details

Defined in PlutusCore.Error

NFData ann => NFData (UniqueError ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

rnf :: UniqueError ann -> () Source #

Eq ann => Eq (UniqueError ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

(==) :: UniqueError ann -> UniqueError ann -> Bool Source #

(/=) :: UniqueError ann -> UniqueError ann -> Bool Source #

Pretty ann => Pretty (UniqueError ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

pretty :: UniqueError ann -> Doc ann0 #

prettyList :: [UniqueError ann] -> Doc ann0 #

AsUniqueError (UniqueError ann) ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_UniqueError :: Prism' (UniqueError ann) (UniqueError ann) Source #

_MultiplyDefined :: Prism' (UniqueError ann) (Unique, ann, ann) Source #

_IncoherentUsage :: Prism' (UniqueError ann) (Unique, ann, ann) Source #

_FreeVariable :: Prism' (UniqueError ann) (Unique, ann) Source #

type Rep (UniqueError ann) Source # 
Instance details

Defined in PlutusCore.Error

class AsUniqueError r ann | r -> ann where Source #

Minimal complete definition

_UniqueError

Methods

_UniqueError :: Prism' r (UniqueError ann) Source #

_MultiplyDefined :: Prism' r (Unique, ann, ann) Source #

_IncoherentUsage :: Prism' r (Unique, ann, ann) Source #

_FreeVariable :: Prism' r (Unique, ann) Source #

Instances

Instances details
AsUniqueError (UniqueError ann) ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_UniqueError :: Prism' (UniqueError ann) (UniqueError ann) Source #

_MultiplyDefined :: Prism' (UniqueError ann) (Unique, ann, ann) Source #

_IncoherentUsage :: Prism' (UniqueError ann) (Unique, ann, ann) Source #

_FreeVariable :: Prism' (UniqueError ann) (Unique, ann) Source #

AsUniqueError (Error uni fun ann) ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_UniqueError :: Prism' (Error uni fun ann) (UniqueError ann) Source #

_MultiplyDefined :: Prism' (Error uni fun ann) (Unique, ann, ann) Source #

_IncoherentUsage :: Prism' (Error uni fun ann) (Unique, ann, ann) Source #

_FreeVariable :: Prism' (Error uni fun ann) (Unique, ann) Source #

data ExpectedShapeOr a Source #

This is needed for nice kind/type checking error messages. In some cases the type checker knows the exact type that an expression has to have for type checking to succeed (see any of checkTypeM functions and its usages), which is what ExpectedExact is suitable for. In other cases the type checker only cares about the shape of the inferred type, e.g. the type checker knows that the type of a function has to be dom -> cod for type checking to succeed, but it doesn't yet care what dom and cod exactly are. Which is what ExpectedShape is useful for as it allows one to specify the shape of an expected type with some existential variables in it when it's impossible to provide an exact type.

Constructors

ExpectedShape 

Fields

  • !Text

    The expected shape potentially referencing existential variables.

  • ![Text]

    The list of existential variables.

ExpectedExact !a 

Instances

Instances details
Functor ExpectedShapeOr Source # 
Instance details

Defined in PlutusCore.Error

PrettyBy PrettyConfigPlc a => PrettyBy PrettyConfigPlc (ExpectedShapeOr a) Source # 
Instance details

Defined in PlutusCore.Error

Generic (ExpectedShapeOr a) Source # 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (ExpectedShapeOr a) :: Type -> Type Source #

Show a => Show (ExpectedShapeOr a) Source # 
Instance details

Defined in PlutusCore.Error

NFData a => NFData (ExpectedShapeOr a) Source # 
Instance details

Defined in PlutusCore.Error

Methods

rnf :: ExpectedShapeOr a -> () Source #

Eq a => Eq (ExpectedShapeOr a) Source # 
Instance details

Defined in PlutusCore.Error

type Rep (ExpectedShapeOr a) Source # 
Instance details

Defined in PlutusCore.Error

type Rep (ExpectedShapeOr a) = D1 ('MetaData "ExpectedShapeOr" "PlutusCore.Error" "plutus-core-1.36.0.0-7ehJj5tIPqoJIiiivXkX9N" 'False) (C1 ('MetaCons "ExpectedShape" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [Text])) :+: C1 ('MetaCons "ExpectedExact" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))

data TypeError term uni fun ann Source #

Constructors

KindMismatch 

Fields

TypeMismatch 

Fields

TyNameMismatch !ann !TyName !TyName 
NameMismatch !ann !Name !Name 
FreeTypeVariableE !ann !TyName 
FreeVariableE !ann !Name 
UnknownBuiltinFunctionE !ann !fun 

Instances

Instances details
(Pretty term, PrettyUni uni, Pretty fun, Pretty ann) => PrettyBy PrettyConfigPlc (TypeError term uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

prettyBy :: PrettyConfigPlc -> TypeError term uni fun ann -> Doc ann0 #

prettyListBy :: PrettyConfigPlc -> [TypeError term uni fun ann] -> Doc ann0 #

Functor (TypeError term uni fun) Source # 
Instance details

Defined in PlutusCore.Error

Methods

fmap :: (a -> b) -> TypeError term uni fun a -> TypeError term uni fun b Source #

(<$) :: a -> TypeError term uni fun b -> TypeError term uni fun a Source #

Generic (TypeError term uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (TypeError term uni fun ann) :: Type -> Type Source #

Methods

from :: TypeError term uni fun ann -> Rep (TypeError term uni fun ann) x Source #

to :: Rep (TypeError term uni fun ann) x -> TypeError term uni fun ann Source #

(GShow uni, Show term, Show ann, Show fun) => Show (TypeError term uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

showsPrec :: Int -> TypeError term uni fun ann -> ShowS Source #

show :: TypeError term uni fun ann -> String Source #

showList :: [TypeError term uni fun ann] -> ShowS Source #

(Closed uni, NFData ann, NFData term, NFData fun) => NFData (TypeError term uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

rnf :: TypeError term uni fun ann -> () Source #

(GEq uni, Eq term, Eq ann, Eq fun) => Eq (TypeError term uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

(==) :: TypeError term uni fun ann -> TypeError term uni fun ann -> Bool Source #

(/=) :: TypeError term uni fun ann -> TypeError term uni fun ann -> Bool Source #

AsTypeError (TypeError term uni fun ann) term uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_TypeError :: Prism' (TypeError term uni fun ann) (TypeError term uni fun ann) Source #

_KindMismatch :: Prism' (TypeError term uni fun ann) (ann, Type TyName uni (), ExpectedShapeOr (Kind ()), Kind ()) Source #

_TypeMismatch :: Prism' (TypeError term uni fun ann) (ann, term, ExpectedShapeOr (Type TyName uni ()), Normalized (Type TyName uni ())) Source #

_TyNameMismatch :: Prism' (TypeError term uni fun ann) (ann, TyName, TyName) Source #

_NameMismatch :: Prism' (TypeError term uni fun ann) (ann, Name, Name) Source #

_FreeTypeVariableE :: Prism' (TypeError term uni fun ann) (ann, TyName) Source #

_FreeVariableE :: Prism' (TypeError term uni fun ann) (ann, Name) Source #

_UnknownBuiltinFunctionE :: Prism' (TypeError term uni fun ann) (ann, fun) Source #

type Rep (TypeError term uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

type Rep (TypeError term uni fun ann) = D1 ('MetaData "TypeError" "PlutusCore.Error" "plutus-core-1.36.0.0-7ehJj5tIPqoJIiiivXkX9N" 'False) ((C1 ('MetaCons "KindMismatch" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ann) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Type TyName uni ()))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExpectedShapeOr (Kind ()))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Kind ())))) :+: (C1 ('MetaCons "TypeMismatch" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ann) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 term)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExpectedShapeOr (Type TyName uni ()))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Normalized (Type TyName uni ()))))) :+: C1 ('MetaCons "TyNameMismatch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ann) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TyName) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TyName))))) :+: ((C1 ('MetaCons "NameMismatch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ann) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name))) :+: C1 ('MetaCons "FreeTypeVariableE" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ann) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TyName))) :+: (C1 ('MetaCons "FreeVariableE" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ann) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)) :+: C1 ('MetaCons "UnknownBuiltinFunctionE" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ann) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 fun)))))

class AsTypeError r term uni fun ann | r -> term uni fun ann where Source #

Minimal complete definition

_TypeError

Methods

_TypeError :: Prism' r (TypeError term uni fun ann) Source #

_KindMismatch :: Prism' r (ann, Type TyName uni (), ExpectedShapeOr (Kind ()), Kind ()) Source #

_TypeMismatch :: Prism' r (ann, term, ExpectedShapeOr (Type TyName uni ()), Normalized (Type TyName uni ())) Source #

_TyNameMismatch :: Prism' r (ann, TyName, TyName) Source #

_NameMismatch :: Prism' r (ann, Name, Name) Source #

_FreeTypeVariableE :: Prism' r (ann, TyName) Source #

_FreeVariableE :: Prism' r (ann, Name) Source #

_UnknownBuiltinFunctionE :: Prism' r (ann, fun) Source #

Instances

Instances details
AsTypeError (Error uni fun ann) (Term TyName Name uni fun ()) uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_TypeError :: Prism' (Error uni fun ann) (TypeError (Term TyName Name uni fun ()) uni fun ann) Source #

_KindMismatch :: Prism' (Error uni fun ann) (ann, Type TyName uni (), ExpectedShapeOr (Kind ()), Kind ()) Source #

_TypeMismatch :: Prism' (Error uni fun ann) (ann, Term TyName Name uni fun (), ExpectedShapeOr (Type TyName uni ()), Normalized (Type TyName uni ())) Source #

_TyNameMismatch :: Prism' (Error uni fun ann) (ann, TyName, TyName) Source #

_NameMismatch :: Prism' (Error uni fun ann) (ann, Name, Name) Source #

_FreeTypeVariableE :: Prism' (Error uni fun ann) (ann, TyName) Source #

_FreeVariableE :: Prism' (Error uni fun ann) (ann, Name) Source #

_UnknownBuiltinFunctionE :: Prism' (Error uni fun ann) (ann, fun) Source #

AsTypeError (TypeError term uni fun ann) term uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_TypeError :: Prism' (TypeError term uni fun ann) (TypeError term uni fun ann) Source #

_KindMismatch :: Prism' (TypeError term uni fun ann) (ann, Type TyName uni (), ExpectedShapeOr (Kind ()), Kind ()) Source #

_TypeMismatch :: Prism' (TypeError term uni fun ann) (ann, term, ExpectedShapeOr (Type TyName uni ()), Normalized (Type TyName uni ())) Source #

_TyNameMismatch :: Prism' (TypeError term uni fun ann) (ann, TyName, TyName) Source #

_NameMismatch :: Prism' (TypeError term uni fun ann) (ann, Name, Name) Source #

_FreeTypeVariableE :: Prism' (TypeError term uni fun ann) (ann, TyName) Source #

_FreeVariableE :: Prism' (TypeError term uni fun ann) (ann, Name) Source #

_UnknownBuiltinFunctionE :: Prism' (TypeError term uni fun ann) (ann, fun) Source #

data FreeVariableError Source #

We cannot do a correct translation to or from de Bruijn indices if the program is not well-scoped. So we throw an error in such a case.

Constructors

FreeUnique !Unique 
FreeIndex !Index 

Instances

Instances details
Exception FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Generic FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Associated Types

type Rep FreeVariableError :: Type -> Type Source #

Show FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

NFData FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Methods

rnf :: FreeVariableError -> () Source #

Eq FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Ord FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

AsFreeVariableError FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Pretty FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

type Rep FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

type Rep FreeVariableError = D1 ('MetaData "FreeVariableError" "PlutusCore.DeBruijn.Internal" "plutus-core-1.36.0.0-7ehJj5tIPqoJIiiivXkX9N" 'False) (C1 ('MetaCons "FreeUnique" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Unique)) :+: C1 ('MetaCons "FreeIndex" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Index)))

class AsFreeVariableError r where Source #

Minimal complete definition

_FreeVariableError

Instances

Instances details
AsFreeVariableError FreeVariableError Source # 
Instance details

Defined in PlutusCore.DeBruijn.Internal

AsFreeVariableError (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

_FreeVariableError :: Prism' (Error uni fun ann) FreeVariableError Source #

_FreeUnique :: Prism' (Error uni fun ann) Unique Source #

_FreeIndex :: Prism' (Error uni fun ann) Index Source #

data Error uni fun ann Source #

Instances

Instances details
(PrettyUni uni, Pretty fun, Pretty ann) => PrettyBy PrettyConfigPlc (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

prettyBy :: PrettyConfigPlc -> Error uni fun ann -> Doc ann0 #

prettyListBy :: PrettyConfigPlc -> [Error uni fun ann] -> Doc ann0 #

Functor (Error uni fun) Source # 
Instance details

Defined in PlutusCore.Error

Methods

fmap :: (a -> b) -> Error uni fun a -> Error uni fun b Source #

(<$) :: a -> Error uni fun b -> Error uni fun a Source #

Generic (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (Error uni fun ann) :: Type -> Type Source #

Methods

from :: Error uni fun ann -> Rep (Error uni fun ann) x Source #

to :: Rep (Error uni fun ann) x -> Error uni fun ann Source #

(Show fun, Show ann, Closed uni, Everywhere uni Show, GShow uni, Show ParserError) => Show (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

showsPrec :: Int -> Error uni fun ann -> ShowS Source #

show :: Error uni fun ann -> String Source #

showList :: [Error uni fun ann] -> ShowS Source #

(NFData fun, NFData ann, Closed uni, Everywhere uni NFData, NFData ParserError) => NFData (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

rnf :: Error uni fun ann -> () Source #

(Eq fun, Eq ann, Closed uni, Everywhere uni Eq, GEq uni, Eq ParserError) => Eq (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

(==) :: Error uni fun ann -> Error uni fun ann -> Bool Source #

(/=) :: Error uni fun ann -> Error uni fun ann -> Bool Source #

AsFreeVariableError (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

_FreeVariableError :: Prism' (Error uni fun ann) FreeVariableError Source #

_FreeUnique :: Prism' (Error uni fun ann) Unique Source #

_FreeIndex :: Prism' (Error uni fun ann) Index Source #

AsParserErrorBundle (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

Methods

_ParserErrorBundle :: Prism' (Error uni fun ann) ParserErrorBundle Source #

_ParseErrorB :: Prism' (Error uni fun ann) (ParseErrorBundle Text ParserError) Source #

AsUniqueError (Error uni fun ann) ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_UniqueError :: Prism' (Error uni fun ann) (UniqueError ann) Source #

_MultiplyDefined :: Prism' (Error uni fun ann) (Unique, ann, ann) Source #

_IncoherentUsage :: Prism' (Error uni fun ann) (Unique, ann, ann) Source #

_FreeVariable :: Prism' (Error uni fun ann) (Unique, ann) Source #

AsError (Error uni fun ann) uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_Error :: Prism' (Error uni fun ann) (Error uni fun ann) Source #

_ParseErrorE :: Prism' (Error uni fun ann) ParserErrorBundle Source #

_UniqueCoherencyErrorE :: Prism' (Error uni fun ann) (UniqueError ann) Source #

_TypeErrorE :: Prism' (Error uni fun ann) (TypeError (Term TyName Name uni fun ()) uni fun ann) Source #

_NormCheckErrorE :: Prism' (Error uni fun ann) (NormCheckError TyName Name uni fun ann) Source #

_FreeVariableErrorE :: Prism' (Error uni fun ann) FreeVariableError Source #

(tyname ~ TyName, name ~ Name) => AsNormCheckError (Error uni fun ann) tyname name uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_NormCheckError :: Prism' (Error uni fun ann) (NormCheckError tyname name uni fun ann) Source #

_BadType :: Prism' (Error uni fun ann) (ann, Type tyname uni ann, Text) Source #

_BadTerm :: Prism' (Error uni fun ann) (ann, Term tyname name uni fun ann, Text) Source #

AsTypeError (Error uni fun ann) (Term TyName Name uni fun ()) uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_TypeError :: Prism' (Error uni fun ann) (TypeError (Term TyName Name uni fun ()) uni fun ann) Source #

_KindMismatch :: Prism' (Error uni fun ann) (ann, Type TyName uni (), ExpectedShapeOr (Kind ()), Kind ()) Source #

_TypeMismatch :: Prism' (Error uni fun ann) (ann, Term TyName Name uni fun (), ExpectedShapeOr (Type TyName uni ()), Normalized (Type TyName uni ())) Source #

_TyNameMismatch :: Prism' (Error uni fun ann) (ann, TyName, TyName) Source #

_NameMismatch :: Prism' (Error uni fun ann) (ann, Name, Name) Source #

_FreeTypeVariableE :: Prism' (Error uni fun ann) (ann, TyName) Source #

_FreeVariableE :: Prism' (Error uni fun ann) (ann, Name) Source #

_UnknownBuiltinFunctionE :: Prism' (Error uni fun ann) (ann, fun) Source #

type Rep (Error uni fun ann) Source # 
Instance details

Defined in PlutusCore.Error

type Rep (Error uni fun ann) = D1 ('MetaData "Error" "PlutusCore.Error" "plutus-core-1.36.0.0-7ehJj5tIPqoJIiiivXkX9N" 'False) ((C1 ('MetaCons "ParseErrorE" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ParserErrorBundle)) :+: C1 ('MetaCons "UniqueCoherencyErrorE" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (UniqueError ann)))) :+: (C1 ('MetaCons "TypeErrorE" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (TypeError (Term TyName Name uni fun ()) uni fun ann))) :+: (C1 ('MetaCons "NormCheckErrorE" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NormCheckError TyName Name uni fun ann))) :+: C1 ('MetaCons "FreeVariableErrorE" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FreeVariableError)))))

class AsError r uni fun ann | r -> uni fun ann where Source #

Minimal complete definition

_Error

Methods

_Error :: Prism' r (Error uni fun ann) Source #

_ParseErrorE :: Prism' r ParserErrorBundle Source #

_UniqueCoherencyErrorE :: Prism' r (UniqueError ann) Source #

_TypeErrorE :: Prism' r (TypeError (Term TyName Name uni fun ()) uni fun ann) Source #

_NormCheckErrorE :: Prism' r (NormCheckError TyName Name uni fun ann) Source #

_FreeVariableErrorE :: Prism' r FreeVariableError Source #

Instances

Instances details
AsError (Error uni fun ann) uni fun ann Source # 
Instance details

Defined in PlutusCore.Error

Methods

_Error :: Prism' (Error uni fun ann) (Error uni fun ann) Source #

_ParseErrorE :: Prism' (Error uni fun ann) ParserErrorBundle Source #

_UniqueCoherencyErrorE :: Prism' (Error uni fun ann) (UniqueError ann) Source #

_TypeErrorE :: Prism' (Error uni fun ann) (TypeError (Term TyName Name uni fun ()) uni fun ann) Source #

_NormCheckErrorE :: Prism' (Error uni fun ann) (NormCheckError TyName Name uni fun ann) Source #

_FreeVariableErrorE :: Prism' (Error uni fun ann) FreeVariableError Source #

throwingEither :: MonadError e m => AReview e t -> Either t a -> m a Source #

Lifts an Either into an error context where we can embed the Left value into the error.

class Ord a => ShowErrorComponent a where #

Minimal complete definition

showErrorComponent

Orphan instances

Pretty SourcePos Source # 
Instance details

Methods

pretty :: SourcePos -> Doc ann #

prettyList :: [SourcePos] -> Doc ann #