{-# OPTIONS_GHC -fno-warn-orphans     #-}

module Agda.TypeChecking.Serialise.Instances.Errors where

import Control.Monad

import Agda.TypeChecking.Serialise.Base
import Agda.TypeChecking.Serialise.Instances.Internal () --instance only
import Agda.TypeChecking.Serialise.Instances.Abstract () --instance only

import Agda.Syntax.Concrete.Definitions (DeclarationWarning(..))
import Agda.TypeChecking.Monad.Base
import Agda.Interaction.Options
import Agda.Interaction.Options.Warnings
import Agda.Interaction.Library
import Agda.Interaction.Library.Parse
import Agda.Termination.CutOff
import Agda.Utils.Pretty

import Agda.Utils.Impossible

instance EmbPrj TCWarning where
  icod_ :: TCWarning -> S Int32
icod_ (TCWarning Range
a Warning
b Doc
c Bool
d) = (Range -> Warning -> Doc -> Bool -> TCWarning)
-> Range -> Warning -> Doc -> Bool -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
t -> Arrows (Domains t) (S Int32)
icodeN' Range -> Warning -> Doc -> Bool -> TCWarning
TCWarning Range
a Warning
b Doc
c Bool
d

  value :: Int32 -> R TCWarning
value = (Range -> Warning -> Doc -> Bool -> TCWarning)
-> Int32
-> R (CoDomain (Range -> Warning -> Doc -> Bool -> TCWarning))
forall t.
(VALU t (IsBase t), All EmbPrj (CoDomain t : Domains t)) =>
t -> Int32 -> R (CoDomain t)
valueN Range -> Warning -> Doc -> Bool -> TCWarning
TCWarning

-- We don't need to serialise warnings that turn into errors
instance EmbPrj Warning where
  icod_ :: Warning -> S Int32
icod_ (TerminationIssue [TerminationError]
a)         = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (UnreachableClauses QName
a [Range]
b)     = Int32
-> (QName -> [Range] -> Warning) -> QName -> [Range] -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
0 QName -> [Range] -> Warning
UnreachableClauses QName
a [Range]
b
  icod_ (CoverageIssue QName
a [(Telescope, [NamedArg DeBruijnPattern])]
b)          = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (NotStrictlyPositive QName
a Seq OccursWhere
b)    = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (UnsolvedMetaVariables [Range]
a)    = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (UnsolvedInteractionMetas [Range]
a) = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (UnsolvedConstraints Constraints
a)      = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (OldBuiltin String
a String
b)             = Int32
-> (String -> String -> Warning) -> String -> String -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
1 String -> String -> Warning
OldBuiltin String
a String
b
  icod_ Warning
EmptyRewritePragma           = Int32 -> Warning -> Arrows (Domains Warning) (S Int32)
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
2 Warning
EmptyRewritePragma
  icod_ Warning
UselessPublic                = Int32 -> Warning -> Arrows (Domains Warning) (S Int32)
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
3 Warning
UselessPublic
  icod_ (UselessInline QName
a)            = Int32 -> (QName -> Warning) -> QName -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
4 QName -> Warning
UselessInline QName
a
  icod_ (GenericWarning Doc
a)           = Int32 -> (Doc -> Warning) -> Doc -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
5 Doc -> Warning
GenericWarning Doc
a
  icod_ (GenericNonFatalError Doc
a)     = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (SafeFlagPostulate Name
a)        = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (SafeFlagPragma [String]
a)           = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagNonTerminating       = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagTerminating          = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagWithoutKFlagPrimEraseEquality    = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagNoPositivityCheck    = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagPolarity             = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagNoUniverseCheck      = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagNoCoverageCheck      = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagInjective            = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ Warning
SafeFlagEta                  = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (ParseWarning ParseWarning
a)             = S Int32
forall a. HasCallStack => a
__IMPOSSIBLE__
  icod_ (DeprecationWarning String
a String
b String
c)   = Int32
-> (String -> String -> String -> Warning)
-> String
-> String
-> String
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
6 String -> String -> String -> Warning
DeprecationWarning String
a String
b String
c
  icod_ (NicifierIssue DeclarationWarning
a)            = Int32
-> (DeclarationWarning -> Warning) -> DeclarationWarning -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
7 DeclarationWarning -> Warning
NicifierIssue DeclarationWarning
a
  icod_ (InversionDepthReached QName
a)    = Int32 -> (QName -> Warning) -> QName -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
8 QName -> Warning
InversionDepthReached QName
a
  icod_ (UserWarning String
a)              = Int32 -> (String -> Warning) -> String -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
9 String -> Warning
UserWarning String
a
  icod_ (AbsurdPatternRequiresNoRHS [NamedArg DeBruijnPattern]
a) = Int32
-> ([NamedArg DeBruijnPattern] -> Warning)
-> [NamedArg DeBruijnPattern]
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
10 [NamedArg DeBruijnPattern] -> Warning
AbsurdPatternRequiresNoRHS [NamedArg DeBruijnPattern]
a
  icod_ (ModuleDoesntExport QName
a [ImportedName]
b)       = Int32
-> (QName -> [ImportedName] -> Warning)
-> QName
-> [ImportedName]
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
11 QName -> [ImportedName] -> Warning
ModuleDoesntExport QName
a [ImportedName]
b
  icod_ (LibraryWarning LibWarning
a)           = Int32 -> (LibWarning -> Warning) -> LibWarning -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
12 LibWarning -> Warning
LibraryWarning LibWarning
a
  icod_ (CoverageNoExactSplit QName
a [Clause]
b)   = Int32
-> (QName -> [Clause] -> Warning) -> QName -> [Clause] -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
13 QName -> [Clause] -> Warning
CoverageNoExactSplit QName
a [Clause]
b
  icod_ (CantGeneralizeOverSorts [MetaId]
a)  = Int32 -> ([MetaId] -> Warning) -> [MetaId] -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
14 [MetaId] -> Warning
CantGeneralizeOverSorts [MetaId]
a
  icod_ (IllformedAsClause String
a)        = Int32 -> (String -> Warning) -> String -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
15 String -> Warning
IllformedAsClause String
a
  icod_ Warning
WithoutKFlagPrimEraseEquality = Int32 -> Warning -> Arrows (Domains Warning) (S Int32)
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
16 Warning
WithoutKFlagPrimEraseEquality
  icod_ (InstanceWithExplicitArg QName
a)  = Int32 -> (QName -> Warning) -> QName -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
17 QName -> Warning
InstanceWithExplicitArg QName
a
  icod_ (InfectiveImport String
a ModuleName
b)          = Int32
-> (String -> ModuleName -> Warning)
-> String
-> ModuleName
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
18 String -> ModuleName -> Warning
InfectiveImport String
a ModuleName
b
  icod_ (CoInfectiveImport String
a ModuleName
b)        = Int32
-> (String -> ModuleName -> Warning)
-> String
-> ModuleName
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
19 String -> ModuleName -> Warning
CoInfectiveImport String
a ModuleName
b
  icod_ (InstanceNoOutputTypeName Doc
a) = Int32 -> (Doc -> Warning) -> Doc -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
20 Doc -> Warning
InstanceNoOutputTypeName Doc
a
  icod_ (InstanceArgWithExplicitArg Doc
a) = Int32 -> (Doc -> Warning) -> Doc -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
21 Doc -> Warning
InstanceArgWithExplicitArg Doc
a
  icod_ Warning
WrongInstanceDeclaration     = Int32 -> Warning -> Arrows (Domains Warning) (S Int32)
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
22 Warning
WrongInstanceDeclaration
  icod_ (RewriteNonConfluent Term
a Term
b Term
c Doc
d) = Int32
-> (Term -> Term -> Term -> Doc -> Warning)
-> Term
-> Term
-> Term
-> Doc
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
23 Term -> Term -> Term -> Doc -> Warning
RewriteNonConfluent Term
a Term
b Term
c Doc
d
  icod_ (RewriteMaybeNonConfluent Term
a Term
b [Doc]
c) = Int32
-> (Term -> Term -> [Doc] -> Warning)
-> Term
-> Term
-> [Doc]
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
24 Term -> Term -> [Doc] -> Warning
RewriteMaybeNonConfluent Term
a Term
b [Doc]
c
  icod_ (PragmaCompileErased String
a QName
b)        = Int32 -> (String -> QName -> Warning) -> String -> QName -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
25 String -> QName -> Warning
PragmaCompileErased String
a QName
b
  icod_ (FixityInRenamingModule NonEmpty Range
a)       = Int32 -> (NonEmpty Range -> Warning) -> NonEmpty Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
26 NonEmpty Range -> Warning
FixityInRenamingModule NonEmpty Range
a
  icod_ (NotInScopeW [QName]
ns)                 = Int32 -> ([QName] -> Warning) -> [QName] -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
27 [QName] -> Warning
NotInScopeW [QName]
ns
  icod_ (ClashesViaRenaming NameOrModule
a [Name]
b)         = Int32
-> (NameOrModule -> [Name] -> Warning)
-> NameOrModule
-> [Name]
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
28 NameOrModule -> [Name] -> Warning
ClashesViaRenaming NameOrModule
a [Name]
b

  value :: Int32 -> R Warning
value = (Node -> R Warning) -> Int32 -> R Warning
forall a. EmbPrj a => (Node -> R a) -> Int32 -> R a
vcase Node -> R Warning
valu where
      valu :: Node -> R Warning
valu [Int32
0, Int32
a, Int32
b]    = (QName -> [Range] -> Warning) -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN QName -> [Range] -> Warning
UnreachableClauses Int32
a Int32
b
      valu [Int32
1, Int32
a, Int32
b]    = (String -> String -> Warning) -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN String -> String -> Warning
OldBuiltin Int32
a Int32
b
      valu [Int32
2]          = Warning
-> Arrows (Constant Int32 (Domains Warning)) (R (CoDomain Warning))
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Warning
EmptyRewritePragma
      valu [Int32
3]          = Warning
-> Arrows (Constant Int32 (Domains Warning)) (R (CoDomain Warning))
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Warning
UselessPublic
      valu [Int32
4, Int32
a]       = (QName -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN QName -> Warning
UselessInline Int32
a
      valu [Int32
5, Int32
a]       = (Doc -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Doc -> Warning
GenericWarning Int32
a
      valu [Int32
6, Int32
a, Int32
b, Int32
c] = (String -> String -> String -> Warning)
-> Int32 -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN String -> String -> String -> Warning
DeprecationWarning Int32
a Int32
b Int32
c
      valu [Int32
7, Int32
a]       = (DeclarationWarning -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN DeclarationWarning -> Warning
NicifierIssue Int32
a
      valu [Int32
8, Int32
a]       = (QName -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN QName -> Warning
InversionDepthReached Int32
a
      valu [Int32
9, Int32
a]       = (String -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN String -> Warning
UserWarning Int32
a
      valu [Int32
10, Int32
a]      = ([NamedArg DeBruijnPattern] -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [NamedArg DeBruijnPattern] -> Warning
AbsurdPatternRequiresNoRHS Int32
a
      valu [Int32
11, Int32
a, Int32
b]   = (QName -> [ImportedName] -> Warning) -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN QName -> [ImportedName] -> Warning
ModuleDoesntExport Int32
a Int32
b
      valu [Int32
12, Int32
a]      = (LibWarning -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN LibWarning -> Warning
LibraryWarning Int32
a
      valu [Int32
13, Int32
a, Int32
b]   = (QName -> [Clause] -> Warning) -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN QName -> [Clause] -> Warning
CoverageNoExactSplit Int32
a Int32
b
      valu [Int32
14, Int32
a]      = ([MetaId] -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [MetaId] -> Warning
CantGeneralizeOverSorts Int32
a
      valu [Int32
15, Int32
a]      = (String -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN String -> Warning
IllformedAsClause Int32
a
      valu [Int32
16]         = Warning
-> Arrows (Constant Int32 (Domains Warning)) (R (CoDomain Warning))
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Warning
WithoutKFlagPrimEraseEquality
      valu [Int32
17, Int32
a]      = (QName -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN QName -> Warning
InstanceWithExplicitArg Int32
a
      valu [Int32
18, Int32
a, Int32
b]   = (String -> ModuleName -> Warning) -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN String -> ModuleName -> Warning
InfectiveImport Int32
a Int32
b
      valu [Int32
19, Int32
a, Int32
b]   = (String -> ModuleName -> Warning) -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN String -> ModuleName -> Warning
CoInfectiveImport Int32
a Int32
b
      valu [Int32
20, Int32
a]      = (Doc -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Doc -> Warning
InstanceNoOutputTypeName Int32
a
      valu [Int32
21, Int32
a]      = (Doc -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Doc -> Warning
InstanceArgWithExplicitArg Int32
a
      valu [Int32
22]         = Warning
-> Arrows (Constant Int32 (Domains Warning)) (R (CoDomain Warning))
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Warning
WrongInstanceDeclaration
      valu [Int32
23, Int32
a, Int32
b, Int32
c, Int32
d] = (Term -> Term -> Term -> Doc -> Warning)
-> Int32 -> Int32 -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Term -> Term -> Term -> Doc -> Warning
RewriteNonConfluent Int32
a Int32
b Int32
c Int32
d
      valu [Int32
24, Int32
a, Int32
b, Int32
c]    = (Term -> Term -> [Doc] -> Warning)
-> Int32 -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Term -> Term -> [Doc] -> Warning
RewriteMaybeNonConfluent Int32
a Int32
b Int32
c
      valu [Int32
25, Int32
a, Int32
b]   = (String -> QName -> Warning) -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN String -> QName -> Warning
PragmaCompileErased Int32
a Int32
b
      valu [Int32
26, Int32
a]      = (NonEmpty Range -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN NonEmpty Range -> Warning
FixityInRenamingModule Int32
a
      valu [Int32
27, Int32
ns]     = ([QName] -> Warning) -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [QName] -> Warning
NotInScopeW Int32
ns
      valu [Int32
28, Int32
a, Int32
b]   = (NameOrModule -> [Name] -> Warning) -> Int32 -> Int32 -> R Warning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN NameOrModule -> [Name] -> Warning
ClashesViaRenaming Int32
a Int32
b
      valu Node
_ = R Warning
forall a. R a
malformed

instance EmbPrj DeclarationWarning where
  icod_ :: DeclarationWarning -> S Int32
icod_ = \case
    UnknownNamesInFixityDecl [Name]
a        -> Int32 -> ([Name] -> DeclarationWarning) -> [Name] -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
0 [Name] -> DeclarationWarning
UnknownNamesInFixityDecl [Name]
a
    UnknownNamesInPolarityPragmas [Name]
a   -> Int32 -> ([Name] -> DeclarationWarning) -> [Name] -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
1 [Name] -> DeclarationWarning
UnknownNamesInPolarityPragmas [Name]
a
    PolarityPragmasButNotPostulates [Name]
a -> Int32 -> ([Name] -> DeclarationWarning) -> [Name] -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
2 [Name] -> DeclarationWarning
PolarityPragmasButNotPostulates [Name]
a
    UselessPrivate Range
a                  -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
3 Range -> DeclarationWarning
UselessPrivate Range
a
    UselessAbstract Range
a                 -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
4 Range -> DeclarationWarning
UselessAbstract Range
a
    UselessInstance Range
a                 -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
5 Range -> DeclarationWarning
UselessInstance Range
a
    EmptyMutual Range
a                     -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
6 Range -> DeclarationWarning
EmptyMutual Range
a
    EmptyAbstract Range
a                   -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
7 Range -> DeclarationWarning
EmptyAbstract Range
a
    EmptyPrivate Range
a                    -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
8 Range -> DeclarationWarning
EmptyPrivate Range
a
    EmptyInstance Range
a                   -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
9 Range -> DeclarationWarning
EmptyInstance Range
a
    EmptyMacro Range
a                      -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
10 Range -> DeclarationWarning
EmptyMacro Range
a
    EmptyPostulate Range
a                  -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
11 Range -> DeclarationWarning
EmptyPostulate Range
a
    InvalidTerminationCheckPragma Range
a   -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
12 Range -> DeclarationWarning
InvalidTerminationCheckPragma Range
a
    InvalidNoPositivityCheckPragma Range
a  -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
13 Range -> DeclarationWarning
InvalidNoPositivityCheckPragma Range
a
    InvalidCatchallPragma Range
a           -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
14 Range -> DeclarationWarning
InvalidCatchallPragma Range
a
    InvalidNoUniverseCheckPragma Range
a    -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
15 Range -> DeclarationWarning
InvalidNoUniverseCheckPragma Range
a
    UnknownFixityInMixfixDecl [Name]
a       -> Int32 -> ([Name] -> DeclarationWarning) -> [Name] -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
16 [Name] -> DeclarationWarning
UnknownFixityInMixfixDecl [Name]
a
    MissingDefinitions [(Name, Range)]
a              -> Int32
-> ([(Name, Range)] -> DeclarationWarning)
-> [(Name, Range)]
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
17 [(Name, Range)] -> DeclarationWarning
MissingDefinitions [(Name, Range)]
a
    NotAllowedInMutual Range
r String
a            -> Int32
-> (Range -> String -> DeclarationWarning)
-> Range
-> String
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
18 Range -> String -> DeclarationWarning
NotAllowedInMutual Range
r String
a
    PragmaNoTerminationCheck Range
r        -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
19 Range -> DeclarationWarning
PragmaNoTerminationCheck Range
r
    EmptyGeneralize Range
a                 -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
20 Range -> DeclarationWarning
EmptyGeneralize Range
a
    PragmaCompiled Range
r                  -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
21 Range -> DeclarationWarning
PragmaCompiled Range
r
    EmptyPrimitive Range
a                  -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
22 Range -> DeclarationWarning
EmptyPrimitive Range
a
    EmptyField Range
r                      -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
23 Range -> DeclarationWarning
EmptyField Range
r
    ShadowingInTelescope [(Name, [Range])]
nrs          -> Int32
-> ([(Name, [Range])] -> DeclarationWarning)
-> [(Name, [Range])]
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
24 [(Name, [Range])] -> DeclarationWarning
ShadowingInTelescope [(Name, [Range])]
nrs
    InvalidCoverageCheckPragma Range
r      -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
25 Range -> DeclarationWarning
InvalidCoverageCheckPragma Range
r
    OpenPublicAbstract Range
r              -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
26 Range -> DeclarationWarning
OpenPublicAbstract Range
r
    OpenPublicPrivate Range
r               -> Int32 -> (Range -> DeclarationWarning) -> Range -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
27 Range -> DeclarationWarning
OpenPublicPrivate Range
r

  value :: Int32 -> R DeclarationWarning
value = (Node -> R DeclarationWarning) -> Int32 -> R DeclarationWarning
forall a. EmbPrj a => (Node -> R a) -> Int32 -> R a
vcase ((Node -> R DeclarationWarning) -> Int32 -> R DeclarationWarning)
-> (Node -> R DeclarationWarning) -> Int32 -> R DeclarationWarning
forall a b. (a -> b) -> a -> b
$ \case
    [Int32
0, Int32
a]   -> ([Name] -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [Name] -> DeclarationWarning
UnknownNamesInFixityDecl Int32
a
    [Int32
1, Int32
a]   -> ([Name] -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [Name] -> DeclarationWarning
UnknownNamesInPolarityPragmas Int32
a
    [Int32
2, Int32
a]   -> ([Name] -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [Name] -> DeclarationWarning
PolarityPragmasButNotPostulates Int32
a
    [Int32
3, Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
UselessPrivate Int32
a
    [Int32
4, Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
UselessAbstract Int32
a
    [Int32
5, Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
UselessInstance Int32
a
    [Int32
6, Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyMutual Int32
a
    [Int32
7, Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyAbstract Int32
a
    [Int32
8, Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyPrivate Int32
a
    [Int32
9, Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyInstance Int32
a
    [Int32
10,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyMacro Int32
a
    [Int32
11,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyPostulate Int32
a
    [Int32
12,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
InvalidTerminationCheckPragma Int32
a
    [Int32
13,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
InvalidNoPositivityCheckPragma Int32
a
    [Int32
14,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
InvalidCatchallPragma Int32
a
    [Int32
15,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
InvalidNoUniverseCheckPragma Int32
a
    [Int32
16,Int32
a]   -> ([Name] -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [Name] -> DeclarationWarning
UnknownFixityInMixfixDecl Int32
a
    [Int32
17,Int32
a]   -> ([(Name, Range)] -> DeclarationWarning)
-> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [(Name, Range)] -> DeclarationWarning
MissingDefinitions Int32
a
    [Int32
18,Int32
r,Int32
a] -> (Range -> String -> DeclarationWarning)
-> Int32 -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> String -> DeclarationWarning
NotAllowedInMutual Int32
r Int32
a
    [Int32
19,Int32
r]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
PragmaNoTerminationCheck Int32
r
    [Int32
20,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyGeneralize Int32
a
    [Int32
21,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
PragmaCompiled Int32
a
    [Int32
22,Int32
a]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyPrimitive Int32
a
    [Int32
23,Int32
r]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
EmptyField Int32
r
    [Int32
24,Int32
nrs] -> ([(Name, [Range])] -> DeclarationWarning)
-> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN [(Name, [Range])] -> DeclarationWarning
ShadowingInTelescope Int32
nrs
    [Int32
25,Int32
r]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
InvalidCoverageCheckPragma Int32
r
    [Int32
26,Int32
r]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
OpenPublicAbstract Int32
r
    [Int32
27,Int32
r]   -> (Range -> DeclarationWarning) -> Int32 -> R DeclarationWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Range -> DeclarationWarning
OpenPublicPrivate Int32
r
    Node
_ -> R DeclarationWarning
forall a. R a
malformed

instance EmbPrj LibWarning where
  icod_ :: LibWarning -> S Int32
icod_ = \case
    LibWarning LibPositionInfo
a LibWarning'
b -> Int32
-> (LibPositionInfo -> LibWarning' -> LibWarning)
-> LibPositionInfo
-> LibWarning'
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
0 LibPositionInfo -> LibWarning' -> LibWarning
LibWarning LibPositionInfo
a LibWarning'
b

  value :: Int32 -> R LibWarning
value = (Node -> R LibWarning) -> Int32 -> R LibWarning
forall a. EmbPrj a => (Node -> R a) -> Int32 -> R a
vcase ((Node -> R LibWarning) -> Int32 -> R LibWarning)
-> (Node -> R LibWarning) -> Int32 -> R LibWarning
forall a b. (a -> b) -> a -> b
$ \case
    [Int32
0, Int32
a, Int32
b]   -> (LibPositionInfo -> LibWarning' -> LibWarning)
-> Int32 -> Int32 -> R LibWarning
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN LibPositionInfo -> LibWarning' -> LibWarning
LibWarning Int32
a Int32
b
    Node
_ -> R LibWarning
forall a. R a
malformed

instance EmbPrj LibWarning' where
  icod_ :: LibWarning' -> S Int32
icod_ = \case
    UnknownField String
a -> Int32 -> (String -> LibWarning') -> String -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
0 String -> LibWarning'
UnknownField String
a

  value :: Int32 -> R LibWarning'
value = (Node -> R LibWarning') -> Int32 -> R LibWarning'
forall a. EmbPrj a => (Node -> R a) -> Int32 -> R a
vcase ((Node -> R LibWarning') -> Int32 -> R LibWarning')
-> (Node -> R LibWarning') -> Int32 -> R LibWarning'
forall a b. (a -> b) -> a -> b
$ \case
    [Int32
0, Int32
a]   -> (String -> LibWarning') -> Int32 -> R LibWarning'
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN String -> LibWarning'
UnknownField Int32
a
    Node
_ -> R LibWarning'
forall a. R a
malformed

instance EmbPrj LibPositionInfo where
  icod_ :: LibPositionInfo -> S Int32
icod_ = \case
    LibPositionInfo Maybe String
a LineNumber
b String
c -> Int32
-> (Maybe String -> LineNumber -> String -> LibPositionInfo)
-> Maybe String
-> LineNumber
-> String
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
0 Maybe String -> LineNumber -> String -> LibPositionInfo
LibPositionInfo Maybe String
a LineNumber
b String
c

  value :: Int32 -> R LibPositionInfo
value = (Node -> R LibPositionInfo) -> Int32 -> R LibPositionInfo
forall a. EmbPrj a => (Node -> R a) -> Int32 -> R a
vcase ((Node -> R LibPositionInfo) -> Int32 -> R LibPositionInfo)
-> (Node -> R LibPositionInfo) -> Int32 -> R LibPositionInfo
forall a b. (a -> b) -> a -> b
$ \case
    [Int32
0, Int32
a, Int32
b, Int32
c]   -> (Maybe String -> LineNumber -> String -> LibPositionInfo)
-> Int32 -> Int32 -> Int32 -> R LibPositionInfo
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Maybe String -> LineNumber -> String -> LibPositionInfo
LibPositionInfo Int32
a Int32
b Int32
c
    Node
_ -> R LibPositionInfo
forall a. R a
malformed

instance EmbPrj Doc where
  icod_ :: Doc -> S Int32
icod_ Doc
d = (String -> Doc) -> String -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
t -> Arrows (Domains t) (S Int32)
icodeN' (String -> Doc
forall a. HasCallStack => a
undefined :: String -> Doc) (Doc -> String
render Doc
d)

  value :: Int32 -> R Doc
value = (String -> Doc) -> Int32 -> R (CoDomain (String -> Doc))
forall t.
(VALU t (IsBase t), All EmbPrj (CoDomain t : Domains t)) =>
t -> Int32 -> R (CoDomain t)
valueN String -> Doc
text

instance EmbPrj PragmaOptions where
  icod_ :: PragmaOptions -> S Int32
icod_ = \case
    PragmaOptions Bool
a Bool
b Bool
c Verbosity
d Bool
e Bool
f Bool
g Bool
h Bool
i CutOff
j Bool
k Bool
l Bool
m WithDefault 'False
n Bool
o WithDefault 'True
p WithDefault 'True
q Bool
r Bool
s Bool
t Bool
u WithDefault 'False
v Bool
w Bool
x Bool
y Bool
z Bool
aa Bool
bb Bool
cc Bool
dd Bool
ee Bool
ff LineNumber
gg Bool
hh LineNumber
ii Bool
jj Bool
kk Bool
ll Bool
mm WarningMode
nn Bool
oo Bool
pp Bool
qq Bool
rr Bool
ss Bool
tt Bool
uu Bool
vv ->
      (Bool
 -> Bool
 -> Bool
 -> Verbosity
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> CutOff
 -> Bool
 -> Bool
 -> Bool
 -> WithDefault 'False
 -> Bool
 -> WithDefault 'True
 -> WithDefault 'True
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> WithDefault 'False
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> LineNumber
 -> Bool
 -> LineNumber
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> WarningMode
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> PragmaOptions)
-> Bool
-> Bool
-> Bool
-> Verbosity
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> CutOff
-> Bool
-> Bool
-> Bool
-> WithDefault 'False
-> Bool
-> WithDefault 'True
-> WithDefault 'True
-> Bool
-> Bool
-> Bool
-> Bool
-> WithDefault 'False
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> LineNumber
-> Bool
-> LineNumber
-> Bool
-> Bool
-> Bool
-> Bool
-> WarningMode
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
t -> Arrows (Domains t) (S Int32)
icodeN' Bool
-> Bool
-> Bool
-> Verbosity
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> CutOff
-> Bool
-> Bool
-> Bool
-> WithDefault 'False
-> Bool
-> WithDefault 'True
-> WithDefault 'True
-> Bool
-> Bool
-> Bool
-> Bool
-> WithDefault 'False
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> LineNumber
-> Bool
-> LineNumber
-> Bool
-> Bool
-> Bool
-> Bool
-> WarningMode
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> PragmaOptions
PragmaOptions Bool
a Bool
b Bool
c Verbosity
d Bool
e Bool
f Bool
g Bool
h Bool
i CutOff
j Bool
k Bool
l Bool
m WithDefault 'False
n Bool
o WithDefault 'True
p WithDefault 'True
q Bool
r Bool
s Bool
t Bool
u WithDefault 'False
v Bool
w Bool
x Bool
y Bool
z Bool
aa Bool
bb Bool
cc Bool
dd Bool
ee Bool
ff LineNumber
gg Bool
hh LineNumber
ii Bool
jj Bool
kk Bool
ll Bool
mm WarningMode
nn Bool
oo Bool
pp Bool
qq Bool
rr Bool
ss Bool
tt Bool
uu Bool
vv

  value :: Int32 -> R PragmaOptions
value = (Node -> R PragmaOptions) -> Int32 -> R PragmaOptions
forall a. EmbPrj a => (Node -> R a) -> Int32 -> R a
vcase ((Node -> R PragmaOptions) -> Int32 -> R PragmaOptions)
-> (Node -> R PragmaOptions) -> Int32 -> R PragmaOptions
forall a b. (a -> b) -> a -> b
$ \case
    [Int32
a, Int32
b, Int32
c, Int32
d, Int32
e, Int32
f, Int32
g, Int32
h, Int32
i, Int32
j, Int32
k, Int32
l, Int32
m, Int32
n, Int32
o, Int32
p, Int32
q, Int32
r, Int32
s, Int32
t, Int32
u, Int32
v, Int32
w, Int32
x, Int32
y, Int32
z, Int32
aa, Int32
bb, Int32
cc, Int32
dd, Int32
ee, Int32
ff, Int32
gg, Int32
hh, Int32
ii, Int32
jj, Int32
kk, Int32
ll, Int32
mm, Int32
nn, Int32
oo, Int32
pp, Int32
qq, Int32
rr, Int32
ss, Int32
tt, Int32
uu, Int32
vv] ->
      (Bool
 -> Bool
 -> Bool
 -> Verbosity
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> CutOff
 -> Bool
 -> Bool
 -> Bool
 -> WithDefault 'False
 -> Bool
 -> WithDefault 'True
 -> WithDefault 'True
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> WithDefault 'False
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> LineNumber
 -> Bool
 -> LineNumber
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> WarningMode
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> PragmaOptions)
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> Int32
-> R PragmaOptions
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Bool
-> Bool
-> Bool
-> Verbosity
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> CutOff
-> Bool
-> Bool
-> Bool
-> WithDefault 'False
-> Bool
-> WithDefault 'True
-> WithDefault 'True
-> Bool
-> Bool
-> Bool
-> Bool
-> WithDefault 'False
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> LineNumber
-> Bool
-> LineNumber
-> Bool
-> Bool
-> Bool
-> Bool
-> WarningMode
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> PragmaOptions
PragmaOptions Int32
a Int32
b Int32
c Int32
d Int32
e Int32
f Int32
g Int32
h Int32
i Int32
j Int32
k Int32
l Int32
m Int32
n Int32
o Int32
p Int32
q Int32
r Int32
s Int32
t Int32
u Int32
v Int32
w Int32
x Int32
y Int32
z Int32
aa Int32
bb Int32
cc Int32
dd Int32
ee Int32
ff Int32
gg Int32
hh Int32
ii Int32
jj Int32
kk Int32
ll Int32
mm Int32
nn Int32
oo Int32
pp Int32
qq Int32
rr Int32
ss Int32
tt Int32
uu Int32
vv
    Node
_ -> R PragmaOptions
forall a. R a
malformed

instance EmbPrj WarningMode where
  icod_ :: WarningMode -> S Int32
icod_ = \case
    WarningMode Set WarningName
a Bool
b -> (Set WarningName -> Bool -> WarningMode)
-> Set WarningName -> Bool -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
t -> Arrows (Domains t) (S Int32)
icodeN' Set WarningName -> Bool -> WarningMode
WarningMode Set WarningName
a Bool
b

  value :: Int32 -> R WarningMode
value = (Node -> R WarningMode) -> Int32 -> R WarningMode
forall a. EmbPrj a => (Node -> R a) -> Int32 -> R a
vcase ((Node -> R WarningMode) -> Int32 -> R WarningMode)
-> (Node -> R WarningMode) -> Int32 -> R WarningMode
forall a b. (a -> b) -> a -> b
$ \case
    [Int32
a, Int32
b]   -> (Set WarningName -> Bool -> WarningMode)
-> Int32 -> Int32 -> R WarningMode
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN Set WarningName -> Bool -> WarningMode
WarningMode Int32
a Int32
b
    Node
_ -> R WarningMode
forall a. R a
malformed

instance EmbPrj WarningName where
  icod_ :: WarningName -> S Int32
icod_ WarningName
x = String -> S Int32
forall a. EmbPrj a => a -> S Int32
icod_ (WarningName -> String
warningName2String WarningName
x)

  value :: Int32 -> R WarningName
value = (R WarningName
-> (WarningName -> R WarningName)
-> Maybe WarningName
-> R WarningName
forall b a. b -> (a -> b) -> Maybe a -> b
maybe R WarningName
forall a. R a
malformed WarningName -> R WarningName
forall (m :: * -> *) a. Monad m => a -> m a
return (Maybe WarningName -> R WarningName)
-> (String -> Maybe WarningName) -> String -> R WarningName
forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> Maybe WarningName
string2WarningName) (String -> R WarningName)
-> (Int32 -> ExceptT TypeError (StateT St IO) String)
-> Int32
-> R WarningName
forall (m :: * -> *) b c a.
Monad m =>
(b -> m c) -> (a -> m b) -> a -> m c
<=< Int32 -> ExceptT TypeError (StateT St IO) String
forall a. EmbPrj a => Int32 -> R a
value


instance EmbPrj CutOff where
  icod_ :: CutOff -> S Int32
icod_ = \case
    CutOff
DontCutOff -> CutOff -> Arrows (Domains CutOff) (S Int32)
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
t -> Arrows (Domains t) (S Int32)
icodeN' CutOff
DontCutOff
    CutOff LineNumber
a -> Int32 -> (LineNumber -> CutOff) -> LineNumber -> S Int32
forall t.
(ICODE t (IsBase t), Currying (Domains t) (S Int32),
 All EmbPrj (Domains t)) =>
Int32 -> t -> Arrows (Domains t) (S Int32)
icodeN Int32
0 LineNumber -> CutOff
CutOff LineNumber
a

  value :: Int32 -> R CutOff
value = (Node -> R CutOff) -> Int32 -> R CutOff
forall a. EmbPrj a => (Node -> R a) -> Int32 -> R a
vcase Node -> R CutOff
valu where
    valu :: Node -> R CutOff
valu [] = CutOff
-> Arrows (Constant Int32 (Domains CutOff)) (R (CoDomain CutOff))
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN CutOff
DontCutOff
    valu [Int32
0,Int32
a] = (LineNumber -> CutOff) -> Int32 -> R CutOff
forall t.
(VALU t (IsBase t),
 Currying (Constant Int32 (Domains t)) (R (CoDomain t)),
 All EmbPrj (Domains t)) =>
t -> Arrows (Constant Int32 (Domains t)) (R (CoDomain t))
valuN LineNumber -> CutOff
CutOff Int32
a
    valu Node
_ = R CutOff
forall a. R a
malformed