Safe Haskell | None |
---|---|
Language | Haskell2010 |
Lorentz
Synopsis
- ($) :: forall (r :: RuntimeRep) a (b :: TYPE r). (a -> b) -> a -> b
- class Bounded a where
- class Eq a
- return :: Monad m => a -> m a
- fromInteger :: Num a => Integer -> a
- class Eq a => Ord a
- fromString :: IsString a => String -> a
- pure :: Applicative f => a -> f a
- class Generic a
- fromLabel :: IsLabel x a => a
- class Semigroup a where
- class Semigroup a => Monoid a where
- data Bool
- data Integer
- data Natural
- data Maybe a
- data Either a b
- data ByteString
- data Text
- (.) :: (b -> c) -> (a -> b) -> a -> c
- data Map k a
- data Proxy (t :: k) = Proxy
- withDict :: HasDict c e => e -> (c => r) -> r
- data Set a
- class Default a where
- def :: a
- argDef :: forall (name :: Symbol) a. Name name -> a -> (name :? a) -> a
- argF :: forall (name :: Symbol) f a. Name name -> NamedF f a name -> f a
- arg :: forall (name :: Symbol) a. Name name -> (name :! a) -> a
- type (:!) (name :: Symbol) a = NamedF Identity a name
- type (:?) (name :: Symbol) a = NamedF Maybe a name
- type ($) (f :: k1 -> k) (a :: k1) = f a
- undefined :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => a
- error :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => Text -> a
- data Rec (a :: u -> Type) (b :: [u]) where
- concreteTypeDocHaskellRep :: (Typeable a, GenericIsoValue a, GTypeHasDoc (Rep a), HaveCommonTypeCtor b a) => TypeDocHaskellRep b
- concreteTypeDocHaskellRepUnsafe :: (Typeable a, GenericIsoValue a, GTypeHasDoc (Rep a)) => TypeDocHaskellRep b
- concreteTypeDocMichelsonRep :: forall k a (b :: k). (Typeable a, SingI (ToT a), HaveCommonTypeCtor b a) => TypeDocMichelsonRep b
- concreteTypeDocMichelsonRepUnsafe :: forall k a (b :: k). (Typeable a, SingI (ToT a)) => TypeDocMichelsonRep b
- customTypeDocMdReference :: (Text, DType) -> [DType] -> WithinParens -> Markdown
- dTypeDep :: TypeHasDoc t => SomeDocDefinitionItem
- genericTypeDocDependencies :: (Generic a, GTypeHasDoc (Rep a)) => Proxy a -> [SomeDocDefinitionItem]
- haskellAddNewtypeField :: Text -> TypeDocHaskellRep a -> TypeDocHaskellRep a
- haskellRepNoFields :: TypeDocHaskellRep a -> TypeDocHaskellRep a
- haskellRepStripFieldPrefix :: HasCallStack => TypeDocHaskellRep a -> TypeDocHaskellRep a
- homomorphicTypeDocHaskellRep :: (Generic a, GTypeHasDoc (Rep a)) => TypeDocHaskellRep a
- homomorphicTypeDocMdReference :: (Typeable t, TypeHasDoc t, IsHomomorphic t) => Proxy t -> WithinParens -> Markdown
- homomorphicTypeDocMichelsonRep :: SingI (ToT a) => TypeDocMichelsonRep a
- poly1TypeDocMdReference :: forall (t :: Type -> Type) r a. (r ~ t a, Typeable t, Each '[TypeHasDoc] '[r, a], IsHomomorphic t) => Proxy r -> WithinParens -> Markdown
- poly2TypeDocMdReference :: forall (t :: Type -> Type -> Type) r a b. (r ~ t a b, Typeable t, Each '[TypeHasDoc] '[r, a, b], IsHomomorphic t) => Proxy r -> WithinParens -> Markdown
- coerceContractRef :: ToT a ~ ToT b => ContractRef a -> ContractRef b
- data DType where
- DType :: forall a. TypeHasDoc a => Proxy a -> DType
- class HaveCommonTypeCtor (a :: k) (b :: k1)
- class IsHomomorphic (a :: k)
- data SomeTypeWithDoc where
- SomeTypeWithDoc :: forall td. TypeHasDoc td => Proxy td -> SomeTypeWithDoc
- type family TypeDocFieldDescriptions a :: FieldDescriptions
- class (Typeable a, SingI (TypeDocFieldDescriptions a), FieldDescriptionsValid (TypeDocFieldDescriptions a) a) => TypeHasDoc a where
- type TypeDocFieldDescriptions a :: FieldDescriptions
- typeDocName :: Proxy a -> Text
- typeDocMdDescription :: Markdown
- typeDocMdReference :: Proxy a -> WithinParens -> Markdown
- typeDocDependencies :: Proxy a -> [SomeDocDefinitionItem]
- typeDocHaskellRep :: TypeDocHaskellRep a
- typeDocMichelsonRep :: TypeDocMichelsonRep a
- type ConstructorFieldTypes dt = GFieldTypes (Rep dt)
- type InstrConstructC dt = (GenericIsoValue dt, GInstrConstruct (Rep dt))
- newtype BigMap k v = BigMap {}
- data ContractRef arg = ContractRef {
- crAddress :: Address
- crEntrypoint :: SomeEntrypointCall arg
- type EntrypointCall param arg = EntrypointCallT (ToT param) (ToT arg)
- class WellTypedToT a => IsoValue a where
- type family ToT a :: T
- type SomeEntrypointCall arg = SomeEntrypointCallT (ToT arg)
- type WellTypedIsoValue a = (WellTyped (ToT a), IsoValue a)
- pattern DefEpName :: EpName
- data EpName
- data Label (name :: Symbol) where
- Label :: forall (name :: Symbol). KnownSymbol name => Label name
- newtype ShouldHaveEntrypoints a = ShouldHaveEntrypoints {
- unHasEntrypoints :: a
- type Value = Value' Instr
- data Address
- data ChainId
- data EpAddress = EpAddress {}
- data KeyHash
- data MText
- data Mutez
- type Operation = Operation' Instr
- data PublicKey
- data Signature
- data Timestamp
- data SomeDocItem where
- SomeDocItem :: forall d. DocItem d => d -> SomeDocItem
- type DocGrouping = SubDoc -> SomeDocItem
- oneMutez :: Mutez
- timestampFromSeconds :: Integer -> Timestamp
- timestampFromUTCTime :: UTCTime -> Timestamp
- timestampQuote :: QuasiQuoter
- toMutez :: Word32 -> Mutez
- zeroMutez :: Mutez
- mt :: QuasiQuoter
- contractDocToMarkdown :: ContractDoc -> LText
- docDefinitionRef :: (DocItem d, DocItemPlacement d ~ 'DocItemInDefinitions) => Markdown -> d -> Markdown
- docItemPosition :: DocItem d => DocItemPos
- mdTocFromRef :: (DocItem d, DocItemReferenced d ~ 'True) => HeaderLevel -> Markdown -> d -> Markdown
- mkDGitRevision :: ExpQ
- morleyRepoSettings :: GitRepoSettings
- subDocToMarkdown :: HeaderLevel -> SubDoc -> Markdown
- data ContractDoc = ContractDoc {
- cdContents :: DocBlock
- cdDefinitions :: DocBlock
- cdDefinitionsSet :: Set SomeDocDefinitionItem
- cdDefinitionIds :: Set DocItemId
- data DAnchor = DAnchor Anchor
- data DComment = DComment Text
- data DDescription = DDescription Markdown
- data DGitRevision
- = DGitRevisionKnown DGitRevisionInfo
- | DGitRevisionUnknown
- data DocElem d = DocElem {}
- class (Typeable d, DOrd d) => DocItem d where
- type DocItemPlacement d :: DocItemPlacementKind
- type DocItemReferenced d :: DocItemReferencedKind
- docItemPos :: Natural
- docItemSectionName :: Maybe Text
- docItemSectionDescription :: Maybe Markdown
- docItemSectionNameStyle :: DocSectionNameStyle
- docItemRef :: d -> DocItemRef (DocItemPlacement d) (DocItemReferenced d)
- docItemToMarkdown :: HeaderLevel -> d -> Markdown
- docItemToToc :: HeaderLevel -> d -> Markdown
- docItemDependencies :: d -> [SomeDocDefinitionItem]
- docItemsOrder :: [d] -> [d]
- type family DocItemPlacement d :: DocItemPlacementKind
- type family DocItemReferenced d :: DocItemReferencedKind
- newtype DocItemId = DocItemId Text
- data DocItemPlacementKind
- newtype DocItemPos = DocItemPos (Natural, Text)
- data DocItemRef (p :: DocItemPlacementKind) (r :: DocItemReferencedKind) where
- data DocSection = DocItem d => DocSection (NonEmpty $ DocElem d)
- data DocSectionNameStyle
- newtype GitRepoSettings = GitRepoSettings {
- grsMkGitRevision :: Text -> Text
- data SomeDocDefinitionItem where
- SomeDocDefinitionItem :: forall d. (DocItem d, DocItemPlacement d ~ 'DocItemInDefinitions) => d -> SomeDocDefinitionItem
- newtype SubDoc = SubDoc DocBlock
- type Markdown = Builder
- insertTypeAnn :: forall (b :: T). TypeAnn -> Notes b -> Notes b
- mkUType :: forall (x :: T). SingI x => Notes x -> Type
- class GHasAnnotation a where
- gGetAnnotation :: FollowEntrypointFlag -> GenerateFieldAnnFlag -> (Notes (GValueType a), FieldAnn)
- class HasAnnotation a where
- getAnnotation :: FollowEntrypointFlag -> Notes (ToT a)
- data GenerateFieldAnnFlag
- data FollowEntrypointFlag
- gGetAnnotationNoField :: forall a. (GHasAnnotation (Rep a), GValueType (Rep a) ~ ToT a) => FollowEntrypointFlag -> Notes (ToT a)
- type NiceComparable n = (KnownValue n, Comparable (ToT n))
- type NicePrintedValue a = (KnownValue a, ProperPrintedValBetterErrors (ToT a))
- type NiceFullPackedValue a = (NicePackedValue a, NiceUnpackedValue a)
- type NiceUnpackedValue a = (KnownValue a, ProperUnpackedValBetterErrors (ToT a))
- type NicePackedValue a = (KnownValue a, ProperPackedValBetterErrors (ToT a))
- type NiceConstant a = (KnownValue a, ProperConstantBetterErrors (ToT a))
- type NiceStorage a = (HasAnnotation a, KnownValue a, ProperStorageBetterErrors (ToT a))
- type NiceParameter a = (KnownValue a, ProperParameterBetterErrors (ToT a))
- class (IsoValue a, HasNoNestedBigMaps (ToT a)) => CanHaveBigMap a
- class (IsoValue a, ForbidBigMap (ToT a)) => NoBigMap a
- class (IsoValue a, ForbidContract (ToT a)) => NoContractType a
- class (IsoValue a, ForbidOp (ToT a)) => NoOperation a
- class (IsoValue a, Typeable a) => KnownValue a
- niceParameterEvi :: forall a. NiceParameter a :- ParameterScope (ToT a)
- niceStorageEvi :: forall a. NiceStorage a :- StorageScope (ToT a)
- niceConstantEvi :: forall a. NiceConstant a :- ConstantScope (ToT a)
- nicePackedValueEvi :: forall a. NicePackedValue a :- PackedValScope (ToT a)
- niceUnpackedValueEvi :: forall a. NiceUnpackedValue a :- UnpackedValScope (ToT a)
- nicePrintedValueEvi :: forall a. NicePrintedValue a :- PrintedValScope (ToT a)
- data EpdNone
- type family ParameterContainsEntrypoints param (fields :: [NamedEp]) :: Constraint where ...
- type (:>) n ty = 'NamedEp n ty
- type HasEntrypointOfType param con exp = (GetEntrypointArgCustom param ('Just con) ~ exp, ParameterDeclaresEntrypoints param)
- newtype TrustEpName = TrustEpName EpName
- type HasDefEntrypointArg cp defEpName defArg = (defEpName ~ EntrypointRef 'Nothing, HasEntrypointArg cp defEpName defArg)
- class HasEntrypointArg cp name arg where
- useHasEntrypointArg :: name -> (Dict (ParameterScope (ToT arg)), EpName)
- type family GetEntrypointArgCustom cp mname :: Type where ...
- data EntrypointRef (mname :: Maybe Symbol) where
- CallDefault :: EntrypointRef 'Nothing
- Call :: NiceEntrypointName name => EntrypointRef ('Just name)
- type NoExplicitDefaultEntrypoint cp = Eval (LookupParameterEntrypoint cp DefaultEpName) ~ 'Nothing
- type ForbidExplicitDefaultEntrypoint cp = Eval (LiftM3 UnMaybe (Pure (Pure (() :: Constraint))) (TError ('Text "Parameter used here must have no explicit \"default\" entrypoint" :$$: (('Text "In parameter type `" :<>: 'ShowType cp) :<>: 'Text "`"))) (LookupParameterEntrypoint cp DefaultEpName))
- type GetDefaultEntrypointArg cp = Eval (LiftM2 FromMaybe (Pure cp) (LookupParameterEntrypoint cp DefaultEpName))
- type GetEntrypointArg cp name = Eval (LiftM2 FromMaybe (TError (('Text "Entrypoint not found: " :<>: 'ShowType name) :$$: (('Text "In contract parameter `" :<>: 'ShowType cp) :<>: 'Text "`"))) (LookupParameterEntrypoint cp name))
- type family LookupParameterEntrypoint (cp :: Type) :: Symbol -> Exp (Maybe Type) where ...
- type family AllParameterEntrypoints (cp :: Type) :: [(Symbol, Type)] where ...
- type ParameterDeclaresEntrypoints cp = (If (CanHaveEntrypoints cp) (ParameterHasEntrypoints cp) (() :: Constraint), NiceParameter cp, EntrypointsDerivation (GetParameterEpDerivation cp) cp)
- class (EntrypointsDerivation (ParameterEntrypointsDerivation cp) cp, RequireAllUniqueEntrypoints cp) => ParameterHasEntrypoints cp where
- type ParameterEntrypointsDerivation cp :: Type
- type RequireAllUniqueEntrypoints cp = RequireAllUniqueEntrypoints' (ParameterEntrypointsDerivation cp) cp
- class EntrypointsDerivation deriv cp where
- type EpdAllEntrypoints deriv cp :: [(Symbol, Type)]
- type EpdLookupEntrypoint deriv cp :: Symbol -> Exp (Maybe Type)
- epdNotes :: (Notes (ToT cp), RootAnn)
- epdCall :: ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint deriv cp name))
- epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints deriv cp)
- parameterEntrypointsToNotes :: forall cp. ParameterDeclaresEntrypoints cp => ParamNotes (ToT cp)
- parameterEntrypointCall :: forall cp name. ParameterDeclaresEntrypoints cp => Label name -> EntrypointCall cp (GetEntrypointArg cp name)
- parameterEntrypointCallDefault :: forall cp. ParameterDeclaresEntrypoints cp => EntrypointCall cp (GetDefaultEntrypointArg cp)
- sepcCallRootChecked :: forall cp. (NiceParameter cp, ForbidExplicitDefaultEntrypoint cp) => SomeEntrypointCall cp
- eprName :: forall mname. EntrypointRef mname -> EpName
- parameterEntrypointCallCustom :: forall cp mname. ParameterDeclaresEntrypoints cp => EntrypointRef mname -> EntrypointCall cp (GetEntrypointArgCustom cp mname)
- type NiceParameterFull cp = (Typeable cp, ParameterDeclaresEntrypoints cp)
- class MapLorentzInstr instr where
- mapLorentzInstr :: (forall i o. (i :-> o) -> i :-> o) -> instr -> instr
- type Lambda i o = '[i] :-> '[o]
- type (&) (a :: Type) (b :: [Type]) = a ': b
- data SomeContractCode where
- SomeContractCode :: (NiceParameterFull cp, NiceStorage st) => ContractCode cp st -> SomeContractCode
- type ContractCode cp st = '[(cp, st)] :-> ContractOut st
- type ContractOut st = '[([Operation], st)]
- type (%>) = (:->)
- newtype (inp :: [Type]) :-> (out :: [Type]) = LorentzInstr {
- unLorentzInstr :: RemFail Instr (ToTs inp) (ToTs out)
- pattern FI :: (forall out'. Instr (ToTs inp) out') -> inp :-> out
- pattern I :: Instr (ToTs inp) (ToTs out) -> inp :-> out
- iGenericIf :: (forall s'. Instr (ToTs a) s' -> Instr (ToTs b) s' -> Instr (ToTs c) s') -> (a :-> s) -> (b :-> s) -> c :-> s
- iAnyCode :: (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- iNonFailingCode :: HasCallStack => (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- iMapAnyCode :: (forall o'. Instr (ToTs i1) o' -> Instr (ToTs i2) o') -> (i1 :-> o) -> i2 :-> o
- iForceNotFail :: (i :-> o) -> i :-> o
- iWithVarAnnotations :: HasCallStack => [Text] -> (inp :-> out) -> inp :-> out
- (#) :: (a :-> b) -> (b :-> c) -> a :-> c
- (##) :: (a :-> b) -> (b :-> c) -> a :-> c
- parseLorentzValue :: forall v. KnownValue v => Text -> Either ParseLorentzError v
- transformStringsLorentz :: Bool -> (MText -> MText) -> (inp :-> out) -> inp :-> out
- transformBytesLorentz :: Bool -> (ByteString -> ByteString) -> (inp :-> out) -> inp :-> out
- optimizeLorentzWithConf :: OptimizerConf -> (inp :-> out) -> inp :-> out
- optimizeLorentz :: (inp :-> out) -> inp :-> out
- type Entrypoint_ store = '[store] :-> ContractOut store
- type Entrypoint param store = '[param, store] :-> ContractOut store
- class FromContractRef (cp :: Type) (contract :: Type) where
- fromContractRef :: ContractRef cp -> contract
- class ToContractRef (cp :: Type) (contract :: Type) where
- toContractRef :: HasCallStack => contract -> ContractRef cp
- class ToTAddress (cp :: Type) (a :: Type) where
- toTAddress :: a -> TAddress cp
- class ToAddress a where
- newtype FutureContract arg = FutureContract {
- unFutureContract :: ContractRef arg
- newtype TAddress p = TAddress {}
- callingTAddress :: forall cp mname. NiceParameterFull cp => TAddress cp -> EntrypointRef mname -> ContractRef (GetEntrypointArgCustom cp mname)
- callingDefTAddress :: forall cp. NiceParameterFull cp => TAddress cp -> ContractRef (GetDefaultEntrypointArg cp)
- toTAddress_ :: forall cp addr s. ToTAddress_ cp addr => (addr ': s) :-> (TAddress cp ': s)
- convertContractRef :: forall cp contract2 contract1. (ToContractRef cp contract1, FromContractRef cp contract2) => contract1 -> contract2
- stackRef :: forall (gn :: Nat) st n. (n ~ ToPeano gn, SingI n, KnownPeano n, RequireLongerThan st n) => PrintComment st
- printComment :: PrintComment (ToTs s) -> s :-> s
- testAssert :: (Typeable (ToTs out), HasCallStack) => Text -> PrintComment (ToTs inp) -> (inp :-> (Bool & out)) -> inp :-> inp
- stackType :: forall s. s :-> s
- lPackValue :: forall a. NicePackedValue a => a -> ByteString
- lUnpackValue :: forall a. NiceUnpackedValue a => ByteString -> Either UnpackError a
- lEncodeValue :: forall a. NicePrintedValue a => a -> ByteString
- valueToScriptExpr :: forall t. NicePackedValue t => t -> ByteString
- expressionToScriptExpr :: Expression -> ByteString
- class (EDivOp (ToT n) (ToT m), NiceComparable n, NiceComparable m, ToT (EDivOpResHs n m) ~ EDivOpRes (ToT n) (ToT m), ToT (EModOpResHs n m) ~ EModOpRes (ToT n) (ToT m)) => EDivOpHs n m where
- type EDivOpResHs n m :: Type
- type EModOpResHs n m :: Type
- class SliceOp (ToT c) => SliceOpHs c
- class ConcatOp (ToT c) => ConcatOpHs c
- class (GetOp (ToT c), ToT (GetOpKeyHs c) ~ GetOpKey (ToT c), ToT (GetOpValHs c) ~ GetOpVal (ToT c)) => GetOpHs c where
- type GetOpKeyHs c :: Type
- type GetOpValHs c :: Type
- class (UpdOp (ToT c), ToT (UpdOpKeyHs c) ~ UpdOpKey (ToT c), ToT (UpdOpParamsHs c) ~ UpdOpParams (ToT c)) => UpdOpHs c where
- type UpdOpKeyHs c :: Type
- type UpdOpParamsHs c :: Type
- class SizeOp (ToT c) => SizeOpHs c
- class (IterOp (ToT c), ToT (IterOpElHs c) ~ IterOpEl (ToT c)) => IterOpHs c where
- type IterOpElHs c :: Type
- class (MapOp (ToT c), ToT (MapOpInpHs c) ~ MapOpInp (ToT c), ToT (MapOpResHs c ()) ~ MapOpRes (ToT c) (ToT ())) => MapOpHs c where
- type MapOpInpHs c :: Type
- type MapOpResHs c :: Type -> Type
- type family IsoMapOpRes c b where ...
- class (MemOp (ToT c), ToT (MemOpKeyHs c) ~ MemOpKey (ToT c)) => MemOpHs c where
- type MemOpKeyHs c :: Type
- cstr :: forall (n :: Nat). KnownNat n => [Natural] -> CstrDepth
- customGeneric :: String -> GenericStrategy -> Q [Dec]
- fld :: forall (n :: Nat). KnownNat n => Natural
- leftBalanced :: GenericStrategy
- leftComb :: GenericStrategy
- rightBalanced :: GenericStrategy
- rightComb :: GenericStrategy
- withDepths :: [CstrDepth] -> GenericStrategy
- type List = []
- data EpdWithRoot (r :: Symbol) epd
- data EpdDelegate
- data EpdRecursive
- data EpdPlain
- class (UnaryArithOp aop (ToT n), NiceComparable n, ToT (UnaryArithResHs aop n) ~ UnaryArithRes aop (ToT n)) => UnaryArithOpHs (aop :: Type) (n :: Type) where
- type UnaryArithResHs aop n :: Type
- class (ArithOp aop (ToT n) (ToT m), NiceComparable n, NiceComparable m, ToT (ArithResHs aop n m) ~ ArithRes aop (ToT n) (ToT m)) => ArithOpHs (aop :: Type) (n :: Type) (m :: Type) where
- type ArithResHs aop n m :: Type
- class ToT s ~ ToT (Unwrappable s) => Wrappable (s :: Type) where
- type Unwrappable s :: Type
- newtype ParameterWrapper (deriv :: Type) cp = ParameterWrapper {
- unParameterWraper :: cp
- data Contract cp st = Contract {}
- data CompilationOptions = CompilationOptions {
- coOptimizerConf :: Maybe OptimizerConf
- coStringTransformer :: (Bool, MText -> MText)
- coBytesTransformer :: (Bool, ByteString -> ByteString)
- defaultCompilationOptions :: CompilationOptions
- compileLorentz :: (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- compileLorentzWithOptions :: CompilationOptions -> (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- defaultContract :: ContractCode cp st -> Contract cp st
- compileLorentzContract :: forall cp st. (NiceParameterFull cp, NiceStorage st) => Contract cp st -> Contract (ToT cp) (ToT st)
- interpretLorentzInstr :: (IsoValuesStack inp, IsoValuesStack out) => ContractEnv -> (inp :-> out) -> Rec Identity inp -> Either MichelsonFailed (Rec Identity out)
- interpretLorentzLambda :: (IsoValue inp, IsoValue out) => ContractEnv -> Lambda inp out -> inp -> Either MichelsonFailed out
- analyzeLorentz :: (inp :-> out) -> AnalyzerRes
- printLorentzValue :: forall v. NicePrintedValue v => Bool -> v -> LText
- printLorentzContract :: forall cp st. (NiceParameterFull cp, NiceStorage st) => Bool -> Contract cp st -> LText
- class NonZero t where
- class LorentzFunctor (c :: Type -> Type) where
- lmap :: KnownValue b => ((a ': s) :-> (b ': s)) -> (c a ': s) :-> (c b ': s)
- type ConstraintDIPNLorentz (n :: Peano) (inp :: [Type]) (out :: [Type]) (s :: [Type]) (s' :: [Type]) = (ConstraintDIPN n (ToTs inp) (ToTs out) (ToTs s) (ToTs s'), ConstraintDIPN' Type n inp out s s')
- type ConstraintDUGLorentz (n :: Peano) (inp :: [Type]) (out :: [Type]) (a :: Type) = (ConstraintDUG n (ToTs inp) (ToTs out) (ToT a), ConstraintDUG' Type n inp out a)
- type ConstraintDIGLorentz (n :: Peano) (inp :: [Type]) (out :: [Type]) (a :: Type) = (ConstraintDIG n (ToTs inp) (ToTs out) (ToT a), ConstraintDIG' Type n inp out a)
- nop :: s :-> s
- justComment :: Text -> s :-> s
- comment :: CommentType -> s :-> s
- commentAroundFun :: Text -> (i :-> o) -> i :-> o
- commentAroundStmt :: Text -> (i :-> o) -> i :-> o
- drop :: (a & s) :-> s
- dropN :: forall (n :: Nat) (s :: [Type]). (SingI (ToPeano n), KnownPeano (ToPeano n), RequireLongerOrSameLength (ToTs s) (ToPeano n), Drop (ToPeano n) (ToTs s) ~ ToTs (Drop (ToPeano n) s)) => s :-> Drop (ToPeano n) s
- dup :: (a & s) :-> (a & (a & s))
- swap :: (a & (b & s)) :-> (b & (a & s))
- digPeano :: forall (n :: Peano) inp out a. ConstraintDIGLorentz n inp out a => inp :-> out
- dig :: forall (n :: Nat) inp out a. ConstraintDIGLorentz (ToPeano n) inp out a => inp :-> out
- dugPeano :: forall (n :: Peano) inp out a. ConstraintDUGLorentz n inp out a => inp :-> out
- dug :: forall (n :: Nat) inp out a. ConstraintDUGLorentz (ToPeano n) inp out a => inp :-> out
- push :: forall t s. NiceConstant t => t -> s :-> (t & s)
- some :: (a & s) :-> (Maybe a & s)
- none :: forall a s. KnownValue a => s :-> (Maybe a & s)
- unit :: s :-> (() & s)
- ifNone :: (s :-> s') -> ((a & s) :-> s') -> (Maybe a & s) :-> s'
- pair :: (a & (b & s)) :-> ((a, b) & s)
- car :: ((a, b) & s) :-> (a & s)
- cdr :: ((a, b) & s) :-> (b & s)
- left :: forall a b s. KnownValue b => (a & s) :-> (Either a b & s)
- right :: forall a b s. KnownValue a => (b & s) :-> (Either a b & s)
- ifLeft :: ((a & s) :-> s') -> ((b & s) :-> s') -> (Either a b & s) :-> s'
- nil :: KnownValue p => s :-> (List p & s)
- cons :: (a & (List a & s)) :-> (List a & s)
- ifCons :: ((a & (List a & s)) :-> s') -> (s :-> s') -> (List a & s) :-> s'
- size :: SizeOpHs c => (c & s) :-> (Natural & s)
- emptySet :: NiceComparable e => s :-> (Set e & s)
- emptyMap :: (NiceComparable k, KnownValue v) => s :-> (Map k v & s)
- emptyBigMap :: (NiceComparable k, KnownValue v) => s :-> (BigMap k v & s)
- map :: (MapOpHs c, IsoMapOpRes c b, KnownValue b, HasCallStack) => ((MapOpInpHs c & s) :-> (b & s)) -> (c & s) :-> (MapOpResHs c b & s)
- iter :: (IterOpHs c, HasCallStack) => ((IterOpElHs c & s) :-> s) -> (c & s) :-> s
- mem :: MemOpHs c => (MemOpKeyHs c & (c & s)) :-> (Bool & s)
- get :: (GetOpHs c, KnownValue (GetOpValHs c)) => (GetOpKeyHs c & (c & s)) :-> (Maybe (GetOpValHs c) & s)
- update :: UpdOpHs c => (UpdOpKeyHs c & (UpdOpParamsHs c & (c & s))) :-> (c & s)
- if_ :: (s :-> s') -> (s :-> s') -> (Bool & s) :-> s'
- loop :: (s :-> (Bool & s)) -> (Bool & s) :-> s
- loopLeft :: ((a & s) :-> (Either a b & s)) -> (Either a b & s) :-> (b & s)
- lambda :: ZipInstrs [i, o] => (i :-> o) -> s :-> ((i :-> o) & s)
- exec :: (a & (Lambda a b & s)) :-> (b & s)
- execute :: forall i o s. Each [KnownList, ZipInstr] [i, o] => ((i :-> o) ': (i ++ s)) :-> (o ++ s)
- apply :: forall a b c s. (NiceConstant a, KnownValue b) => (a & (Lambda (a, b) c & s)) :-> (Lambda b c & s)
- dip :: forall a s s'. HasCallStack => (s :-> s') -> (a & s) :-> (a & s')
- dipNPeano :: forall (n :: Peano) (inp :: [Type]) (out :: [Type]) (s :: [Type]) (s' :: [Type]). ConstraintDIPNLorentz n inp out s s' => (s :-> s') -> inp :-> out
- dipN :: forall (n :: Nat) (inp :: [Type]) (out :: [Type]) (s :: [Type]) (s' :: [Type]). ConstraintDIPNLorentz (ToPeano n) inp out s s' => (s :-> s') -> inp :-> out
- failWith :: KnownValue a => (a & s) :-> t
- cast :: KnownValue a => (a & s) :-> (a & s)
- pack :: forall a s. NicePackedValue a => (a & s) :-> (ByteString & s)
- unpack :: forall a s. NiceUnpackedValue a => (ByteString & s) :-> (Maybe a & s)
- concat :: ConcatOpHs c => (c & (c & s)) :-> (c & s)
- concat' :: ConcatOpHs c => (List c & s) :-> (c & s)
- slice :: (SliceOpHs c, KnownValue c) => (Natural & (Natural & (c & s))) :-> (Maybe c & s)
- isNat :: (Integer & s) :-> (Maybe Natural & s)
- add :: ArithOpHs Add n m => (n & (m & s)) :-> (ArithResHs Add n m & s)
- sub :: ArithOpHs Sub n m => (n & (m & s)) :-> (ArithResHs Sub n m & s)
- rsub :: ArithOpHs Sub n m => (m & (n & s)) :-> (ArithResHs Sub n m & s)
- mul :: ArithOpHs Mul n m => (n & (m & s)) :-> (ArithResHs Mul n m & s)
- ediv :: EDivOpHs n m => (n & (m & s)) :-> (Maybe (EDivOpResHs n m, EModOpResHs n m) & s)
- abs :: UnaryArithOpHs Abs n => (n & s) :-> (UnaryArithResHs Abs n & s)
- neg :: UnaryArithOpHs Neg n => (n & s) :-> (UnaryArithResHs Neg n & s)
- lsl :: ArithOpHs Lsl n m => (n & (m & s)) :-> (ArithResHs Lsl n m & s)
- lsr :: ArithOpHs Lsr n m => (n & (m & s)) :-> (ArithResHs Lsr n m & s)
- or :: ArithOpHs Or n m => (n & (m & s)) :-> (ArithResHs Or n m & s)
- and :: ArithOpHs And n m => (n & (m & s)) :-> (ArithResHs And n m & s)
- xor :: ArithOpHs Xor n m => (n & (m & s)) :-> (ArithResHs Xor n m & s)
- not :: UnaryArithOpHs Not n => (n & s) :-> (UnaryArithResHs Not n & s)
- compare :: NiceComparable n => (n & (n & s)) :-> (Integer & s)
- eq0 :: UnaryArithOpHs Eq' n => (n & s) :-> (UnaryArithResHs Eq' n & s)
- neq0 :: UnaryArithOpHs Neq n => (n & s) :-> (UnaryArithResHs Neq n & s)
- lt0 :: UnaryArithOpHs Lt n => (n & s) :-> (UnaryArithResHs Lt n & s)
- gt0 :: UnaryArithOpHs Gt n => (n & s) :-> (UnaryArithResHs Gt n & s)
- le0 :: UnaryArithOpHs Le n => (n & s) :-> (UnaryArithResHs Le n & s)
- ge0 :: UnaryArithOpHs Ge n => (n & s) :-> (UnaryArithResHs Ge n & s)
- int :: (Natural & s) :-> (Integer & s)
- self :: forall p s. (NiceParameterFull p, ForbidExplicitDefaultEntrypoint p) => s :-> (ContractRef p & s)
- selfCalling :: forall p mname s. NiceParameterFull p => EntrypointRef mname -> s :-> (ContractRef (GetEntrypointArgCustom p mname) & s)
- contract :: forall p addr s. (NiceParameterFull p, ForbidExplicitDefaultEntrypoint p, ToTAddress_ p addr) => (addr & s) :-> (Maybe (ContractRef p) & s)
- contractCalling :: forall cp epRef epArg addr s. (HasEntrypointArg cp epRef epArg, ToTAddress_ cp addr) => epRef -> (addr & s) :-> (Maybe (ContractRef epArg) & s)
- contractCallingUnsafe :: forall arg s. NiceParameter arg => EpName -> (Address & s) :-> (Maybe (ContractRef arg) & s)
- runFutureContract :: forall p s. NiceParameter p => (FutureContract p & s) :-> (Maybe (ContractRef p) & s)
- epAddressToContract :: forall p s. NiceParameter p => (EpAddress & s) :-> (Maybe (ContractRef p) & s)
- transferTokens :: forall p s. NiceParameter p => (p & (Mutez & (ContractRef p & s))) :-> (Operation & s)
- setDelegate :: (Maybe KeyHash & s) :-> (Operation & s)
- createContract :: forall p g s. (NiceStorage g, NiceParameterFull p) => Contract p g -> (Maybe KeyHash & (Mutez & (g & s))) :-> (Operation & (Address & s))
- implicitAccount :: (KeyHash & s) :-> (ContractRef () & s)
- now :: s :-> (Timestamp & s)
- amount :: s :-> (Mutez & s)
- balance :: s :-> (Mutez & s)
- checkSignature :: (PublicKey & (Signature & (ByteString & s))) :-> (Bool & s)
- sha256 :: (ByteString & s) :-> (ByteString & s)
- sha512 :: (ByteString & s) :-> (ByteString & s)
- blake2B :: (ByteString & s) :-> (ByteString & s)
- hashKey :: (PublicKey & s) :-> (KeyHash & s)
- source :: s :-> (Address & s)
- sender :: s :-> (Address & s)
- address :: (ContractRef a & s) :-> (Address & s)
- chainId :: s :-> (ChainId & s)
- framed :: forall s i o. (KnownList i, KnownList o) => (i :-> o) -> (i ++ s) :-> (o ++ s)
- failingWhenPresent :: forall c k s v st e. (MemOpHs c, k ~ MemOpKeyHs c, KnownValue e, st ~ (k & (v & (c & s)))) => (forall s0. (k ': s0) :-> (e ': s0)) -> st :-> st
- updateNew :: forall c k s e. (UpdOpHs c, MemOpHs c, k ~ UpdOpKeyHs c, k ~ MemOpKeyHs c, KnownValue e) => (forall s0. (k ': s0) :-> (e ': s0)) -> (k & (UpdOpParamsHs c & (c & s))) :-> (c & s)
- dupT :: forall a st. DupT st a st => st :-> (a ': st)
- dipT :: forall a inp dinp dout out. DipT inp a inp dinp dout out => (dinp :-> dout) -> inp :-> out
- dropT :: forall a inp dinp dout out. (DipT inp a inp dinp dout out, dinp ~ (a ': dout)) => inp :-> out
- data DEntrypointExample = forall t.ParameterScope t => DEntrypointExample (Value t)
- doc :: DocItem di => di -> s :-> s
- docGroup :: DocGrouping -> (inp :-> out) -> inp :-> out
- docStorage :: forall storage s. TypeHasDoc storage => s :-> s
- contractName :: Text -> (inp :-> out) -> inp :-> out
- buildLorentzDoc :: (inp :-> out) -> ContractDoc
- contractGeneral :: (inp :-> out) -> inp :-> out
- contractGeneralDefault :: s :-> s
- buildLorentzDocWithGitRev :: DGitRevision -> (inp :-> out) -> ContractDoc
- renderLorentzDoc :: (inp :-> out) -> LText
- renderLorentzDocWithGitRev :: DGitRevision -> (inp :-> out) -> LText
- cutLorentzNonDoc :: (inp :-> out) -> s :-> s
- mkDEntrypointExample :: forall a. NiceParameter a => a -> DEntrypointExample
- data DThrows where
- DThrows :: ErrorHasDoc e => Proxy e -> DThrows
- data DError where
- DError :: ErrorHasDoc e => Proxy e -> DError
- class (KnownSymbol tag, TypeHasDoc (ErrorArg tag), IsError (CustomError tag)) => CustomErrorHasDoc tag where
- data ErrorClass
- type RequireNoArgError tag msg = (TypeErrorUnless (ErrorArg tag == ()) msg, msg ~ ('Text "Expected no-arg error, but given error requires argument of type " :<>: 'ShowType (ErrorArg tag)))
- data CustomError (tag :: Symbol) = CustomError {}
- type family ErrorArg (tag :: Symbol) :: Type
- data SomeError = forall e.(IsError e, Eq e) => SomeError e
- data UnspecifiedError = UnspecifiedError
- class Typeable e => ErrorHasDoc (e :: Type) where
- class (Typeable e, ErrorHasDoc e) => IsError e where
- errorToVal :: e -> (forall t. ErrorScope t => Value t -> r) -> r
- errorFromVal :: KnownT t => Value t -> Either Text e
- type ErrorScope t = (Typeable t, ConstantScope t)
- isoErrorToVal :: (KnownError e, IsoValue e) => e -> (forall t. ErrorScope t => Value t -> r) -> r
- isoErrorFromVal :: (Typeable t, Typeable (ToT e), IsoValue e) => Value t -> Either Text e
- failUsing :: forall e s t. IsError e => e -> s :-> t
- failUnexpected :: MText -> s :-> t
- customErrorDocHaskellRepGeneral :: (SingI (ToT (ErrorArg tag)), IsError (CustomError tag), TypeHasDoc (ErrorArg tag), CustomErrorHasDoc tag) => Text -> Proxy tag -> Markdown
- errorTagToMText :: Label tag -> MText
- errorTagToText :: forall tag. KnownSymbol tag => Text
- failCustom :: forall tag err s any. (err ~ ErrorArg tag, CustomErrorHasDoc tag, KnownError err) => Label tag -> (err ': s) :-> any
- failCustom_ :: forall tag s any notVoidErrorMsg. (RequireNoArgError tag notVoidErrorMsg, CustomErrorHasDoc tag) => Label tag -> s :-> any
- typeDocMdDescriptionReferToError :: forall e. IsError e => Markdown
- entrypointDoc :: QuasiQuoter
- errorDoc :: QuasiQuoter
- typeDoc :: QuasiQuoter
- type ErrorTagExclusions = HashSet MText
- type ErrorTagMap = Bimap Natural MText
- gatherErrorTags :: (inp :-> out) -> HashSet MText
- addNewErrorTags :: ErrorTagMap -> HashSet MText -> ErrorTagMap
- buildErrorTagMap :: HashSet MText -> ErrorTagMap
- excludeErrorTags :: HasCallStack => ErrorTagExclusions -> ErrorTagMap -> ErrorTagMap
- applyErrorTagMap :: HasCallStack => ErrorTagMap -> (inp :-> out) -> inp :-> out
- applyErrorTagMapWithExclusions :: HasCallStack => ErrorTagMap -> ErrorTagExclusions -> (inp :-> out) -> inp :-> out
- useNumericErrors :: HasCallStack => (inp :-> out) -> (inp :-> out, ErrorTagMap)
- errorFromValNumeric :: (KnownT t, IsError e) => ErrorTagMap -> Value t -> Either Text e
- errorToValNumeric :: IsError e => ErrorTagMap -> e -> (forall t. ErrorScope t => Value t -> r) -> r
- data Empty
- absurd_ :: (Empty ': s) :-> s'
- type Coercible_ a b = (MichelsonCoercible a b, CanCastTo a b, CanCastTo b a)
- type Castable_ a b = (MichelsonCoercible a b, CanCastTo a b)
- class CanCastTo a b where
- type MichelsonCoercible a b = ToT a ~ ToT b
- forcedCoerce :: Coercible a b => a -> b
- forcedCoerce_ :: MichelsonCoercible a b => (a & s) :-> (b & s)
- gForcedCoerce_ :: MichelsonCoercible (t a) (t b) => (t a ': s) :-> (t b ': s)
- fakeCoerce :: s1 :-> s2
- fakeCoercing :: (s1 :-> s2) -> s1' :-> s2'
- coerceWrap :: forall a s. Wrappable a => (Unwrappable a ': s) :-> (a ': s)
- coerceUnwrap :: forall a s. Wrappable a => (a ': s) :-> (Unwrappable a ': s)
- toNamed :: Label name -> (a ': s) :-> (NamedF Identity a name ': s)
- fromNamed :: Label name -> (NamedF Identity a name ': s) :-> (a ': s)
- checkedCoerce :: forall a b. (CanCastTo a b, Coercible a b) => a -> b
- checkedCoerce_ :: forall a b s. Castable_ a b => (a ': s) :-> (b ': s)
- checkedCoercing_ :: forall a b s. Coercible_ a b => ((b ': s) :-> (b ': s)) -> (a ': s) :-> (a ': s)
- allowCheckedCoerceTo :: forall b a. Dict (CanCastTo a b)
- allowCheckedCoerce :: forall a b. Dict (CanCastTo a b, CanCastTo b a)
- castDummyG :: (Generic a, Generic b, GCanCastTo (Rep a) (Rep b)) => Proxy a -> Proxy b -> ()
- type PickMarkedFields marker template = GPickMarkedFields marker (Rep template)
- type GetUStoreFieldMarker store name = FSMarker (GetUStore name store)
- type GetUStoreField store name = FSValue (GetUStore name store)
- type GetUStoreValue store name = MSValue (GetUStore name store)
- type GetUStoreKey store name = MSKey (GetUStore name store)
- class KnownUStoreMarker (marker :: UStoreMarkerType) where
- type ShowUStoreField marker v :: ErrorMessage
- mkFieldMarkerUKey :: MText -> ByteString
- type UStoreField = UStoreFieldExt UMarkerPlainField
- type UStoreMarkerType = UStoreMarker -> Type
- newtype UStoreFieldExt (m :: UStoreMarkerType) (v :: Type) = UStoreField {
- unUStoreField :: v
- newtype k |~> v = UStoreSubMap {
- unUStoreSubMap :: Map k v
- data UStore (a :: Type)
- type UStoreTraversable way a = (Generic a, GUStoreTraversable way (Rep a), UStoreTraversalWay way)
- class KnownUStoreMarker marker => UStoreMarkerHasDoc (marker :: UStoreMarkerType) where
- ustoreMarkerKeyEncoding :: Text -> Text
- class Typeable template => UStoreTemplateHasDoc template where
- type MigrationScript_ = MigrationScript SomeUTemplate SomeUTemplate
- newtype MigrationScript (oldStore :: Type) (newStore :: Type) = MigrationScript {}
- data UStoreMigration (oldTempl :: Type) (newTempl :: Type)
- migrationToLambda :: UStoreMigration oldTemplate newTemplate -> Lambda (UStore oldTemplate) (UStore newTemplate)
- mkUStoreMigration :: Lambda (MUStore oldTempl newTempl (BuildDiff oldTempl newTempl) '[]) (MUStore oldTempl newTempl '[] _1) -> UStoreMigration oldTempl newTempl
- migrationToScriptI :: UStoreMigration os ns -> Identity (MigrationScript os ns)
- migrationToScript :: UStoreMigration os ns -> MigrationScript os ns
- liftUStore :: (Generic template, RequireAllUniqueFields template) => Label name -> (UStore (GetFieldType template name) ': s) :-> (UStore template ': s)
- unliftUStore :: Generic template => Label name -> (UStore template ': s) :-> (UStore (GetFieldType template name) ': s)
- newtype VoidResult r = VoidResult {
- unVoidResult :: r
- data Void_ (a :: Type) (b :: Type) = Void_ {
- voidParam :: a
- voidResProxy :: Lambda b b
- data View (a :: Type) (r :: Type) = View {
- viewParam :: a
- viewCallbackTo :: ContractRef r
- class UpdateN (n :: Peano) (s :: [Type]) (a :: Type) (b :: Type) mid tail where
- updateNImpl :: ('[a, b] :-> '[b]) -> (a ': s) :-> s
- type ConstraintUpdateNLorentz (n :: Peano) (s :: [Type]) (a :: Type) (b :: Type) (mid :: [Type]) (tail :: [Type]) = (UpdateNConstraint' T n (ToTs s) (ToT a) (ToT b) (ToTs mid) (ToTs tail), UpdateNConstraint' Type n s a b mid tail)
- class ReplaceN (n :: Peano) (s :: [Type]) (a :: Type) mid tail where
- replaceNImpl :: (a ': s) :-> s
- type ConstraintReplaceNLorentz (n :: Peano) (s :: [Type]) (a :: Type) (mid :: [Type]) (tail :: [Type]) = (ReplaceNConstraint' T n (ToTs s) (ToT a) (ToTs mid) (ToTs tail), ReplaceNConstraint' Type n s a mid tail)
- mapInsert :: (MapInstrs map, NiceComparable k) => (k ': (v ': (map k v ': s))) :-> (map k v ': s)
- mapInsertNew :: (MapInstrs map, NiceComparable k, KnownValue e) => (forall s0. (k ': s0) :-> (e ': s0)) -> (k ': (v ': (map k v ': s))) :-> (map k v ': s)
- deleteMap :: forall k v s. (MapInstrs map, NiceComparable k, KnownValue v) => (k ': (map k v ': s)) :-> (map k v ': s)
- class DuupX (n :: Peano) (s :: [Type]) (a :: Type) s1 tail where
- type ConstraintDuupXLorentz (n :: Peano) (s :: [Type]) (a :: Type) (s1 :: [Type]) (tail :: [Type]) = (DuupXConstraint' T n (ToTs s) (ToT a) (ToTs s1) (ToTs tail), DuupXConstraint' Type n s a s1 tail)
- eq :: NiceComparable n => (n & (n & s)) :-> (Bool & s)
- neq :: NiceComparable n => (n & (n & s)) :-> (Bool & s)
- gt :: NiceComparable n => (n & (n & s)) :-> (Bool & s)
- le :: NiceComparable n => (n & (n & s)) :-> (Bool & s)
- ge :: NiceComparable n => (n & (n & s)) :-> (Bool & s)
- lt :: NiceComparable n => (n & (n & s)) :-> (Bool & s)
- ifEq0 :: IfCmp0Constraints a Eq' => (s :-> s') -> (s :-> s') -> (a & s) :-> s'
- ifNeq0 :: IfCmp0Constraints a Neq => (s :-> s') -> (s :-> s') -> (a & s) :-> s'
- ifLt0 :: IfCmp0Constraints a Lt => (s :-> s') -> (s :-> s') -> (a & s) :-> s'
- ifGt0 :: IfCmp0Constraints a Gt => (s :-> s') -> (s :-> s') -> (a & s) :-> s'
- ifLe0 :: IfCmp0Constraints a Le => (s :-> s') -> (s :-> s') -> (a & s) :-> s'
- ifGe0 :: IfCmp0Constraints a Ge => (s :-> s') -> (s :-> s') -> (a & s) :-> s'
- ifEq :: NiceComparable a => (s :-> s') -> (s :-> s') -> (a & (a & s)) :-> s'
- ifNeq :: NiceComparable a => (s :-> s') -> (s :-> s') -> (a & (a & s)) :-> s'
- ifLt :: NiceComparable a => (s :-> s') -> (s :-> s') -> (a & (a & s)) :-> s'
- ifGt :: NiceComparable a => (s :-> s') -> (s :-> s') -> (a & (a & s)) :-> s'
- ifLe :: NiceComparable a => (s :-> s') -> (s :-> s') -> (a & (a & s)) :-> s'
- ifGe :: NiceComparable a => (s :-> s') -> (s :-> s') -> (a & (a & s)) :-> s'
- fail_ :: a :-> c
- assert :: IsError err => err -> (Bool & s) :-> s
- assertEq0 :: (IfCmp0Constraints a Eq', IsError err) => err -> (a & s) :-> s
- assertNeq0 :: (IfCmp0Constraints a Neq, IsError err) => err -> (a & s) :-> s
- assertLt0 :: (IfCmp0Constraints a Lt, IsError err) => err -> (a & s) :-> s
- assertGt0 :: (IfCmp0Constraints a Gt, IsError err) => err -> (a & s) :-> s
- assertLe0 :: (IfCmp0Constraints a Le, IsError err) => err -> (a & s) :-> s
- assertGe0 :: (IfCmp0Constraints a Ge, IsError err) => err -> (a & s) :-> s
- assertEq :: (NiceComparable a, IsError err) => err -> (a & (a & s)) :-> s
- assertNeq :: (NiceComparable a, IsError err) => err -> (a & (a & s)) :-> s
- assertLt :: (NiceComparable a, IsError err) => err -> (a & (a & s)) :-> s
- assertGt :: (NiceComparable a, IsError err) => err -> (a & (a & s)) :-> s
- assertLe :: (NiceComparable a, IsError err) => err -> (a & (a & s)) :-> s
- assertGe :: (NiceComparable a, IsError err) => err -> (a & (a & s)) :-> s
- assertNone :: IsError err => err -> (Maybe a & s) :-> s
- assertSome :: IsError err => err -> (Maybe a & s) :-> (a & s)
- assertLeft :: IsError err => err -> (Either a b & s) :-> (a & s)
- assertRight :: IsError err => err -> (Either a b & s) :-> (b & s)
- assertUsing :: IsError a => a -> (Bool & s) :-> s
- dropX :: forall (n :: Nat) a inp out s s'. (ConstraintDIPNLorentz (ToPeano n) inp out s s', s ~ (a ': s')) => inp :-> out
- cloneX :: forall (n :: Nat) a s. CloneX (ToPeano n) a s => (a & s) :-> CloneXT (ToPeano n) a s
- duupX :: forall (n :: Nat) a (s :: [Type]) (s1 :: [Type]) (tail :: [Type]). (ConstraintDuupXLorentz (ToPeano (n - 1)) s a s1 tail, DuupX (ToPeano n) s a s1 tail) => s :-> (a ': s)
- framedN :: forall n nNat s i i' o o'. (nNat ~ ToPeano n, i' ~ Take nNat i, s ~ Drop nNat i, i ~ (i' ++ s), o ~ (o' ++ s), KnownList i', KnownList o') => (i' :-> o') -> i :-> o
- papair :: (a & (b & (c & s))) :-> (((a, b), c) & s)
- ppaiir :: (a & (b & (c & s))) :-> ((a, (b, c)) & s)
- unpair :: ((a, b) & s) :-> (a & (b & s))
- cdar :: ((a1, (a2, b)) & s) :-> (a2 & s)
- cddr :: ((a1, (a2, b)) & s) :-> (b & s)
- caar :: (((a, b1), b2) & s) :-> (a & s)
- cadr :: (((a, b1), b2) & s) :-> (b1 & s)
- setCar :: ((a, b1) & (b2 & s)) :-> ((b2, b1) & s)
- setCdr :: ((a, b1) & (b2 & s)) :-> ((a, b2) & s)
- mapCar :: ((a & s) :-> (a1 & s)) -> ((a, b) & s) :-> ((a1, b) & s)
- mapCdr :: ((b & ((a, b) & s)) :-> (b1 & ((a, b) & s))) -> ((a, b) & s) :-> ((a, b1) & s)
- ifRight :: ((b & s) :-> s') -> ((a & s) :-> s') -> (Either a b & s) :-> s'
- ifSome :: ((a & s) :-> s') -> (s :-> s') -> (Maybe a & s) :-> s'
- when_ :: (s :-> s) -> (Bool ': s) :-> s
- unless_ :: (s :-> s) -> (Bool ': s) :-> s
- whenSome :: ((a ': s) :-> s) -> (Maybe a ': s) :-> s
- whenNone :: (s :-> (a ': s)) -> (Maybe a ': s) :-> (a ': s)
- setInsert :: NiceComparable e => (e & (Set e & s)) :-> (Set e & s)
- setInsertNew :: (NiceComparable e, KnownValue err) => (forall s0. (e ': s0) :-> (err ': s0)) -> (e & (Set e & s)) :-> (Set e & s)
- setDelete :: NiceComparable e => (e & (Set e & s)) :-> (Set e & s)
- replaceN :: forall (n :: Nat) a (s :: [Type]) (s1 :: [Type]) (tail :: [Type]). (ConstraintReplaceNLorentz (ToPeano (n - 1)) s a s1 tail, ReplaceN (ToPeano n) s a s1 tail) => (a ': s) :-> s
- updateN :: forall (n :: Nat) a b (s :: [Type]) (mid :: [Type]) (tail :: [Type]). (ConstraintUpdateNLorentz (ToPeano (n - 1)) s a b mid tail, UpdateN (ToPeano n) s a b mid tail) => ('[a, b] :-> '[b]) -> (a ': s) :-> s
- buildViewTuple :: (WellTypedIsoValue r, TupleF a) => View a r -> Builder
- buildView :: WellTypedIsoValue r => (a -> Builder) -> View a r -> Builder
- mkView :: ToContractRef r contract => a -> contract -> View a r
- wrapView :: ((a, ContractRef r) ': s) :-> (View a r ': s)
- unwrapView :: (View a r ': s) :-> ((a, ContractRef r) ': s)
- view_ :: NiceParameter r => (forall s0. (a & (storage & s0)) :-> (r ': s0)) -> (View a r & (storage & s)) :-> ((List Operation, storage) & s)
- voidResultTag :: MText
- mkVoid :: forall b a. a -> Void_ a b
- void_ :: forall a b s s' anything. (IsError (VoidResult b), KnownValue b) => ((a & s) :-> (b & s')) -> (Void_ a b & s) :-> anything
- wrapVoid :: ((a, Lambda b b) ': s) :-> (Void_ a b ': s)
- unwrapVoid :: (Void_ a b ': s) :-> ((a, Lambda b b) ': s)
- addressToEpAddress :: (Address ': s) :-> (EpAddress ': s)
- pushContractRef :: NiceParameter arg => (forall s0. (FutureContract arg ': s) :-> s0) -> ContractRef arg -> s :-> (ContractRef arg ': s)
- type HasUStoreForAllIn store constrained = (Generic store, GHasStoreForAllIn constrained (Rep store))
- type HasUField name ty store = (FieldAccessC store name, GetUStoreField store name ~ ty)
- type HasUStore name key value store = (KeyAccessC store name, ValueAccessC store name, GetUStoreKey store name ~ key, GetUStoreValue store name ~ value)
- ustoreMem :: forall store name s. KeyAccessC store name => Label name -> (GetUStoreKey store name ': (UStore store ': s)) :-> (Bool ': s)
- ustoreGet :: forall store name s. (KeyAccessC store name, ValueAccessC store name) => Label name -> (GetUStoreKey store name ': (UStore store ': s)) :-> (Maybe (GetUStoreValue store name) ': s)
- ustoreUpdate :: forall store name s. (KeyAccessC store name, ValueAccessC store name) => Label name -> (GetUStoreKey store name ': (Maybe (GetUStoreValue store name) ': (UStore store ': s))) :-> (UStore store ': s)
- ustoreInsert :: forall store name s. (KeyAccessC store name, ValueAccessC store name) => Label name -> (GetUStoreKey store name ': (GetUStoreValue store name ': (UStore store ': s))) :-> (UStore store ': s)
- ustoreInsertNew :: forall store name s. (KeyAccessC store name, ValueAccessC store name) => Label name -> (forall s0 any. (GetUStoreKey store name ': s0) :-> any) -> (GetUStoreKey store name ': (GetUStoreValue store name ': (UStore store ': s))) :-> (UStore store ': s)
- ustoreDelete :: forall store name s. KeyAccessC store name => Label name -> (GetUStoreKey store name ': (UStore store ': s)) :-> (UStore store ': s)
- ustoreToField :: forall store name s. FieldAccessC store name => Label name -> (UStore store ': s) :-> (GetUStoreField store name ': s)
- ustoreGetField :: forall store name s. FieldAccessC store name => Label name -> (UStore store ': s) :-> (GetUStoreField store name ': (UStore store ': s))
- ustoreSetField :: forall store name s. FieldAccessC store name => Label name -> (GetUStoreField store name ': (UStore store ': s)) :-> (UStore store ': s)
- migrateGetField :: forall field oldTempl newTempl diff touched fieldTy s. (HasUField field fieldTy oldTempl, RequireUntouched field (field `IsElem` touched)) => Label field -> (MUStore oldTempl newTempl diff touched ': s) :-> (fieldTy ': (MUStore oldTempl newTempl diff touched ': s))
- migrateAddField :: forall field oldTempl newTempl diff touched fieldTy newDiff marker s. ('(UStoreFieldExt marker fieldTy, newDiff) ~ CoverDiff 'DcAdd field diff, HasUField field fieldTy newTempl) => Label field -> (fieldTy ': (MUStore oldTempl newTempl diff touched ': s)) :-> (MUStore oldTempl newTempl newDiff (field ': touched) ': s)
- migrateRemoveField :: forall field oldTempl newTempl diff touched fieldTy newDiff marker s. ('(UStoreFieldExt marker fieldTy, newDiff) ~ CoverDiff 'DcRemove field diff, HasUField field fieldTy oldTempl) => Label field -> (MUStore oldTempl newTempl diff touched ': s) :-> (MUStore oldTempl newTempl newDiff (field ': touched) ': s)
- migrateExtractField :: forall field oldTempl newTempl diff touched fieldTy newDiff marker s. ('(UStoreFieldExt marker fieldTy, newDiff) ~ CoverDiff 'DcRemove field diff, HasUField field fieldTy oldTempl, RequireUntouched field (field `IsElem` touched)) => Label field -> (MUStore oldTempl newTempl diff touched ': s) :-> (fieldTy ': (MUStore oldTempl newTempl newDiff (field ': touched) ': s))
- migrateOverwriteField :: forall field oldTempl newTempl diff touched fieldTy oldFieldTy marker oldMarker newDiff newDiff0 s. ('(UStoreFieldExt oldMarker oldFieldTy, newDiff0) ~ CoverDiff 'DcRemove field diff, '(UStoreFieldExt marker fieldTy, newDiff) ~ CoverDiff 'DcAdd field newDiff0, HasUField field fieldTy newTempl) => Label field -> (fieldTy ': (MUStore oldTempl newTempl diff touched ': s)) :-> (MUStore oldTempl newTempl newDiff (field ': touched) ': s)
- migrateModifyField :: forall field oldTempl newTempl diff touched fieldTy s. (HasUField field fieldTy oldTempl, HasUField field fieldTy newTempl) => Label field -> (fieldTy ': (MUStore oldTempl newTempl diff touched ': s)) :-> (MUStore oldTempl newTempl diff touched ': s)
- mustoreToOld :: RequireBeInitial touched => (MUStore oldTemplate newTemplate remDiff touched ': s) :-> (UStore oldTemplate ': s)
- data FillUStoreTW
- data DecomposeUStoreTW
- data MkUStoreTW
- mkUStore :: UStoreTraversable MkUStoreTW template => template -> UStore template
- ustoreDecompose :: forall template. UStoreTraversable DecomposeUStoreTW template => UStore template -> Either Text (UStoreContent, template)
- ustoreDecomposeFull :: forall template. UStoreTraversable DecomposeUStoreTW template => UStore template -> Either Text template
- fillUStore :: UStoreTraversable FillUStoreTW template => template -> UStoreMigration () template
- data Condition arg argl argr outb out where
- Holds :: Condition (Bool ': s) s s o o
- IsSome :: Condition (Maybe a ': s) (a ': s) s o o
- IsNone :: Condition (Maybe a ': s) s (a ': s) o o
- IsLeft :: Condition (Either l r ': s) (l ': s) (r ': s) o o
- IsRight :: Condition (Either l r ': s) (r ': s) (l ': s) o o
- IsCons :: Condition ([a] ': s) (a ': ([a] ': s)) s o o
- IsNil :: Condition ([a] ': s) s (a ': ([a] ': s)) o o
- IsZero :: (UnaryArithOpHs Eq' a, UnaryArithResHs Eq' a ~ Bool) => Condition (a ': s) s s o o
- IsNotZero :: (UnaryArithOpHs Eq' a, UnaryArithResHs Eq' a ~ Bool) => Condition (a ': s) s s o o
- IsEq :: NiceComparable a => Condition (a ': (a ': s)) s s o o
- IsNeq :: NiceComparable a => Condition (a ': (a ': s)) s s o o
- IsLt :: NiceComparable a => Condition (a ': (a ': s)) s s o o
- IsGt :: NiceComparable a => Condition (a ': (a ': s)) s s o o
- IsLe :: NiceComparable a => Condition (a ': (a ': s)) s s o o
- IsGe :: NiceComparable a => Condition (a ': (a ': s)) s s o o
- NamedBinCondition :: Condition (a ': (a ': s)) s s o o -> Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o
- PreserveArgsBinCondition :: (forall st o. Condition (a ': (b ': st)) st st o o) -> Condition (a ': (b ': s)) (a ': (b ': s)) (a ': (b ': s)) (a ': (b ': s)) s
- (>>) :: (a :-> b) -> (b :-> c) -> a :-> c
- ifThenElse :: Condition arg argl argr outb out -> (argl :-> outb) -> (argr :-> outb) -> arg :-> out
- (<.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o
- (>.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o
- (<=.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o
- (>=.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o
- (==.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o
- (/=.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o
- keepIfArgs :: (forall st o. Condition (a ': (b ': st)) st st o o) -> Condition (a ': (b ': s)) (a ': (b ': s)) (a ': (b ': s)) (a ': (b ': s)) s
- data NumericErrorWrapper (numTag :: Nat) (err :: Type)
- data NumericErrorDocHandler
- data NumericErrorDocHandlerError
- data DDescribeErrorTagMap = DDescribeErrorTagMap {
- detmSrcLoc :: Text
- applyErrorTagToErrorsDoc :: HasCallStack => ErrorTagMap -> (inp :-> out) -> inp :-> out
- applyErrorTagToErrorsDocWith :: HasCallStack => [NumericErrorDocHandler] -> ErrorTagMap -> (inp :-> out) -> inp :-> out
- customErrorDocHandler :: NumericErrorDocHandler
- voidResultDocHandler :: NumericErrorDocHandler
- baseErrorDocHandlers :: [NumericErrorDocHandler]
- type CaseTC dt out inp clauses = (InstrCaseC dt, RMap (CaseClauses dt), RecFromTuple clauses, clauses ~ Rec (CaseClauseL inp out) (CaseClauses dt))
- class CaseArrow name body clause | clause -> name, clause -> body where
- data CaseClauseL (inp :: [Type]) (out :: [Type]) (param :: CaseClauseParam) where
- CaseClauseL :: (AppendCtorField x inp :-> out) -> CaseClauseL inp out ('CaseClauseParam ctor x)
- type family HasFieldsOfType (dt :: Type) (fs :: [NamedField]) :: Constraint where ...
- type (:=) n ty = 'NamedField n ty
- data NamedField = NamedField Symbol Type
- type HasFieldOfType dt fname fieldTy = (HasField dt fname, GetFieldType dt fname ~ fieldTy)
- type HasField dt fname = (InstrGetFieldC dt fname, InstrSetFieldC dt fname)
- toField :: forall dt name st. InstrGetFieldC dt name => Label name -> (dt & st) :-> (GetFieldType dt name & st)
- toFieldNamed :: forall dt name st. InstrGetFieldC dt name => Label name -> (dt & st) :-> ((name :! GetFieldType dt name) & st)
- getField :: forall dt name st. InstrGetFieldC dt name => Label name -> (dt & st) :-> (GetFieldType dt name & (dt ': st))
- getFieldNamed :: forall dt name st. InstrGetFieldC dt name => Label name -> (dt & st) :-> ((name :! GetFieldType dt name) & (dt ': st))
- setField :: forall dt name st. InstrSetFieldC dt name => Label name -> (GetFieldType dt name ': (dt ': st)) :-> (dt ': st)
- modifyField :: forall dt name st. (InstrGetFieldC dt name, InstrSetFieldC dt name) => Label name -> (forall st0. (GetFieldType dt name ': st0) :-> (GetFieldType dt name ': st0)) -> (dt & st) :-> (dt & st)
- construct :: forall dt st. (InstrConstructC dt, RMap (ConstructorFieldTypes dt)) => Rec (FieldConstructor st) (ConstructorFieldTypes dt) -> st :-> (dt & st)
- constructT :: forall dt fctors st. (InstrConstructC dt, RMap (ConstructorFieldTypes dt), fctors ~ Rec (FieldConstructor st) (ConstructorFieldTypes dt), RecFromTuple fctors) => IsoRecTuple fctors -> st :-> (dt & st)
- constructStack :: forall dt fields st. (InstrConstructC dt, ToTs fields ~ ToTs (ConstructorFieldTypes dt), KnownList fields) => (fields ++ st) :-> (dt & st)
- deconstruct :: forall dt fields st. (InstrDeconstructC dt, KnownList fields, ToTs fields ~ ToTs (ConstructorFieldTypes dt)) => (dt & st) :-> (fields ++ st)
- fieldCtor :: HasCallStack => (st :-> (f & st)) -> FieldConstructor st f
- wrap_ :: forall dt name st. InstrWrapC dt name => Label name -> AppendCtorField (GetCtorField dt name) st :-> (dt & st)
- wrapOne :: forall dt name st. InstrWrapOneC dt name => Label name -> (CtorOnlyField name dt ': st) :-> (dt & st)
- case_ :: forall dt out inp. (InstrCaseC dt, RMap (CaseClauses dt)) => Rec (CaseClauseL inp out) (CaseClauses dt) -> (dt & inp) :-> out
- caseT :: forall dt out inp clauses. CaseTC dt out inp clauses => IsoRecTuple clauses -> (dt & inp) :-> out
- unwrapUnsafe_ :: forall dt name st. InstrUnwrapC dt name => Label name -> (dt & st) :-> (CtorOnlyField name dt ': st)
- type family StorageContains store (content :: [NamedField]) :: Constraint where ...
- data param ::-> store
- data k ~> v
- class StoreHasEntrypoint store epName epParam epStore | store epName -> epParam epStore where
- storeEpOps :: StoreEntrypointOps store epName epParam epStore
- data StoreEntrypointOps store epName epParam epStore = StoreEntrypointOps {
- sopToEpLambda :: forall s. Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': s)
- sopSetEpLambda :: forall s. Label epName -> (EntrypointLambda epParam epStore ': (store ': s)) :-> (store ': s)
- sopToEpStore :: forall s. Label epName -> (store ': s) :-> (epStore ': s)
- sopSetEpStore :: forall s. Label epName -> (epStore ': (store ': s)) :-> (store ': s)
- type EntrypointsField param store = BigMap MText (EntrypointLambda param store)
- type EntrypointLambda param store = Lambda (param, store) ([Operation], store)
- class StoreHasSubmap store mname key value | store mname -> key value where
- storeSubmapOps :: StoreSubmapOps store mname key value
- data StoreSubmapOps store mname key value = StoreSubmapOps {
- sopMem :: forall s. Label mname -> (key ': (store ': s)) :-> (Bool ': s)
- sopGet :: forall s. KnownValue value => Label mname -> (key ': (store ': s)) :-> (Maybe value ': s)
- sopUpdate :: forall s. Label mname -> (key ': (Maybe value ': (store ': s))) :-> (store ': s)
- sopDelete :: forall s. Maybe (Label mname -> (key ': (store ': s)) :-> (store ': s))
- sopInsert :: forall s. Maybe (Label mname -> (key ': (value ': (store ': s))) :-> (store ': s))
- class StoreHasField store fname ftype | store fname -> ftype where
- storeFieldOps :: StoreFieldOps store fname ftype
- data StoreFieldOps store fname ftype = StoreFieldOps {
- sopToField :: forall s. Label fname -> (store ': s) :-> (ftype ': s)
- sopSetField :: forall s. Label fname -> (ftype ': (store ': s)) :-> (store ': s)
- stToField :: StoreHasField store fname ftype => Label fname -> (store ': s) :-> (ftype ': s)
- stGetField :: StoreHasField store fname ftype => Label fname -> (store ': s) :-> (ftype ': (store ': s))
- stSetField :: StoreHasField store fname ftype => Label fname -> (ftype ': (store ': s)) :-> (store ': s)
- stMem :: StoreHasSubmap store mname key value => Label mname -> (key ': (store ': s)) :-> (Bool ': s)
- stGet :: (StoreHasSubmap store mname key value, KnownValue value) => Label mname -> (key ': (store ': s)) :-> (Maybe value ': s)
- stUpdate :: StoreHasSubmap store mname key value => Label mname -> (key ': (Maybe value ': (store ': s))) :-> (store ': s)
- stDelete :: forall store mname key value s. (StoreHasSubmap store mname key value, KnownValue value) => Label mname -> (key ': (store ': s)) :-> (store ': s)
- stInsert :: StoreHasSubmap store mname key value => Label mname -> (key ': (value ': (store ': s))) :-> (store ': s)
- stInsertNew :: StoreHasSubmap store mname key value => Label mname -> (forall s0 any. (key ': s0) :-> any) -> (key ': (value ': (store ': s))) :-> (store ': s)
- stEntrypoint :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (epParam ': (store ': s)) :-> (([Operation], store) ': s)
- stToEpLambda :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': s)
- stGetEpLambda :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': (store ': s))
- stSetEpLambda :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (EntrypointLambda epParam epStore ': (store ': s)) :-> (store ': s)
- stToEpStore :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (epStore ': s)
- stGetEpStore :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (epStore ': (store ': s))
- stSetEpStore :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (epStore ': (store ': s)) :-> (store ': s)
- storeFieldOpsADT :: HasFieldOfType dt fname ftype => StoreFieldOps dt fname ftype
- storeEntrypointOpsADT :: (HasFieldOfType store epmName (EntrypointsField epParam epStore), HasFieldOfType store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore
- storeEntrypointOpsFields :: (StoreHasField store epmName (EntrypointsField epParam epStore), StoreHasField store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore
- storeEntrypointOpsSubmapField :: (StoreHasSubmap store epmName MText (EntrypointLambda epParam epStore), StoreHasField store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore
- storeFieldOpsDeeper :: (HasFieldOfType storage fieldsPartName fields, StoreHasField fields fname ftype) => Label fieldsPartName -> StoreFieldOps storage fname ftype
- storeSubmapOpsDeeper :: (HasFieldOfType storage bigMapPartName fields, StoreHasSubmap fields mname key value) => Label bigMapPartName -> StoreSubmapOps storage mname key value
- storeEntrypointOpsDeeper :: (HasFieldOfType store nameInStore substore, StoreHasEntrypoint substore epName epParam epStore) => Label nameInStore -> StoreEntrypointOps store epName epParam epStore
- storeSubmapOpsReferTo :: Label name -> StoreSubmapOps storage name key value -> StoreSubmapOps storage desiredName key value
- storeFieldOpsReferTo :: Label name -> StoreFieldOps storage name field -> StoreFieldOps storage desiredName field
- storeEntrypointOpsReferTo :: Label epName -> StoreEntrypointOps store epName epParam epStore -> StoreEntrypointOps store desiredName epParam epStore
- composeStoreFieldOps :: Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreFieldOps substore nameInSubstore field -> StoreFieldOps store nameInSubstore field
- composeStoreSubmapOps :: Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreSubmapOps substore mname key value -> StoreSubmapOps store mname key value
- composeStoreEntrypointOps :: Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreEntrypointOps substore epName epParam epStore -> StoreEntrypointOps store epName epParam epStore
- mkStoreEp :: Label epName -> EntrypointLambda epParam epStore -> EntrypointsField epParam epStore
- type family RequireFlatEpDerivation cp deriv :: Constraint where ...
- type family RequireFlatParamEps cp :: Constraint where ...
- class EntryArrow kind name body where
- type DocumentEntrypoints kind a = (Generic a, GDocumentEntrypoints kind (Rep a))
- class KnownSymbol con => DeriveCtorFieldDoc con (cf :: CtorField) where
- data DEntrypointArg = DEntrypointArg {
- epaArg :: Maybe DType
- epaBuilding :: [ParamBuildingStep]
- epaType :: Type
- data ParamBuildingStep
- data ParamBuildingDesc = ParamBuildingDesc {}
- newtype ParamBuilder = ParamBuilder {
- unParamBuilder :: Markdown -> Markdown
- data DEntrypointReference = DEntrypointReference Text Anchor
- data PlainEntrypointsKind
- data DEntrypoint (kind :: Type) = DEntrypoint {}
- diEntrypointToMarkdown :: HeaderLevel -> DEntrypoint level -> Markdown
- mkPbsWrapIn :: Text -> ParamBuilder -> ParamBuildingStep
- constructDEpArg :: forall arg. (TypeHasDoc arg, HasAnnotation arg, KnownValue arg) => DEntrypointArg
- emptyDEpArg :: DEntrypointArg
- mkDEpUType :: forall t. (KnownValue t, HasAnnotation t) => Type
- mkDEntrypointArgSimple :: forall t. (KnownValue t, HasAnnotation t, TypeHasDoc t) => DEntrypointArg
- clarifyParamBuildingSteps :: ParamBuildingStep -> (inp :-> out) -> inp :-> out
- entryCase_ :: forall dt entrypointKind out inp. (InstrCaseC dt, RMap (CaseClauses dt), DocumentEntrypoints entrypointKind dt) => Proxy entrypointKind -> Rec (CaseClauseL inp out) (CaseClauses dt) -> (dt & inp) :-> out
- entryCase :: forall dt entrypointKind out inp clauses. (CaseTC dt out inp clauses, DocumentEntrypoints entrypointKind dt) => Proxy entrypointKind -> IsoRecTuple clauses -> (dt & inp) :-> out
- documentEntrypoint :: forall kind epName param s out. (KnownSymbol epName, DocItem (DEntrypoint kind), TypeHasDoc param, HasAnnotation param, KnownValue param) => ((param & s) :-> out) -> (param & s) :-> out
- finalizeParamCallingDoc :: forall cp inp out. (NiceParameterFull cp, RequireSumType cp, HasCallStack) => ((cp ': inp) :-> out) -> (cp ': inp) :-> out
- areFinalizedParamBuildingSteps :: [ParamBuildingStep] -> Bool
- entryCaseSimple_ :: forall cp out inp. (InstrCaseC cp, RMap (CaseClauses cp), DocumentEntrypoints PlainEntrypointsKind cp, NiceParameterFull cp, RequireFlatParamEps cp) => Rec (CaseClauseL inp out) (CaseClauses cp) -> (cp & inp) :-> out
- entryCaseSimple :: forall cp out inp clauses. (CaseTC cp out inp clauses, DocumentEntrypoints PlainEntrypointsKind cp, NiceParameterFull cp, RequireFlatParamEps cp) => IsoRecTuple clauses -> (cp & inp) :-> out
- type UParamLinearized p = GUParamLinearized (Rep p)
- type UParamLinearize p = (Generic p, GUParamLinearize (Rep p))
- class CaseUParam (entries :: [EntrypointKind])
- type UParamFallback inp out = ((MText, ByteString) ': inp) :-> out
- type EntrypointsImpl inp out entries = Rec (CaseClauseU inp out) entries
- data EntrypointLookupError
- class UnpackUParam (c :: Type -> Constraint) entries where
- unpackUParam :: UParam entries -> Either EntrypointLookupError (MText, ConstrainedSome c)
- data ConstrainedSome (c :: Type -> Constraint) where
- ConstrainedSome :: c a => a -> ConstrainedSome c
- type family RequireUniqueEntrypoints (entries :: [EntrypointKind]) :: Constraint where ...
- type family LookupEntrypoint (name :: Symbol) (entries :: [EntrypointKind]) :: Type where ...
- type UParam_ = UParam SomeInterface
- type SomeInterface = '['("SomeEntrypoints", Void)]
- newtype UParam (entries :: [EntrypointKind]) = UParamUnsafe (MText, ByteString)
- type (?:) (n :: Symbol) (a :: k) = '(n, a)
- type EntrypointKind = (Symbol, Type)
- mkUParam :: (NicePackedValue a, LookupEntrypoint name entries ~ a, RequireUniqueEntrypoints entries) => Label name -> a -> UParam entries
- unwrapUParam :: (UParam entries ': s) :-> ((MText, ByteString) ': s)
- uparamFallbackFail :: UParamFallback inp out
- caseUParam :: (CaseUParam entries, RequireUniqueEntrypoints entries) => Rec (CaseClauseU inp out) entries -> UParamFallback inp out -> (UParam entries ': inp) :-> out
- caseUParamT :: forall entries inp out clauses. (clauses ~ Rec (CaseClauseU inp out) entries, RecFromTuple clauses, CaseUParam entries) => IsoRecTuple clauses -> UParamFallback inp out -> (UParam entries ': inp) :-> out
- uparamFromAdt :: UParamLinearize up => up -> UParam (UParamLinearized up)
- pbsUParam :: forall ctorName. KnownSymbol ctorName => ParamBuildingStep
Documentation
($) :: forall (r :: RuntimeRep) a (b :: TYPE r). (a -> b) -> a -> b infixr 0 #
Application operator. This operator is redundant, since ordinary
application (f x)
means the same as (f
. However, $
x)$
has
low, right-associative binding precedence, so it sometimes allows
parentheses to be omitted; for example:
f $ g $ h x = f (g (h x))
It is also useful in higher-order situations, such as
,
or map
($
0) xs
.zipWith
($
) fs xs
Note that (
is levity-polymorphic in its result type, so that
$
)foo
where $
Truefoo :: Bool -> Int#
is well-typed.
The Bounded
class is used to name the upper and lower limits of a
type. Ord
is not a superclass of Bounded
since types that are not
totally ordered may also have upper and lower bounds.
The Bounded
class may be derived for any enumeration type;
minBound
is the first constructor listed in the data
declaration
and maxBound
is the last.
Bounded
may also be derived for single-constructor datatypes whose
constituent types are in Bounded
.
Instances
Bounded Bool | Since: base-2.1 |
Bounded Char | Since: base-2.1 |
Bounded Int | Since: base-2.1 |
Bounded Int8 | Since: base-2.1 |
Bounded Int16 | Since: base-2.1 |
Bounded Int32 | Since: base-2.1 |
Bounded Int64 | Since: base-2.1 |
Bounded Ordering | Since: base-2.1 |
Bounded Word | Since: base-2.1 |
Bounded Word8 | Since: base-2.1 |
Bounded Word16 | Since: base-2.1 |
Bounded Word32 | Since: base-2.1 |
Bounded Word64 | Since: base-2.1 |
Bounded VecCount | Since: base-4.10.0.0 |
Bounded VecElem | Since: base-4.10.0.0 |
Bounded () | Since: base-2.1 |
Bounded All | Since: base-2.1 |
Bounded Any | Since: base-2.1 |
Bounded Associativity | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
Bounded SourceUnpackedness | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
Bounded SourceStrictness | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
Bounded DecidedStrictness | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
Bounded CChar | |
Bounded CSChar | |
Bounded CUChar | |
Bounded CShort | |
Bounded CUShort | |
Bounded CInt | |
Bounded CUInt | |
Bounded CLong | |
Bounded CULong | |
Bounded CLLong | |
Bounded CULLong | |
Bounded CBool | |
Bounded CPtrdiff | |
Bounded CSize | |
Bounded CWchar | |
Bounded CSigAtomic | |
Defined in Foreign.C.Types | |
Bounded CIntPtr | |
Bounded CUIntPtr | |
Bounded CIntMax | |
Bounded CUIntMax | |
Bounded GeneralCategory | Since: base-2.1 |
Defined in GHC.Unicode | |
Bounded UTF32_Invalid | |
Defined in Basement.String.Encoding.UTF32 | |
Bounded Encoding | |
Bounded Extension | |
Bounded Undefined | |
Bounded EntriesOrder | |
Defined in Michelson.Untyped.Contract | |
Bounded Mutez | |
Bounded KeyHashTag | |
Defined in Tezos.Crypto | |
Class () (Bounded a) | |
Defined in Data.Constraint | |
a :=> (Bounded (Dict a)) | |
() :=> (Bounded Bool) | |
() :=> (Bounded Char) | |
() :=> (Bounded Int) | |
() :=> (Bounded Ordering) | |
() :=> (Bounded Word) | |
() :=> (Bounded ()) | |
Defined in Data.Constraint | |
Bounded a => Bounded (Min a) | Since: base-4.9.0.0 |
Bounded a => Bounded (Max a) | Since: base-4.9.0.0 |
Bounded a => Bounded (First a) | Since: base-4.9.0.0 |
Bounded a => Bounded (Last a) | Since: base-4.9.0.0 |
Bounded m => Bounded (WrappedMonoid m) | Since: base-4.9.0.0 |
Defined in Data.Semigroup | |
Bounded a => Bounded (Identity a) | Since: base-4.9.0.0 |
Bounded a => Bounded (Dual a) | Since: base-2.1 |
Bounded a => Bounded (Sum a) | Since: base-2.1 |
Bounded a => Bounded (Product a) | Since: base-2.1 |
a => Bounded (Dict a) | |
Bounded a => Bounded (StringEncode a) | |
Defined in Morley.Micheline.Json | |
(Bounded a) :=> (Bounded (Identity a)) | |
(Bounded a) :=> (Bounded (Const a b)) | |
(Bounded a, Bounded b) => Bounded (a, b) | Since: base-2.1 |
Bounded (Proxy t) | Since: base-4.7.0.0 |
(Bounded a, Bounded b) :=> (Bounded (a, b)) | |
(Bounded a, Bounded b, Bounded c) => Bounded (a, b, c) | Since: base-2.1 |
Bounded a => Bounded (Const a b) | Since: base-4.9.0.0 |
(Applicative f, Bounded a) => Bounded (Ap f a) | Since: base-4.12.0.0 |
a ~ b => Bounded (a :~: b) | Since: base-4.7.0.0 |
Bounded b => Bounded (Tagged s b) | |
(Bounded a, Bounded b, Bounded c, Bounded d) => Bounded (a, b, c, d) | Since: base-2.1 |
a ~~ b => Bounded (a :~~: b) | Since: base-4.10.0.0 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e) => Bounded (a, b, c, d, e) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f) => Bounded (a, b, c, d, e, f) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g) => Bounded (a, b, c, d, e, f, g) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h) => Bounded (a, b, c, d, e, f, g, h) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i) => Bounded (a, b, c, d, e, f, g, h, i) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j) => Bounded (a, b, c, d, e, f, g, h, i, j) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k) => Bounded (a, b, c, d, e, f, g, h, i, j, k) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m, Bounded n) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m, n) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m, Bounded n, Bounded o) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) | Since: base-2.1 |
The Eq
class defines equality (==
) and inequality (/=
).
All the basic datatypes exported by the Prelude are instances of Eq
,
and Eq
may be derived for any datatype whose constituents are also
instances of Eq
.
The Haskell Report defines no laws for Eq
. However, ==
is customarily
expected to implement an equivalence relationship where two values comparing
equal are indistinguishable by "public" functions, with a "public" function
being one not allowing to see implementation details. For example, for a
type representing non-normalised natural numbers modulo 100, a "public"
function doesn't make the difference between 1 and 201. It is expected to
have the following properties:
Instances
fromInteger :: Num a => Integer -> a #
Conversion from an Integer
.
An integer literal represents the application of the function
fromInteger
to the appropriate value of type Integer
,
so such literals have type (
.Num
a) => a
The Ord
class is used for totally ordered datatypes.
Instances of Ord
can be derived for any user-defined datatype whose
constituent types are in Ord
. The declared order of the constructors in
the data declaration determines the ordering in derived Ord
instances. The
Ordering
datatype allows a single comparison to determine the precise
ordering of two objects.
The Haskell Report defines no laws for Ord
. However, <=
is customarily
expected to implement a non-strict partial order and have the following
properties:
- Transitivity
- if
x <= y && y <= z
=True
, thenx <= z
=True
- Reflexivity
x <= x
=True
- Antisymmetry
- if
x <= y && y <= x
=True
, thenx == y
=True
Note that the following operator interactions are expected to hold:
x >= y
=y <= x
x < y
=x <= y && x /= y
x > y
=y < x
x < y
=compare x y == LT
x > y
=compare x y == GT
x == y
=compare x y == EQ
min x y == if x <= y then x else y
=True
max x y == if x >= y then x else y
=True
Minimal complete definition: either compare
or <=
.
Using compare
can be more efficient for complex types.
Instances
fromString :: IsString a => String -> a #
pure :: Applicative f => a -> f a #
Lift a value.
Representable types of kind *
.
This class is derivable in GHC with the DeriveGeneric
flag on.
A Generic
instance must satisfy the following laws:
from
.to
≡id
to
.from
≡id
Instances
The class of semigroups (types with an associative binary operation).
Instances should satisfy the following:
Since: base-4.9.0.0
Minimal complete definition
Methods
(<>) :: a -> a -> a infixr 6 #
An associative operation.
Reduce a non-empty list with <>
The default definition should be sufficient, but this can be overridden for efficiency.
stimes :: Integral b => b -> a -> a #
Repeat a value n
times.
Given that this works on a Semigroup
it is allowed to fail if
you request 0 or fewer repetitions, and the default definition
will do so.
By making this a member of the class, idempotent semigroups
and monoids can upgrade this to execute in O(1) by
picking stimes =
or stimesIdempotent
stimes =
respectively.stimesIdempotentMonoid
Instances
class Semigroup a => Monoid a where #
The class of monoids (types with an associative binary operation that has an identity). Instances should satisfy the following:
- Right identity
x
<>
mempty
= x- Left identity
mempty
<>
x = x- Associativity
x
(<>
(y<>
z) = (x<>
y)<>
zSemigroup
law)- Concatenation
mconcat
=foldr
(<>
)mempty
The method names refer to the monoid of lists under concatenation, but there are many other instances.
Some types can be viewed as a monoid in more than one way,
e.g. both addition and multiplication on numbers.
In such cases we often define newtype
s and make those instances
of Monoid
, e.g. Sum
and Product
.
NOTE: Semigroup
is a superclass of Monoid
since base-4.11.0.0.
Minimal complete definition
Methods
Identity of mappend
An associative operation
NOTE: This method is redundant and has the default
implementation
since base-4.11.0.0.mappend
= (<>
)
Fold a list using the monoid.
For most types, the default definition for mconcat
will be
used, but the function is included in the class definition so
that an optimized version can be provided for specific types.
Instances
Instances
Bounded Bool | Since: base-2.1 |
Enum Bool | Since: base-2.1 |
Eq Bool | |
Ord Bool | |
Read Bool | Since: base-2.1 |
Show Bool | Since: base-2.1 |
Generic Bool | Since: base-4.6.0.0 |
Lift Bool | |
Arbitrary Bool | |
CoArbitrary Bool | |
Defined in Test.QuickCheck.Arbitrary Methods coarbitrary :: Bool -> Gen b -> Gen b # | |
Hashable Bool | |
Defined in Data.Hashable.Class | |
ToJSON Bool | |
Defined in Data.Aeson.Types.ToJSON | |
ToJSONKey Bool | |
Defined in Data.Aeson.Types.ToJSON | |
SingKind Bool | Since: base-4.9.0.0 |
Defined in GHC.Generics Associated Types type DemoteRep Bool | |
Storable Bool | Since: base-2.1 |
Defined in Foreign.Storable | |
NFData Bool | |
Defined in Control.DeepSeq | |
Buildable Bool | |
Defined in Formatting.Buildable | |
Unbox Bool | |
Defined in Data.Vector.Unboxed.Base | |
PShow Bool | |
SShow Bool | |
Defined in Data.Singletons.Prelude.Show Methods sShowsPrec :: forall (t1 :: Nat) (t2 :: Bool) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply ShowsPrecSym0 t1) t2) t3) # sShow_ :: forall (t :: Bool). Sing t -> Sing (Apply Show_Sym0 t) # sShowList :: forall (t1 :: [Bool]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply ShowListSym0 t1) t2) # | |
PEnum Bool | |
Defined in Data.Singletons.Prelude.Enum | |
SEnum Bool | |
Defined in Data.Singletons.Prelude.Enum Methods sSucc :: forall (t :: Bool). Sing t -> Sing (Apply SuccSym0 t) # sPred :: forall (t :: Bool). Sing t -> Sing (Apply PredSym0 t) # sToEnum :: forall (t :: Nat). Sing t -> Sing (Apply ToEnumSym0 t) # sFromEnum :: forall (t :: Bool). Sing t -> Sing (Apply FromEnumSym0 t) # sEnumFromTo :: forall (t1 :: Bool) (t2 :: Bool). Sing t1 -> Sing t2 -> Sing (Apply (Apply EnumFromToSym0 t1) t2) # sEnumFromThenTo :: forall (t1 :: Bool) (t2 :: Bool) (t3 :: Bool). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t1) t2) t3) # | |
PBounded Bool | |
Defined in Data.Singletons.Prelude.Enum | |
SBounded Bool | |
Defined in Data.Singletons.Prelude.Enum | |
POrd Bool | |
SOrd Bool | |
Defined in Data.Singletons.Prelude.Ord Methods sCompare :: forall (t1 :: Bool) (t2 :: Bool). Sing t1 -> Sing t2 -> Sing (Apply (Apply CompareSym0 t1) t2) # (%<) :: forall (t1 :: Bool) (t2 :: Bool). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<@#@$) t1) t2) # (%<=) :: forall (t1 :: Bool) (t2 :: Bool). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<=@#@$) t1) t2) # (%>) :: forall (t1 :: Bool) (t2 :: Bool). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>@#@$) t1) t2) # (%>=) :: forall (t1 :: Bool) (t2 :: Bool). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>=@#@$) t1) t2) # sMax :: forall (t1 :: Bool) (t2 :: Bool). Sing t1 -> Sing t2 -> Sing (Apply (Apply MaxSym0 t1) t2) # sMin :: forall (t1 :: Bool) (t2 :: Bool). Sing t1 -> Sing t2 -> Sing (Apply (Apply MinSym0 t1) t2) # | |
SEq Bool | |
PEq Bool | |
Pretty Bool | |
Defined in Text.PrettyPrint.Leijen.Text | |
TypeHasDoc Bool | |
Defined in Michelson.Typed.Haskell.Doc Associated Types type TypeDocFieldDescriptions Bool :: FieldDescriptions # Methods typeDocName :: Proxy Bool -> Text # typeDocMdDescription :: Markdown # typeDocMdReference :: Proxy Bool -> WithinParens -> Markdown # typeDocDependencies :: Proxy Bool -> [SomeDocDefinitionItem] # typeDocHaskellRep :: TypeDocHaskellRep Bool # typeDocMichelsonRep :: TypeDocMichelsonRep Bool # | |
IsoValue Bool | |
HasAnnotation Bool Source # | |
Defined in Lorentz.Annotation Methods getAnnotation :: FollowEntrypointFlag -> Notes (ToT Bool) Source # | |
SingI 'False | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
SingI 'True | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
TestCoercion SBool | |
Defined in Data.Singletons.Prelude.Instances | |
TestEquality SBool | |
Defined in Data.Singletons.Prelude.Instances | |
Vector Vector Bool | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) Bool -> m (Vector Bool) # basicUnsafeThaw :: PrimMonad m => Vector Bool -> m (Mutable Vector (PrimState m) Bool) # basicLength :: Vector Bool -> Int # basicUnsafeSlice :: Int -> Int -> Vector Bool -> Vector Bool # basicUnsafeIndexM :: Monad m => Vector Bool -> Int -> m Bool # basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) Bool -> Vector Bool -> m () # | |
MVector MVector Bool | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s Bool -> Int # basicUnsafeSlice :: Int -> Int -> MVector s Bool -> MVector s Bool # basicOverlaps :: MVector s Bool -> MVector s Bool -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Bool) # basicInitialize :: PrimMonad m => MVector (PrimState m) Bool -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Bool -> m (MVector (PrimState m) Bool) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Bool -> Int -> m Bool # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Bool -> Int -> Bool -> m () # basicClear :: PrimMonad m => MVector (PrimState m) Bool -> m () # basicSet :: PrimMonad m => MVector (PrimState m) Bool -> Bool -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Bool -> MVector (PrimState m) Bool -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Bool -> MVector (PrimState m) Bool -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Bool -> Int -> m (MVector (PrimState m) Bool) # | |
UnaryArithOpHs Not Bool Source # | |
Defined in Lorentz.Arith Associated Types type UnaryArithResHs Not Bool Source # | |
ArithOpHs Or Bool Bool Source # | |
Defined in Lorentz.Arith Associated Types type ArithResHs Or Bool Bool Source # | |
ArithOpHs And Bool Bool Source # | |
Defined in Lorentz.Arith Associated Types type ArithResHs And Bool Bool Source # | |
ArithOpHs Xor Bool Bool Source # | |
Defined in Lorentz.Arith Associated Types type ArithResHs Xor Bool Bool Source # | |
() :=> (Bounded Bool) | |
() :=> (Enum Bool) | |
() :=> (Eq Bool) | |
() :=> (Ord Bool) | |
() :=> (Read Bool) | |
() :=> (Show Bool) | |
() :=> (Bits Bool) | |
SuppressUnusedWarnings NotSym0 | |
Defined in Data.Singletons.Prelude.Bool Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings FromEnum_6989586621679922900Sym0 | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings AllSym0 | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings All_Sym0 | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings AnySym0 | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings Any_Sym0 | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (||@#@$) | |
Defined in Data.Singletons.Prelude.Bool Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (&&@#@$) | |
Defined in Data.Singletons.Prelude.Bool Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings Compare_6989586621679628770Sym0 | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ShowParenSym0 | |
Defined in Data.Singletons.Prelude.Show Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings OrSym0 | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings AndSym0 | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ToEnum_6989586621679922887Sym0 | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ShowsPrec_6989586621680297229Sym0 | |
Defined in Data.Singletons.Prelude.Show Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (<=?@#@$) | |
Defined in Data.Singletons.TypeLits.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings GetAllSym0 | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings GetAnySym0 | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SingI NotSym0 | |
Defined in Data.Singletons.Prelude.Bool | |
SingI (||@#@$) | |
Defined in Data.Singletons.Prelude.Bool | |
SingI (&&@#@$) | |
Defined in Data.Singletons.Prelude.Bool | |
SingI (<=?@#@$) | |
Defined in Data.Singletons.TypeLits.Internal | |
SingI AllSym0 | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
SingI AnySym0 | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
SingI ShowParenSym0 | |
Defined in Data.Singletons.Prelude.Show Methods sing :: Sing ShowParenSym0 # | |
SingI OrSym0 | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI AndSym0 | |
Defined in Data.Singletons.Prelude.List.Internal | |
SuppressUnusedWarnings ((||@#@$$) a6989586621679601577 :: TyFun Bool Bool -> Type) | |
Defined in Data.Singletons.Prelude.Bool Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((&&@#@$$) a6989586621679601332 :: TyFun Bool Bool -> Type) | |
Defined in Data.Singletons.Prelude.Bool Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Compare_6989586621679628770Sym1 a6989586621679628768 :: TyFun Bool Ordering -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (GuardSym0 :: TyFun Bool (f6989586621679754468 ()) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ShowsPrec_6989586621680297229Sym1 a6989586621680297226 :: TyFun Bool (Symbol ~> Symbol) -> Type) | |
Defined in Data.Singletons.Prelude.Show Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (UnlessSym0 :: TyFun Bool (f6989586621680980258 () ~> f6989586621680980258 ()) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (WhenSym0 :: TyFun Bool (f6989586621679754497 () ~> f6989586621679754497 ()) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListnullSym0 :: TyFun [a6989586621680368539] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListisPrefixOfSym0 :: TyFun [a6989586621680368562] ([a6989586621680368562] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (NullSym0 :: TyFun [a6989586621680054761] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsSuffixOfSym0 :: TyFun [a6989586621680054726] ([a6989586621680054726] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsPrefixOfSym0 :: TyFun [a6989586621680054727] ([a6989586621680054727] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsInfixOfSym0 :: TyFun [a6989586621680054725] ([a6989586621680054725] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsNothingSym0 :: TyFun (Maybe a6989586621679712805) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsJustSym0 :: TyFun (Maybe a6989586621679712806) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((<=?@#@$$) a3530822107858468865 :: TyFun Nat Bool -> Type) | |
Defined in Data.Singletons.TypeLits.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListelemSym0 :: TyFun a6989586621680368550 ([a6989586621680368550] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (NotElemSym0 :: TyFun a6989586621680054723 ([a6989586621680054723] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ElemSym0 :: TyFun a6989586621680054724 ([a6989586621680054724] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (OrSym0 :: TyFun (t6989586621680417431 Bool) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680417996Scrutinee_6989586621680417758Sym0 :: TyFun (t6989586621680417511 Bool) All -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680417987Scrutinee_6989586621680417760Sym0 :: TyFun (t6989586621680417511 Bool) Any -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409448Scrutinee_6989586621680409386Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409421Scrutinee_6989586621680409384Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AndSym0 :: TyFun (t6989586621680417432 Bool) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (DefaultEqSym0 :: TyFun k6989586621679603698 (k6989586621679603698 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Eq Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((==@#@$) :: TyFun a6989586621679603704 (a6989586621679603704 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Eq Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((/=@#@$) :: TyFun a6989586621679603704 (a6989586621679603704 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Eq Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Bool_Sym0 :: TyFun a6989586621679600564 (a6989586621679600564 ~> (Bool ~> a6989586621679600564)) -> Type) | |
Defined in Data.Singletons.Prelude.Bool Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679617628Sym0 :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679617610Sym0 :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679617592Sym0 :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679617574Sym0 :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679617672Scrutinee_6989586621679617463Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679617654Scrutinee_6989586621679617461Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679617563Scrutinee_6989586621679617451Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679617558Scrutinee_6989586621679617449Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((>@#@$) :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((>=@#@$) :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((<@#@$) :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((<=@#@$) :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680570779Sym0 :: TyFun a6989586621680417528 (Identity a6989586621680417528 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Identity Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Null_6989586621680570906Sym0 :: TyFun (Identity a6989586621680417526) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Identity Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListtakeWhileSym0 :: TyFun (a6989586621680368568 ~> Bool) ([a6989586621680368568] ~> [a6989586621680368568]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListspanSym0 :: TyFun (a6989586621680368566 ~> Bool) ([a6989586621680368566] ~> ([a6989586621680368566], [a6989586621680368566])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListpartitionSym0 :: TyFun (a6989586621680368564 ~> Bool) ([a6989586621680368564] ~> ([a6989586621680368564], [a6989586621680368564])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListnubBySym0 :: TyFun (a6989586621680368556 ~> (a6989586621680368556 ~> Bool)) ([a6989586621680368556] ~> [a6989586621680368556]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListfilterSym0 :: TyFun (a6989586621680368565 ~> Bool) ([a6989586621680368565] ~> [a6989586621680368565]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListdropWhileSym0 :: TyFun (a6989586621680368567 ~> Bool) ([a6989586621680368567] ~> [a6989586621680368567]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (UnionBySym0 :: TyFun (a6989586621680054640 ~> (a6989586621680054640 ~> Bool)) ([a6989586621680054640] ~> ([a6989586621680054640] ~> [a6989586621680054640])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TakeWhileSym0 :: TyFun (a6989586621680054667 ~> Bool) ([a6989586621680054667] ~> [a6989586621680054667]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (SpanSym0 :: TyFun (a6989586621680054664 ~> Bool) ([a6989586621680054664] ~> ([a6989586621680054664], [a6989586621680054664])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (SelectSym0 :: TyFun (a6989586621680054650 ~> Bool) (a6989586621680054650 ~> (([a6989586621680054650], [a6989586621680054650]) ~> ([a6989586621680054650], [a6989586621680054650]))) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (PartitionSym0 :: TyFun (a6989586621680054651 ~> Bool) ([a6989586621680054651] ~> ([a6989586621680054651], [a6989586621680054651])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (NubBySym0 :: TyFun (a6989586621680054642 ~> (a6989586621680054642 ~> Bool)) ([a6989586621680054642] ~> [a6989586621680054642]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059047ZsSym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] [k] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059047YsSym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] [k] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059047X_6989586621680059048Sym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] ([k], [k]) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059004ZsSym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] [k] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059004YsSym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] [k] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059004X_6989586621680059005Sym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] ([k], [k]) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IntersectBySym0 :: TyFun (a6989586621680054668 ~> (a6989586621680054668 ~> Bool)) ([a6989586621680054668] ~> ([a6989586621680054668] ~> [a6989586621680054668])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (GroupBySym0 :: TyFun (a6989586621680054654 ~> (a6989586621680054654 ~> Bool)) ([a6989586621680054654] ~> [[a6989586621680054654]]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindSym0 :: TyFun (a6989586621680054674 ~> Bool) ([a6989586621680054674] ~> Maybe a6989586621680054674) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindIndicesSym0 :: TyFun (a6989586621680054670 ~> Bool) ([a6989586621680054670] ~> [Nat]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindIndexSym0 :: TyFun (a6989586621680054671 ~> Bool) ([a6989586621680054671] ~> Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FilterSym0 :: TyFun (a6989586621680054675 ~> Bool) ([a6989586621680054675] ~> [a6989586621680054675]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_bySym0 :: TyFun (a6989586621680054641 ~> (a6989586621680054641 ~> Bool)) (a6989586621680054641 ~> ([a6989586621680054641] ~> Bool)) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (DropWhileSym0 :: TyFun (a6989586621680054666 ~> Bool) ([a6989586621680054666] ~> [a6989586621680054666]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (DropWhileEndSym0 :: TyFun (a6989586621680054665 ~> Bool) ([a6989586621680054665] ~> [a6989586621680054665]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (DeleteFirstsBySym0 :: TyFun (a6989586621680054680 ~> (a6989586621680054680 ~> Bool)) ([a6989586621680054680] ~> ([a6989586621680054680] ~> [a6989586621680054680])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (DeleteBySym0 :: TyFun (a6989586621680054681 ~> (a6989586621680054681 ~> Bool)) (a6989586621680054681 ~> ([a6989586621680054681] ~> [a6989586621680054681])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (BreakSym0 :: TyFun (a6989586621680054663 ~> Bool) ([a6989586621680054663] ~> ([a6989586621680054663], [a6989586621680054663])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AnySym0 :: TyFun (a6989586621680054744 ~> Bool) ([a6989586621680054744] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AllSym0 :: TyFun (a6989586621680054745 ~> Bool) ([a6989586621680054745] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (UntilSym0 :: TyFun (a6989586621679736119 ~> Bool) ((a6989586621679736119 ~> a6989586621679736119) ~> (a6989586621679736119 ~> a6989586621679736119)) -> Type) | |
Defined in Data.Singletons.Prelude.Base Methods suppressUnusedWarnings :: () # | |
SingI x => SingI ((||@#@$$) x :: TyFun Bool Bool -> Type) | |
Defined in Data.Singletons.Prelude.Bool | |
SingI x => SingI ((&&@#@$$) x :: TyFun Bool Bool -> Type) | |
Defined in Data.Singletons.Prelude.Bool | |
SingI x => SingI ((<=?@#@$$) x :: TyFun Nat Bool -> Type) | |
Defined in Data.Singletons.TypeLits.Internal Methods sing :: Sing ((<=?@#@$$) x) # | |
SAlternative f => SingI (GuardSym0 :: TyFun Bool (f ()) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
SApplicative f => SingI (UnlessSym0 :: TyFun Bool (f () ~> f ()) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods sing :: Sing UnlessSym0 # | |
SApplicative f => SingI (WhenSym0 :: TyFun Bool (f () ~> f ()) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
SingI (ListnullSym0 :: TyFun [a] Bool -> Type) | |
SEq a => SingI (ListisPrefixOfSym0 :: TyFun [a] ([a] ~> Bool) -> Type) | |
SingI (NullSym0 :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SEq a => SingI (IsSuffixOfSym0 :: TyFun [a] ([a] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing IsSuffixOfSym0 # | |
SEq a => SingI (IsPrefixOfSym0 :: TyFun [a] ([a] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing IsPrefixOfSym0 # | |
SEq a => SingI (IsInfixOfSym0 :: TyFun [a] ([a] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing IsInfixOfSym0 # | |
SingI (IsNothingSym0 :: TyFun (Maybe a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing IsNothingSym0 # | |
SingI (IsJustSym0 :: TyFun (Maybe a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing IsJustSym0 # | |
SEq a => SingI (ListelemSym0 :: TyFun a ([a] ~> Bool) -> Type) | |
SEq a => SingI (NotElemSym0 :: TyFun a ([a] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SEq a => SingI (ElemSym0 :: TyFun a ([a] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SFoldable t => SingI (OrSym0 :: TyFun (t Bool) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
SFoldable t => SingI (AndSym0 :: TyFun (t Bool) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
SEq a => SingI ((==@#@$) :: TyFun a (a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Eq | |
SEq a => SingI ((/=@#@$) :: TyFun a (a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Eq | |
SingI (Bool_Sym0 :: TyFun a (a ~> (Bool ~> a)) -> Type) | |
Defined in Data.Singletons.Prelude.Bool | |
SOrd a => SingI ((>@#@$) :: TyFun a (a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord | |
SOrd a => SingI ((>=@#@$) :: TyFun a (a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord | |
SOrd a => SingI ((<@#@$) :: TyFun a (a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord | |
SOrd a => SingI ((<=@#@$) :: TyFun a (a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Ord | |
SingI (ListtakeWhileSym0 :: TyFun (a ~> Bool) ([a] ~> [a]) -> Type) | |
SingI (ListspanSym0 :: TyFun (a ~> Bool) ([a] ~> ([a], [a])) -> Type) | |
SingI (ListpartitionSym0 :: TyFun (a ~> Bool) ([a] ~> ([a], [a])) -> Type) | |
SingI (ListnubBySym0 :: TyFun (a ~> (a ~> Bool)) ([a] ~> [a]) -> Type) | |
SingI (ListfilterSym0 :: TyFun (a ~> Bool) ([a] ~> [a]) -> Type) | |
SingI (ListdropWhileSym0 :: TyFun (a ~> Bool) ([a] ~> [a]) -> Type) | |
SingI (UnionBySym0 :: TyFun (a ~> (a ~> Bool)) ([a] ~> ([a] ~> [a])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing UnionBySym0 # | |
SingI (TakeWhileSym0 :: TyFun (a ~> Bool) ([a] ~> [a]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing TakeWhileSym0 # | |
SingI (SpanSym0 :: TyFun (a ~> Bool) ([a] ~> ([a], [a])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (SelectSym0 :: TyFun (a ~> Bool) (a ~> (([a], [a]) ~> ([a], [a]))) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (PartitionSym0 :: TyFun (a ~> Bool) ([a] ~> ([a], [a])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing PartitionSym0 # | |
SingI (NubBySym0 :: TyFun (a ~> (a ~> Bool)) ([a] ~> [a]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (IntersectBySym0 :: TyFun (a ~> (a ~> Bool)) ([a] ~> ([a] ~> [a])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing IntersectBySym0 # | |
SingI (GroupBySym0 :: TyFun (a ~> (a ~> Bool)) ([a] ~> [[a]]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing GroupBySym0 # | |
SingI (FindSym0 :: TyFun (a ~> Bool) ([a] ~> Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (FindIndicesSym0 :: TyFun (a ~> Bool) ([a] ~> [Nat]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing FindIndicesSym0 # | |
SingI (FindIndexSym0 :: TyFun (a ~> Bool) ([a] ~> Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing FindIndexSym0 # | |
SingI (FilterSym0 :: TyFun (a ~> Bool) ([a] ~> [a]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing FilterSym0 # | |
SingI (Elem_bySym0 :: TyFun (a ~> (a ~> Bool)) (a ~> ([a] ~> Bool)) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (DropWhileSym0 :: TyFun (a ~> Bool) ([a] ~> [a]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing DropWhileSym0 # | |
SingI (DropWhileEndSym0 :: TyFun (a ~> Bool) ([a] ~> [a]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods | |
SingI (DeleteFirstsBySym0 :: TyFun (a ~> (a ~> Bool)) ([a] ~> ([a] ~> [a])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods | |
SingI (DeleteBySym0 :: TyFun (a ~> (a ~> Bool)) (a ~> ([a] ~> [a])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing DeleteBySym0 # | |
SingI (BreakSym0 :: TyFun (a ~> Bool) ([a] ~> ([a], [a])) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (AnySym0 :: TyFun (a ~> Bool) ([a] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (AllSym0 :: TyFun (a ~> Bool) ([a] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (UntilSym0 :: TyFun (a ~> Bool) ((a ~> a) ~> (a ~> a)) -> Type) | |
Defined in Data.Singletons.Prelude.Base | |
SuppressUnusedWarnings (ListisPrefixOfSym1 a6989586621680369522 :: TyFun [a6989586621680368562] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListelemSym1 a6989586621680369457 :: TyFun [a6989586621680368550] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal.Disambiguation Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (NotElemSym1 a6989586621680059593 :: TyFun [a6989586621680054723] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsSuffixOfSym1 a6989586621680059613 :: TyFun [a6989586621680054726] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsPrefixOfSym1 a6989586621680059619 :: TyFun [a6989586621680054727] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsInfixOfSym1 a6989586621680059607 :: TyFun [a6989586621680054725] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ElemSym1 a6989586621680059600 :: TyFun [a6989586621680054724] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AnySym1 a6989586621680059850 :: TyFun [a6989586621680054744] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AllSym1 a6989586621680059857 :: TyFun [a6989586621680054745] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsRightSym0 :: TyFun (Either a6989586621680401497 b6989586621680401498) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsLeftSym0 :: TyFun (Either a6989586621680401499 b6989586621680401500) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058817Scrutinee_6989586621680055341Sym0 :: TyFun k1 (TyFun k Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_bySym1 a6989586621680058736 :: TyFun a6989586621680054641 ([a6989586621680054641] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (NotElemSym0 :: TyFun a6989586621680417422 (t6989586621680417421 a6989586621680417422 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409448Scrutinee_6989586621680409386Sym1 x6989586621680409441 :: TyFun k1 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409421Scrutinee_6989586621680409384Sym1 x6989586621680409414 :: TyFun k1 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680419218Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680419051Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680418884Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680418543Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680418423Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ElemSym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (DefaultEqSym1 a6989586621679603699 :: TyFun k6989586621679603698 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Eq Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((==@#@$$) x6989586621679603705 :: TyFun a6989586621679603704 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Eq Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((/=@#@$$) x6989586621679603707 :: TyFun a6989586621679603704 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Eq Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Bool_Sym1 a6989586621679600570 :: TyFun a6989586621679600564 (Bool ~> a6989586621679600564) -> Type) | |
Defined in Data.Singletons.Prelude.Bool Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679617628Sym1 a6989586621679617626 :: TyFun a6989586621679617431 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679617610Sym1 a6989586621679617608 :: TyFun a6989586621679617431 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679617592Sym1 a6989586621679617590 :: TyFun a6989586621679617431 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679617574Sym1 a6989586621679617572 :: TyFun a6989586621679617431 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679617672Scrutinee_6989586621679617463Sym1 x6989586621679617670 :: TyFun k1 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679617654Scrutinee_6989586621679617461Sym1 x6989586621679617652 :: TyFun k1 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679617563Scrutinee_6989586621679617451Sym1 x6989586621679617556 :: TyFun k1 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679617558Scrutinee_6989586621679617449Sym1 x6989586621679617556 :: TyFun k1 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((>@#@$$) arg6989586621679617532 :: TyFun a6989586621679617431 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((>=@#@$$) arg6989586621679617536 :: TyFun a6989586621679617431 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((<@#@$$) arg6989586621679617524 :: TyFun a6989586621679617431 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings ((<=@#@$$) arg6989586621679617528 :: TyFun a6989586621679617431 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621680733389Sym0 :: TyFun (Arg a6989586621680732234 b6989586621680732235) (Arg a6989586621680732234 b6989586621680732235 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Semigroup Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680570779Sym1 a6989586621680570777 :: TyFun (Identity a6989586621680417528) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Identity Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (MfilterSym0 :: TyFun (a6989586621680980254 ~> Bool) (m6989586621680980253 a6989586621680980254 ~> m6989586621680980253 a6989586621680980254) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FilterMSym0 :: TyFun (a6989586621680980292 ~> m6989586621680980291 Bool) ([a6989586621680980292] ~> m6989586621680980291 [a6989586621680980292]) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058900ZsSym0 :: TyFun (k1 ~> (a6989586621680054664 ~> Bool)) (TyFun k1 (TyFun [a6989586621680054664] [a6989586621680054664] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058900YsSym0 :: TyFun (k1 ~> (a6989586621680054664 ~> Bool)) (TyFun k1 (TyFun [a6989586621680054664] [a6989586621680054664] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058900X_6989586621680058901Sym0 :: TyFun (k1 ~> (a6989586621680054664 ~> Bool)) (TyFun k1 (TyFun [a6989586621680054664] ([a6989586621680054664], [a6989586621680054664]) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058752NubBy'Sym0 :: TyFun (k1 ~> (k1 ~> Bool)) (TyFun k (TyFun [k1] ([k1] ~> [k1]) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680059080Sym0 :: TyFun (a6989586621680054761 ~> Bool) (TyFun k (TyFun a6989586621680054761 (TyFun [a6989586621680054761] [a6989586621680054761] -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680417977Scrutinee_6989586621680417762Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) Any -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680417964Scrutinee_6989586621680417764Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) All -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680417879Scrutinee_6989586621680417770Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) (First a6989586621680417514) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680417880Sym0 :: TyFun (a6989586621679083079 ~> Bool) (TyFun k (TyFun a6989586621679083079 (First a6989586621679083079) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindSym0 :: TyFun (a6989586621680417420 ~> Bool) (t6989586621680417419 a6989586621680417420 ~> Maybe a6989586621680417420) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AnySym0 :: TyFun (a6989586621680417430 ~> Bool) (t6989586621680417429 a6989586621680417430 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AllSym0 :: TyFun (a6989586621680417428 ~> Bool) (t6989586621680417427 a6989586621680417428 ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679736255GoSym0 :: TyFun (k1 ~> Bool) (TyFun (k1 ~> k1) (TyFun k2 (TyFun k1 k1 -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Base Methods suppressUnusedWarnings :: () # | |
(SEq a, SingI d) => SingI (ListisPrefixOfSym1 d :: TyFun [a] Bool -> Type) | |
(SEq a, SingI d) => SingI (ListelemSym1 d :: TyFun [a] Bool -> Type) | |
(SEq a, SingI d) => SingI (NotElemSym1 d :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
(SEq a, SingI d) => SingI (IsSuffixOfSym1 d :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing (IsSuffixOfSym1 d) # | |
(SEq a, SingI d) => SingI (IsPrefixOfSym1 d :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing (IsPrefixOfSym1 d) # | |
(SEq a, SingI d) => SingI (IsInfixOfSym1 d :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing (IsInfixOfSym1 d) # | |
(SEq a, SingI d) => SingI (ElemSym1 d :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI d => SingI (AnySym1 d :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI d => SingI (AllSym1 d :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (IsRightSym0 :: TyFun (Either a b) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods sing :: Sing IsRightSym0 # | |
SingI (IsLeftSym0 :: TyFun (Either a b) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods sing :: Sing IsLeftSym0 # | |
SingI d => SingI (Elem_bySym1 d :: TyFun a ([a] ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
(SFoldable t, SEq a) => SingI (NotElemSym0 :: TyFun a (t a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods sing :: Sing NotElemSym0 # | |
(SFoldable t, SEq a) => SingI (ElemSym0 :: TyFun a (t a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
(SEq a, SingI x) => SingI ((==@#@$$) x :: TyFun a Bool -> Type) | |
Defined in Data.Singletons.Prelude.Eq | |
(SEq a, SingI x) => SingI ((/=@#@$$) x :: TyFun a Bool -> Type) | |
Defined in Data.Singletons.Prelude.Eq | |
SingI d => SingI (Bool_Sym1 d :: TyFun a (Bool ~> a) -> Type) | |
Defined in Data.Singletons.Prelude.Bool | |
(SOrd a, SingI d) => SingI ((>@#@$$) d :: TyFun a Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord | |
(SOrd a, SingI d) => SingI ((>=@#@$$) d :: TyFun a Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord | |
(SOrd a, SingI d) => SingI ((<@#@$$) d :: TyFun a Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord | |
(SOrd a, SingI d) => SingI ((<=@#@$$) d :: TyFun a Bool -> Type) | |
Defined in Data.Singletons.Prelude.Ord | |
SMonadPlus m => SingI (MfilterSym0 :: TyFun (a ~> Bool) (m a ~> m a) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods sing :: Sing MfilterSym0 # | |
SApplicative m => SingI (FilterMSym0 :: TyFun (a ~> m Bool) ([a] ~> m [a]) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods sing :: Sing FilterMSym0 # | |
SFoldable t => SingI (FindSym0 :: TyFun (a ~> Bool) (t a ~> Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
SFoldable t => SingI (AnySym0 :: TyFun (a ~> Bool) (t a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
SFoldable t => SingI (AllSym0 :: TyFun (a ~> Bool) (t a ~> Bool) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
SuppressUnusedWarnings (Bool_Sym2 a6989586621679600571 a6989586621679600570 :: TyFun Bool a6989586621679600564 -> Type) | |
Defined in Data.Singletons.Prelude.Bool Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_bySym2 a6989586621680058737 a6989586621680058736 :: TyFun [a6989586621680054641] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680980750Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059084Scrutinee_6989586621680055319Sym0 :: TyFun k1 (TyFun [a6989586621680054761] (TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058979Scrutinee_6989586621680055325Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058965Scrutinee_6989586621680055327Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058885Scrutinee_6989586621680055337Sym0 :: TyFun k1 (TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058817Scrutinee_6989586621680055341Sym1 n6989586621680058815 :: TyFun k Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058798Scrutinee_6989586621680055343Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058783Scrutinee_6989586621680055345Sym0 :: TyFun k1 (TyFun k2 (TyFun [k1] (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058762Scrutinee_6989586621680055347Sym0 :: TyFun k1 (TyFun k2 (TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Null_6989586621680419345Sym0 :: TyFun (t6989586621680417511 a6989586621680417526) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Null_6989586621680419178Sym0 :: TyFun (t6989586621680417511 a6989586621680417526) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Null_6989586621680419011Sym0 :: TyFun (t6989586621680417511 a6989586621680417526) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Null_6989586621680418862Sym0 :: TyFun (t6989586621680417511 a6989586621680417526) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Null_6989586621680418686Sym0 :: TyFun (t6989586621680417511 a6989586621680417526) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Null_6989586621680418379Sym0 :: TyFun (t6989586621680417511 a6989586621680417526) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (NullSym0 :: TyFun (t6989586621680417511 a6989586621680417526) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (NotElemSym1 a6989586621680417900 t6989586621680417421 :: TyFun (t6989586621680417421 a6989586621680417422) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680418386Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680419218Sym1 a6989586621680419216 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680419051Sym1 a6989586621680419049 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680418884Sym1 a6989586621680418882 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680418543Sym1 a6989586621680418541 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Elem_6989586621680418423Sym1 a6989586621680418421 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ElemSym1 arg6989586621680418174 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AnySym1 a6989586621680417971 t6989586621680417429 :: TyFun (t6989586621680417429 a6989586621680417430) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (AllSym1 a6989586621680417958 t6989586621680417427 :: TyFun (t6989586621680417427 a6989586621680417428) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621680733389Sym1 a6989586621680733387 :: TyFun (Arg a6989586621680732234 b6989586621680732235) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Semigroup Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680980747Sym0 :: TyFun (k2 ~> f6989586621679754551 Bool) (TyFun k3 (TyFun k2 (TyFun (f6989586621679754551 [k2]) (f6989586621679754551 [k2]) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680980579Sym0 :: TyFun (k1 ~> Bool) (TyFun k (TyFun k1 (m6989586621679754575 k1) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
(SingI d1, SingI d2) => SingI (Bool_Sym2 d1 d2 :: TyFun Bool a -> Type) | |
Defined in Data.Singletons.Prelude.Bool | |
(SingI d1, SingI d2) => SingI (Elem_bySym2 d1 d2 :: TyFun [a] Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SFoldable t => SingI (NullSym0 :: TyFun (t a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
(SFoldable t, SEq a, SingI d) => SingI (NotElemSym1 d t :: TyFun (t a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods sing :: Sing (NotElemSym1 d t) # | |
(SFoldable t, SEq a, SingI d) => SingI (ElemSym1 d t :: TyFun (t a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
(SFoldable t, SingI d) => SingI (AnySym1 d t :: TyFun (t a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
(SFoldable t, SingI d) => SingI (AllSym1 d t :: TyFun (t a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
SuppressUnusedWarnings (Let6989586621680059084Scrutinee_6989586621680055319Sym1 x6989586621680059082 :: TyFun [a6989586621680054761] (TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680980750Sym1 x6989586621680980749 :: TyFun k2 (TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058979Scrutinee_6989586621680055325Sym1 n6989586621680058976 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058965Scrutinee_6989586621680055327Sym1 n6989586621680058962 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058885Scrutinee_6989586621680055337Sym1 key6989586621680058881 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058798Scrutinee_6989586621680055343Sym1 x6989586621680058795 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058783Scrutinee_6989586621680055345Sym1 x6989586621680058780 :: TyFun k2 (TyFun [k1] (TyFun k3 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058762Scrutinee_6989586621680055347Sym1 y6989586621680058759 :: TyFun k2 (TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680418386Sym1 a_69895866216804183816989586621680418385 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899506Scrutinee_6989586621679899272Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058783Scrutinee_6989586621680055345Sym2 xs6989586621680058781 x6989586621680058780 :: TyFun [k1] (TyFun k3 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058762Scrutinee_6989586621680055347Sym2 ys6989586621680058760 y6989586621680058759 :: TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680980750Sym2 p6989586621680980745 x6989586621680980749 :: TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058979Scrutinee_6989586621680055325Sym2 x6989586621680058977 n6989586621680058976 :: TyFun k3 Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058965Scrutinee_6989586621680055327Sym2 x6989586621680058963 n6989586621680058962 :: TyFun k3 Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058885Scrutinee_6989586621680055337Sym2 x6989586621680058882 key6989586621680058881 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058798Scrutinee_6989586621680055343Sym2 xs6989586621680058796 x6989586621680058795 :: TyFun k3 Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680418386Sym2 t6989586621680418393 a_69895866216804183816989586621680418385 :: TyFun k3 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899506Scrutinee_6989586621679899272Sym1 x6989586621679899505 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899429Scrutinee_6989586621679899286Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899372Scrutinee_6989586621679899296Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059084Scrutinee_6989586621680055319Sym2 xs6989586621680059083 x6989586621680059082 :: TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680059152Sym0 :: TyFun (b6989586621679754579 ~> (a6989586621680054744 ~> Bool)) (TyFun k1 (TyFun k2 (TyFun a6989586621680054744 (TyFun [a6989586621680054744] (TyFun b6989586621679754579 (m6989586621679754575 b6989586621679754579) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680980750Sym3 a_69895866216809807436989586621680980746 p6989586621680980745 x6989586621680980749 :: TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monad Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680059084Scrutinee_6989586621680055319Sym3 p6989586621680059078 xs6989586621680059083 x6989586621680059082 :: TyFun k Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058885Scrutinee_6989586621680055337Sym3 y6989586621680058883 x6989586621680058882 key6989586621680058881 :: TyFun k3 Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058783Scrutinee_6989586621680055345Sym3 ls6989586621680058782 xs6989586621680058781 x6989586621680058780 :: TyFun k3 Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899506Scrutinee_6989586621679899272Sym2 x06989586621679899496 x6989586621679899505 :: TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899429Scrutinee_6989586621679899286Sym1 x16989586621679899424 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899372Scrutinee_6989586621679899296Sym1 x16989586621679899367 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058762Scrutinee_6989586621680055347Sym3 xs6989586621680058761 ys6989586621680058760 y6989586621680058759 :: TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680058762Scrutinee_6989586621680055347Sym4 eq6989586621680058750 xs6989586621680058761 ys6989586621680058760 y6989586621680058759 :: TyFun k3 Bool -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899506Scrutinee_6989586621679899272Sym3 y6989586621679899497 x06989586621679899496 x6989586621679899505 :: TyFun k3 (TyFun k4 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899429Scrutinee_6989586621679899286Sym2 x26989586621679899425 x16989586621679899424 :: TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899372Scrutinee_6989586621679899296Sym2 x26989586621679899368 x16989586621679899367 :: TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899506Scrutinee_6989586621679899272Sym4 arg_69895866216798992686989586621679899492 y6989586621679899497 x06989586621679899496 x6989586621679899505 :: TyFun k4 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899429Scrutinee_6989586621679899286Sym3 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899372Scrutinee_6989586621679899296Sym3 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899429Scrutinee_6989586621679899286Sym4 arg_69895866216798992806989586621679899419 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k4 (TyFun k5 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899372Scrutinee_6989586621679899296Sym4 arg_69895866216798992906989586621679899362 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k4 (TyFun k5 Bool -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899429Scrutinee_6989586621679899286Sym5 arg_69895866216798992826989586621679899420 arg_69895866216798992806989586621679899419 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k5 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679899372Scrutinee_6989586621679899296Sym5 arg_69895866216798992926989586621679899363 arg_69895866216798992906989586621679899362 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k5 Bool -> Type) | |
Defined in Data.Singletons.Prelude.Enum Methods suppressUnusedWarnings :: () # | |
type Rep Bool | |
data Sing (a :: Bool) | |
type DemoteRep Bool | |
Defined in GHC.Generics | |
newtype Vector Bool | |
type MaxBound | |
Defined in Data.Singletons.Prelude.Enum type MaxBound = MaxBound_6989586621679895528Sym0 | |
type MinBound | |
Defined in Data.Singletons.Prelude.Enum type MinBound = MinBound_6989586621679895526Sym0 | |
type Sing | |
Defined in Data.Singletons.Prelude.Instances | |
type Demote Bool | |
Defined in Data.Singletons.Prelude.Instances | |
type TypeDocFieldDescriptions Bool | |
Defined in Michelson.Typed.Haskell.Doc | |
type ToT Bool | |
Defined in Michelson.Typed.Haskell.Value | |
type Show_ (arg0 :: Bool) | |
type FromEnum (a :: Bool) | |
Defined in Data.Singletons.Prelude.Enum | |
type ToEnum a | |
Defined in Data.Singletons.Prelude.Enum | |
type Pred (arg0 :: Bool) | |
type Succ (arg0 :: Bool) | |
newtype MVector s Bool | |
type UnaryArithResHs Not Bool Source # | |
Defined in Lorentz.Arith | |
type ShowList (arg1 :: [Bool]) arg2 | |
type EnumFromTo (arg1 :: Bool) (arg2 :: Bool) | |
type Min (arg1 :: Bool) (arg2 :: Bool) | |
type Max (arg1 :: Bool) (arg2 :: Bool) | |
type (arg1 :: Bool) >= (arg2 :: Bool) | |
type (arg1 :: Bool) > (arg2 :: Bool) | |
type (arg1 :: Bool) <= (arg2 :: Bool) | |
type (arg1 :: Bool) < (arg2 :: Bool) | |
type Compare (a1 :: Bool) (a2 :: Bool) | |
type (x :: Bool) /= (y :: Bool) | |
type (a :: Bool) == (b :: Bool) | |
Defined in Data.Singletons.Prelude.Eq | |
type ArithResHs Or Bool Bool Source # | |
Defined in Lorentz.Arith | |
type ArithResHs And Bool Bool Source # | |
Defined in Lorentz.Arith | |
type ArithResHs Xor Bool Bool Source # | |
Defined in Lorentz.Arith | |
type ShowsPrec a1 (a2 :: Bool) a3 | |
type EnumFromThenTo (arg1 :: Bool) (arg2 :: Bool) (arg3 :: Bool) | |
type Apply NotSym0 (a6989586621679601878 :: Bool) | |
Defined in Data.Singletons.Prelude.Bool | |
type Apply FromEnum_6989586621679922900Sym0 (a6989586621679922899 :: Bool) | |
Defined in Data.Singletons.Prelude.Enum | |
type Apply All_Sym0 (a6989586621679991069 :: Bool) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply AllSym0 (t6989586621679958404 :: Bool) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply Any_Sym0 (a6989586621679991068 :: Bool) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply AnySym0 (t6989586621679958417 :: Bool) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply ToEnum_6989586621679922887Sym0 (a6989586621679922886 :: Nat) | |
Defined in Data.Singletons.Prelude.Enum | |
type Apply GetAllSym0 (a6989586621679958401 :: All) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply GetAnySym0 (a6989586621679958414 :: Any) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply ((||@#@$$) a6989586621679601577 :: TyFun Bool Bool -> Type) (b6989586621679601578 :: Bool) | |
type Apply ((&&@#@$$) a6989586621679601332 :: TyFun Bool Bool -> Type) (b6989586621679601333 :: Bool) | |
type Apply (Compare_6989586621679628770Sym1 a6989586621679628768 :: TyFun Bool Ordering -> Type) (a6989586621679628769 :: Bool) | |
type Apply ((<=?@#@$$) a3530822107858468865 :: TyFun Nat Bool -> Type) (b3530822107858468866 :: Nat) | |
Defined in Data.Singletons.TypeLits.Internal | |
type Apply (Let6989586621680409421Scrutinee_6989586621680409384Sym1 x6989586621680409414 :: TyFun k1 Bool -> Type) (y6989586621680409415 :: k1) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Let6989586621680409448Scrutinee_6989586621680409386Sym1 x6989586621680409441 :: TyFun k1 Bool -> Type) (y6989586621680409442 :: k1) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply ((==@#@$$) x6989586621679603705 :: TyFun a Bool -> Type) (y6989586621679603706 :: a) | |
type Apply ((/=@#@$$) x6989586621679603707 :: TyFun a Bool -> Type) (y6989586621679603708 :: a) | |
type Apply (DefaultEqSym1 a6989586621679603699 :: TyFun k Bool -> Type) (b6989586621679603700 :: k) | |
Defined in Data.Singletons.Prelude.Eq | |
type Apply (Let6989586621679617558Scrutinee_6989586621679617449Sym1 x6989586621679617556 :: TyFun k1 Bool -> Type) (y6989586621679617557 :: k1) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply (TFHelper_6989586621679617628Sym1 a6989586621679617626 :: TyFun a Bool -> Type) (a6989586621679617627 :: a) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply (TFHelper_6989586621679617610Sym1 a6989586621679617608 :: TyFun a Bool -> Type) (a6989586621679617609 :: a) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply (TFHelper_6989586621679617592Sym1 a6989586621679617590 :: TyFun a Bool -> Type) (a6989586621679617591 :: a) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply (TFHelper_6989586621679617574Sym1 a6989586621679617572 :: TyFun a Bool -> Type) (a6989586621679617573 :: a) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply ((<=@#@$$) arg6989586621679617528 :: TyFun a Bool -> Type) (arg6989586621679617529 :: a) | |
type Apply ((>=@#@$$) arg6989586621679617536 :: TyFun a Bool -> Type) (arg6989586621679617537 :: a) | |
type Apply ((>@#@$$) arg6989586621679617532 :: TyFun a Bool -> Type) (arg6989586621679617533 :: a) | |
type Apply (Let6989586621679617672Scrutinee_6989586621679617463Sym1 x6989586621679617670 :: TyFun k1 Bool -> Type) (y6989586621679617671 :: k1) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply (Let6989586621679617654Scrutinee_6989586621679617461Sym1 x6989586621679617652 :: TyFun k1 Bool -> Type) (y6989586621679617653 :: k1) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply (Let6989586621679617563Scrutinee_6989586621679617451Sym1 x6989586621679617556 :: TyFun k1 Bool -> Type) (y6989586621679617557 :: k1) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply ((<@#@$$) arg6989586621679617524 :: TyFun a Bool -> Type) (arg6989586621679617525 :: a) | |
type Apply (Bool_Sym2 a6989586621679600571 a6989586621679600570 :: TyFun Bool a -> Type) (a6989586621679600572 :: Bool) | |
type Apply (Let6989586621680058817Scrutinee_6989586621680055341Sym1 n6989586621680058815 :: TyFun k Bool -> Type) (x6989586621680058816 :: k) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058798Scrutinee_6989586621680055343Sym2 xs6989586621680058796 x6989586621680058795 :: TyFun k3 Bool -> Type) (n6989586621680058797 :: k3) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058965Scrutinee_6989586621680055327Sym2 x6989586621680058963 n6989586621680058962 :: TyFun k3 Bool -> Type) (xs6989586621680058964 :: k3) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058979Scrutinee_6989586621680055325Sym2 x6989586621680058977 n6989586621680058976 :: TyFun k3 Bool -> Type) (xs6989586621680058978 :: k3) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Lambda_6989586621680418386Sym2 t6989586621680418393 a_69895866216804183816989586621680418385 :: TyFun k3 Bool -> Type) (t6989586621680418394 :: k3) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Let6989586621680058885Scrutinee_6989586621680055337Sym3 y6989586621680058883 x6989586621680058882 key6989586621680058881 :: TyFun k3 Bool -> Type) (xys6989586621680058884 :: k3) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058885Scrutinee_6989586621680055337Sym3 y6989586621680058883 x6989586621680058882 key6989586621680058881 :: TyFun k3 Bool -> Type) (xys6989586621680058884 :: k3) = Let6989586621680058885Scrutinee_6989586621680055337 y6989586621680058883 x6989586621680058882 key6989586621680058881 xys6989586621680058884 | |
type Apply (Let6989586621680058783Scrutinee_6989586621680055345Sym3 ls6989586621680058782 xs6989586621680058781 x6989586621680058780 :: TyFun k3 Bool -> Type) (l6989586621680058773 :: k3) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058783Scrutinee_6989586621680055345Sym3 ls6989586621680058782 xs6989586621680058781 x6989586621680058780 :: TyFun k3 Bool -> Type) (l6989586621680058773 :: k3) = Let6989586621680058783Scrutinee_6989586621680055345 ls6989586621680058782 xs6989586621680058781 x6989586621680058780 l6989586621680058773 | |
type Apply (Let6989586621680059084Scrutinee_6989586621680055319Sym3 p6989586621680059078 xs6989586621680059083 x6989586621680059082 :: TyFun k Bool -> Type) (a_69895866216800590766989586621680059079 :: k) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680059084Scrutinee_6989586621680055319Sym3 p6989586621680059078 xs6989586621680059083 x6989586621680059082 :: TyFun k Bool -> Type) (a_69895866216800590766989586621680059079 :: k) = Let6989586621680059084Scrutinee_6989586621680055319 p6989586621680059078 xs6989586621680059083 x6989586621680059082 a_69895866216800590766989586621680059079 | |
type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym4 eq6989586621680058750 xs6989586621680058761 ys6989586621680058760 y6989586621680058759 :: TyFun k3 Bool -> Type) (l6989586621680058751 :: k3) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym4 eq6989586621680058750 xs6989586621680058761 ys6989586621680058760 y6989586621680058759 :: TyFun k3 Bool -> Type) (l6989586621680058751 :: k3) = Let6989586621680058762Scrutinee_6989586621680055347 eq6989586621680058750 xs6989586621680058761 ys6989586621680058760 y6989586621680058759 l6989586621680058751 | |
type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym4 arg_69895866216798992686989586621679899492 y6989586621679899497 x06989586621679899496 x6989586621679899505 :: TyFun k4 Bool -> Type) (arg_69895866216798992706989586621679899493 :: k4) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym4 arg_69895866216798992686989586621679899492 y6989586621679899497 x06989586621679899496 x6989586621679899505 :: TyFun k4 Bool -> Type) (arg_69895866216798992706989586621679899493 :: k4) = Let6989586621679899506Scrutinee_6989586621679899272 arg_69895866216798992686989586621679899492 y6989586621679899497 x06989586621679899496 x6989586621679899505 arg_69895866216798992706989586621679899493 | |
type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym5 arg_69895866216798992926989586621679899363 arg_69895866216798992906989586621679899362 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k5 Bool -> Type) (arg_69895866216798992946989586621679899364 :: k5) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym5 arg_69895866216798992926989586621679899363 arg_69895866216798992906989586621679899362 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k5 Bool -> Type) (arg_69895866216798992946989586621679899364 :: k5) = Let6989586621679899372Scrutinee_6989586621679899296 arg_69895866216798992926989586621679899363 arg_69895866216798992906989586621679899362 y6989586621679899369 x26989586621679899368 x16989586621679899367 arg_69895866216798992946989586621679899364 | |
type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym5 arg_69895866216798992826989586621679899420 arg_69895866216798992806989586621679899419 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k5 Bool -> Type) (arg_69895866216798992846989586621679899421 :: k5) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym5 arg_69895866216798992826989586621679899420 arg_69895866216798992806989586621679899419 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k5 Bool -> Type) (arg_69895866216798992846989586621679899421 :: k5) = Let6989586621679899429Scrutinee_6989586621679899286 arg_69895866216798992826989586621679899420 arg_69895866216798992806989586621679899419 y6989586621679899426 x26989586621679899425 x16989586621679899424 arg_69895866216798992846989586621679899421 | |
type Eval (Not 'False) | |
Defined in Fcf.Data.Bool | |
type Eval (Not 'True) | |
Defined in Fcf.Data.Bool | |
type Apply (GuardSym0 :: TyFun Bool (f6989586621679754468 ()) -> Type) (a6989586621679754634 :: Bool) | |
type Eval (Null (a2 ': as) :: Bool -> Type) | |
type Eval (Null ('[] :: [a]) :: Bool -> Type) | |
type Eval (And lst :: Bool -> Type) | |
type Eval (Or lst :: Bool -> Type) | |
type Eval (a <= b :: Bool -> Type) | |
type Eval (a >= b :: Bool -> Type) | |
type Eval (a < b :: Bool -> Type) | |
type Eval (a > b :: Bool -> Type) | |
type Eval (IsNothing ('Nothing :: Maybe a) :: Bool -> Type) | |
type Eval (IsNothing ('Just _a) :: Bool -> Type) | |
type Eval (IsJust ('Nothing :: Maybe a) :: Bool -> Type) | |
type Eval (IsJust ('Just _a) :: Bool -> Type) | |
type Eval ('False || b :: Bool -> Type) | |
type Eval ('True || b :: Bool -> Type) | |
type Eval (a || 'False :: Bool -> Type) | |
type Eval (a || 'True :: Bool -> Type) | |
type Eval ('False && b :: Bool -> Type) | |
type Eval ('True && b :: Bool -> Type) | |
type Eval (a && 'True :: Bool -> Type) | |
type Eval (a && 'False :: Bool -> Type) | |
type Apply (||@#@$) (a6989586621679601577 :: Bool) | |
Defined in Data.Singletons.Prelude.Bool | |
type Apply (&&@#@$) (a6989586621679601332 :: Bool) | |
Defined in Data.Singletons.Prelude.Bool | |
type Apply Compare_6989586621679628770Sym0 (a6989586621679628768 :: Bool) | |
Defined in Data.Singletons.Prelude.Ord | |
type Apply ShowParenSym0 (a6989586621680279125 :: Bool) | |
Defined in Data.Singletons.Prelude.Show | |
type Apply ShowsPrec_6989586621680297229Sym0 (a6989586621680297226 :: Nat) | |
Defined in Data.Singletons.Prelude.Show | |
type Apply (<=?@#@$) (a3530822107858468865 :: Nat) | |
Defined in Data.Singletons.TypeLits.Internal | |
type Apply (ShowsPrec_6989586621680297229Sym1 a6989586621680297226 :: TyFun Bool (Symbol ~> Symbol) -> Type) (a6989586621680297227 :: Bool) | |
type Apply (UnlessSym0 :: TyFun Bool (f6989586621680980258 () ~> f6989586621680980258 ()) -> Type) (a6989586621680980610 :: Bool) | |
Defined in Data.Singletons.Prelude.Monad type Apply (UnlessSym0 :: TyFun Bool (f6989586621680980258 () ~> f6989586621680980258 ()) -> Type) (a6989586621680980610 :: Bool) = UnlessSym1 a6989586621680980610 f6989586621680980258 :: TyFun (f6989586621680980258 ()) (f6989586621680980258 ()) -> Type | |
type Apply (WhenSym0 :: TyFun Bool (f6989586621679754497 () ~> f6989586621679754497 ()) -> Type) (a6989586621679754882 :: Bool) | |
type Apply (ListelemSym0 :: TyFun a6989586621680368550 ([a6989586621680368550] ~> Bool) -> Type) (a6989586621680369457 :: a6989586621680368550) | |
type Apply (NotElemSym0 :: TyFun a6989586621680054723 ([a6989586621680054723] ~> Bool) -> Type) (a6989586621680059593 :: a6989586621680054723) | |
type Apply (ElemSym0 :: TyFun a6989586621680054724 ([a6989586621680054724] ~> Bool) -> Type) (a6989586621680059600 :: a6989586621680054724) | |
type Apply (Let6989586621680409421Scrutinee_6989586621680409384Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) (x6989586621680409414 :: k1) | |
type Apply (Let6989586621680409448Scrutinee_6989586621680409386Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) (x6989586621680409441 :: k1) | |
type Apply ((==@#@$) :: TyFun a6989586621679603704 (a6989586621679603704 ~> Bool) -> Type) (x6989586621679603705 :: a6989586621679603704) | |
type Apply ((/=@#@$) :: TyFun a6989586621679603704 (a6989586621679603704 ~> Bool) -> Type) (x6989586621679603707 :: a6989586621679603704) | |
type Apply (DefaultEqSym0 :: TyFun k6989586621679603698 (k6989586621679603698 ~> Bool) -> Type) (a6989586621679603699 :: k6989586621679603698) | |
Defined in Data.Singletons.Prelude.Eq type Apply (DefaultEqSym0 :: TyFun k6989586621679603698 (k6989586621679603698 ~> Bool) -> Type) (a6989586621679603699 :: k6989586621679603698) = DefaultEqSym1 a6989586621679603699 | |
type Apply (Bool_Sym0 :: TyFun a6989586621679600564 (a6989586621679600564 ~> (Bool ~> a6989586621679600564)) -> Type) (a6989586621679600570 :: a6989586621679600564) | |
type Apply (Let6989586621679617558Scrutinee_6989586621679617449Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) (x6989586621679617556 :: k1) | |
type Apply (TFHelper_6989586621679617628Sym0 :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) (a6989586621679617626 :: a6989586621679617431) | |
type Apply (TFHelper_6989586621679617610Sym0 :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) (a6989586621679617608 :: a6989586621679617431) | |
type Apply (TFHelper_6989586621679617592Sym0 :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) (a6989586621679617590 :: a6989586621679617431) | |
type Apply (TFHelper_6989586621679617574Sym0 :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) (a6989586621679617572 :: a6989586621679617431) | |
type Apply ((<=@#@$) :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) (arg6989586621679617528 :: a6989586621679617431) | |
type Apply ((>=@#@$) :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) (arg6989586621679617536 :: a6989586621679617431) | |
type Apply ((>@#@$) :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) (arg6989586621679617532 :: a6989586621679617431) | |
type Apply (Let6989586621679617672Scrutinee_6989586621679617463Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) (x6989586621679617670 :: k1) | |
type Apply (Let6989586621679617654Scrutinee_6989586621679617461Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) (x6989586621679617652 :: k1) | |
type Apply (Let6989586621679617563Scrutinee_6989586621679617451Sym0 :: TyFun k1 (TyFun k1 Bool -> Type) -> Type) (x6989586621679617556 :: k1) | |
type Apply ((<@#@$) :: TyFun a6989586621679617431 (a6989586621679617431 ~> Bool) -> Type) (arg6989586621679617524 :: a6989586621679617431) | |
type Apply (Elem_6989586621680570779Sym0 :: TyFun a6989586621680417528 (Identity a6989586621680417528 ~> Bool) -> Type) (a6989586621680570777 :: a6989586621680417528) | |
type Apply (Let6989586621680058817Scrutinee_6989586621680055341Sym0 :: TyFun k1 (TyFun k Bool -> Type) -> Type) (n6989586621680058815 :: k1) | |
type Apply (Elem_bySym1 a6989586621680058736 :: TyFun a6989586621680054641 ([a6989586621680054641] ~> Bool) -> Type) (a6989586621680058737 :: a6989586621680054641) | |
type Apply (Elem_6989586621680418423Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680418421 :: a6989586621680417528) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Elem_6989586621680418423Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680418421 :: a6989586621680417528) = Elem_6989586621680418423Sym1 a6989586621680418421 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type | |
type Apply (ElemSym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (arg6989586621680418174 :: a6989586621680417528) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (NotElemSym0 :: TyFun a6989586621680417422 (t6989586621680417421 a6989586621680417422 ~> Bool) -> Type) (a6989586621680417900 :: a6989586621680417422) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (NotElemSym0 :: TyFun a6989586621680417422 (t6989586621680417421 a6989586621680417422 ~> Bool) -> Type) (a6989586621680417900 :: a6989586621680417422) = NotElemSym1 a6989586621680417900 t6989586621680417421 :: TyFun (t6989586621680417421 a6989586621680417422) Bool -> Type | |
type Apply (Elem_6989586621680418543Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680418541 :: a6989586621680417528) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Elem_6989586621680418543Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680418541 :: a6989586621680417528) = Elem_6989586621680418543Sym1 a6989586621680418541 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type | |
type Apply (Elem_6989586621680418884Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680418882 :: a6989586621680417528) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Elem_6989586621680418884Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680418882 :: a6989586621680417528) = Elem_6989586621680418884Sym1 a6989586621680418882 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type | |
type Apply (Elem_6989586621680419051Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680419049 :: a6989586621680417528) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Elem_6989586621680419051Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680419049 :: a6989586621680417528) = Elem_6989586621680419051Sym1 a6989586621680419049 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type | |
type Apply (Elem_6989586621680419218Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680419216 :: a6989586621680417528) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Elem_6989586621680419218Sym0 :: TyFun a6989586621680417528 (t6989586621680417511 a6989586621680417528 ~> Bool) -> Type) (a6989586621680419216 :: a6989586621680417528) = Elem_6989586621680419218Sym1 a6989586621680419216 t6989586621680417511 :: TyFun (t6989586621680417511 a6989586621680417528) Bool -> Type | |
type Apply (Bool_Sym1 a6989586621679600570 :: TyFun a6989586621679600564 (Bool ~> a6989586621679600564) -> Type) (a6989586621679600571 :: a6989586621679600564) | |
type Apply (Lambda_6989586621680980750Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) -> Type) -> Type) (x6989586621680980749 :: k1) | |
Defined in Data.Singletons.Prelude.Monad type Apply (Lambda_6989586621680980750Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) -> Type) -> Type) (x6989586621680980749 :: k1) = Lambda_6989586621680980750Sym1 x6989586621680980749 :: TyFun k2 (TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) -> Type | |
type Apply (Let6989586621680058798Scrutinee_6989586621680055343Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) (x6989586621680058795 :: k1) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058885Scrutinee_6989586621680055337Sym0 :: TyFun k1 (TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) (key6989586621680058881 :: k1) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058885Scrutinee_6989586621680055337Sym0 :: TyFun k1 (TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) (key6989586621680058881 :: k1) = Let6989586621680058885Scrutinee_6989586621680055337Sym1 key6989586621680058881 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type | |
type Apply (Let6989586621680058965Scrutinee_6989586621680055327Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) (n6989586621680058962 :: k1) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058979Scrutinee_6989586621680055325Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) (n6989586621680058976 :: k1) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym0 :: TyFun k1 (TyFun k2 (TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) -> Type) (y6989586621680058759 :: k1) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym0 :: TyFun k1 (TyFun k2 (TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) -> Type) (y6989586621680058759 :: k1) = Let6989586621680058762Scrutinee_6989586621680055347Sym1 y6989586621680058759 :: TyFun k2 (TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type | |
type Apply (Let6989586621680058783Scrutinee_6989586621680055345Sym0 :: TyFun k1 (TyFun k2 (TyFun [k1] (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) (x6989586621680058780 :: k1) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058783Scrutinee_6989586621680055345Sym0 :: TyFun k1 (TyFun k2 (TyFun [k1] (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) (x6989586621680058780 :: k1) = Let6989586621680058783Scrutinee_6989586621680055345Sym1 x6989586621680058780 :: TyFun k2 (TyFun [k1] (TyFun k3 Bool -> Type) -> Type) -> Type | |
type Apply (Let6989586621680059084Scrutinee_6989586621680055319Sym0 :: TyFun k1 (TyFun [a6989586621680054761] (TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) -> Type) -> Type) (x6989586621680059082 :: k1) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680059084Scrutinee_6989586621680055319Sym0 :: TyFun k1 (TyFun [a6989586621680054761] (TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) -> Type) -> Type) (x6989586621680059082 :: k1) = Let6989586621680059084Scrutinee_6989586621680055319Sym1 x6989586621680059082 :: TyFun [a6989586621680054761] (TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) -> Type | |
type Apply (Lambda_6989586621680418386Sym0 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) (a_69895866216804183816989586621680418385 :: k1) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Lambda_6989586621680980750Sym1 x6989586621680980749 :: TyFun k2 (TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) -> Type) (p6989586621680980745 :: k2) | |
Defined in Data.Singletons.Prelude.Monad type Apply (Lambda_6989586621680980750Sym1 x6989586621680980749 :: TyFun k2 (TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) -> Type) (p6989586621680980745 :: k2) = Lambda_6989586621680980750Sym2 x6989586621680980749 p6989586621680980745 :: TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type | |
type Apply (Let6989586621680058798Scrutinee_6989586621680055343Sym1 x6989586621680058795 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) (xs6989586621680058796 :: k2) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058885Scrutinee_6989586621680055337Sym1 key6989586621680058881 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) (x6989586621680058882 :: k1) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058885Scrutinee_6989586621680055337Sym1 key6989586621680058881 :: TyFun k1 (TyFun k2 (TyFun k3 Bool -> Type) -> Type) -> Type) (x6989586621680058882 :: k1) = Let6989586621680058885Scrutinee_6989586621680055337Sym2 key6989586621680058881 x6989586621680058882 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type | |
type Apply (Let6989586621680058965Scrutinee_6989586621680055327Sym1 n6989586621680058962 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) (x6989586621680058963 :: k2) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058979Scrutinee_6989586621680055325Sym1 n6989586621680058976 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) (x6989586621680058977 :: k2) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym1 y6989586621680058759 :: TyFun k2 (TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) (ys6989586621680058760 :: k2) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym1 y6989586621680058759 :: TyFun k2 (TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) -> Type) (ys6989586621680058760 :: k2) = Let6989586621680058762Scrutinee_6989586621680055347Sym2 y6989586621680058759 ys6989586621680058760 :: TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type | |
type Apply (Let6989586621680058783Scrutinee_6989586621680055345Sym1 x6989586621680058780 :: TyFun k2 (TyFun [k1] (TyFun k3 Bool -> Type) -> Type) -> Type) (xs6989586621680058781 :: k2) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058783Scrutinee_6989586621680055345Sym1 x6989586621680058780 :: TyFun k2 (TyFun [k1] (TyFun k3 Bool -> Type) -> Type) -> Type) (xs6989586621680058781 :: k2) = Let6989586621680058783Scrutinee_6989586621680055345Sym2 x6989586621680058780 xs6989586621680058781 :: TyFun [k1] (TyFun k3 Bool -> Type) -> Type | |
type Apply (Lambda_6989586621680418386Sym1 a_69895866216804183816989586621680418385 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) (t6989586621680418393 :: k2) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) -> Type) -> Type) (x6989586621679899505 :: k1) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) -> Type) -> Type) (x6989586621679899505 :: k1) = Let6989586621679899506Scrutinee_6989586621679899272Sym1 x6989586621679899505 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) -> Type | |
type Apply (Lambda_6989586621680980750Sym2 p6989586621680980745 x6989586621680980749 :: TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) (a_69895866216809807436989586621680980746 :: k3) | |
Defined in Data.Singletons.Prelude.Monad type Apply (Lambda_6989586621680980750Sym2 p6989586621680980745 x6989586621680980749 :: TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) (a_69895866216809807436989586621680980746 :: k3) = Lambda_6989586621680980750Sym3 p6989586621680980745 x6989586621680980749 a_69895866216809807436989586621680980746 | |
type Apply (Let6989586621680058885Scrutinee_6989586621680055337Sym2 x6989586621680058882 key6989586621680058881 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) (y6989586621680058883 :: k2) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058885Scrutinee_6989586621680055337Sym2 x6989586621680058882 key6989586621680058881 :: TyFun k2 (TyFun k3 Bool -> Type) -> Type) (y6989586621680058883 :: k2) = Let6989586621680058885Scrutinee_6989586621680055337Sym3 x6989586621680058882 key6989586621680058881 y6989586621680058883 :: TyFun k3 Bool -> Type | |
type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (x16989586621679899367 :: k1) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (x16989586621679899367 :: k1) = Let6989586621679899372Scrutinee_6989586621679899296Sym1 x16989586621679899367 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type | |
type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (x16989586621679899424 :: k1) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym0 :: TyFun k1 (TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (x16989586621679899424 :: k1) = Let6989586621679899429Scrutinee_6989586621679899286Sym1 x16989586621679899424 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type | |
type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym1 x6989586621679899505 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) -> Type) (x06989586621679899496 :: k2) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym1 x6989586621679899505 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) -> Type) (x06989586621679899496 :: k2) = Let6989586621679899506Scrutinee_6989586621679899272Sym2 x6989586621679899505 x06989586621679899496 :: TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type | |
type Apply (Lambda_6989586621680980750Sym3 a_69895866216809807436989586621680980746 p6989586621680980745 x6989586621680980749 :: TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) (t6989586621680980756 :: Bool) | |
Defined in Data.Singletons.Prelude.Monad type Apply (Lambda_6989586621680980750Sym3 a_69895866216809807436989586621680980746 p6989586621680980745 x6989586621680980749 :: TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) (t6989586621680980756 :: Bool) = Lambda_6989586621680980750 a_69895866216809807436989586621680980746 p6989586621680980745 x6989586621680980749 t6989586621680980756 | |
type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym1 x16989586621679899367 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) (x26989586621679899368 :: k2) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym1 x16989586621679899367 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) (x26989586621679899368 :: k2) = Let6989586621679899372Scrutinee_6989586621679899296Sym2 x16989586621679899367 x26989586621679899368 :: TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type | |
type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym1 x16989586621679899424 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) (x26989586621679899425 :: k2) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym1 x16989586621679899424 :: TyFun k2 (TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) -> Type) (x26989586621679899425 :: k2) = Let6989586621679899429Scrutinee_6989586621679899286Sym2 x16989586621679899424 x26989586621679899425 :: TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type | |
type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym2 x06989586621679899496 x6989586621679899505 :: TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) (y6989586621679899497 :: k1) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym2 x06989586621679899496 x6989586621679899505 :: TyFun k1 (TyFun k3 (TyFun k4 Bool -> Type) -> Type) -> Type) (y6989586621679899497 :: k1) = Let6989586621679899506Scrutinee_6989586621679899272Sym3 x06989586621679899496 x6989586621679899505 y6989586621679899497 :: TyFun k3 (TyFun k4 Bool -> Type) -> Type | |
type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym2 x26989586621679899368 x16989586621679899367 :: TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) (y6989586621679899369 :: k1) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym2 x26989586621679899368 x16989586621679899367 :: TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) (y6989586621679899369 :: k1) = Let6989586621679899372Scrutinee_6989586621679899296Sym3 x26989586621679899368 x16989586621679899367 y6989586621679899369 :: TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type | |
type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym2 x26989586621679899425 x16989586621679899424 :: TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) (y6989586621679899426 :: k1) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym2 x26989586621679899425 x16989586621679899424 :: TyFun k1 (TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) -> Type) (y6989586621679899426 :: k1) = Let6989586621679899429Scrutinee_6989586621679899286Sym3 x26989586621679899425 x16989586621679899424 y6989586621679899426 :: TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type | |
type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym3 y6989586621679899497 x06989586621679899496 x6989586621679899505 :: TyFun k3 (TyFun k4 Bool -> Type) -> Type) (arg_69895866216798992686989586621679899492 :: k3) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899506Scrutinee_6989586621679899272Sym3 y6989586621679899497 x06989586621679899496 x6989586621679899505 :: TyFun k3 (TyFun k4 Bool -> Type) -> Type) (arg_69895866216798992686989586621679899492 :: k3) = Let6989586621679899506Scrutinee_6989586621679899272Sym4 y6989586621679899497 x06989586621679899496 x6989586621679899505 arg_69895866216798992686989586621679899492 :: TyFun k4 Bool -> Type | |
type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym3 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) (arg_69895866216798992906989586621679899362 :: k3) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym3 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) (arg_69895866216798992906989586621679899362 :: k3) = Let6989586621679899372Scrutinee_6989586621679899296Sym4 y6989586621679899369 x26989586621679899368 x16989586621679899367 arg_69895866216798992906989586621679899362 :: TyFun k4 (TyFun k5 Bool -> Type) -> Type | |
type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym3 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) (arg_69895866216798992806989586621679899419 :: k3) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym3 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k3 (TyFun k4 (TyFun k5 Bool -> Type) -> Type) -> Type) (arg_69895866216798992806989586621679899419 :: k3) = Let6989586621679899429Scrutinee_6989586621679899286Sym4 y6989586621679899426 x26989586621679899425 x16989586621679899424 arg_69895866216798992806989586621679899419 :: TyFun k4 (TyFun k5 Bool -> Type) -> Type | |
type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym4 arg_69895866216798992906989586621679899362 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k4 (TyFun k5 Bool -> Type) -> Type) (arg_69895866216798992926989586621679899363 :: k4) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899372Scrutinee_6989586621679899296Sym4 arg_69895866216798992906989586621679899362 y6989586621679899369 x26989586621679899368 x16989586621679899367 :: TyFun k4 (TyFun k5 Bool -> Type) -> Type) (arg_69895866216798992926989586621679899363 :: k4) = Let6989586621679899372Scrutinee_6989586621679899296Sym5 arg_69895866216798992906989586621679899362 y6989586621679899369 x26989586621679899368 x16989586621679899367 arg_69895866216798992926989586621679899363 :: TyFun k5 Bool -> Type | |
type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym4 arg_69895866216798992806989586621679899419 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k4 (TyFun k5 Bool -> Type) -> Type) (arg_69895866216798992826989586621679899420 :: k4) | |
Defined in Data.Singletons.Prelude.Enum type Apply (Let6989586621679899429Scrutinee_6989586621679899286Sym4 arg_69895866216798992806989586621679899419 y6989586621679899426 x26989586621679899425 x16989586621679899424 :: TyFun k4 (TyFun k5 Bool -> Type) -> Type) (arg_69895866216798992826989586621679899420 :: k4) = Let6989586621679899429Scrutinee_6989586621679899286Sym5 arg_69895866216798992806989586621679899419 y6989586621679899426 x26989586621679899425 x16989586621679899424 arg_69895866216798992826989586621679899420 :: TyFun k5 Bool -> Type | |
type Eval (IsPrefixOf xs ys :: Bool -> Type) | |
Defined in Fcf.Data.List | |
type Eval (IsSuffixOf xs ys :: Bool -> Type) | |
Defined in Fcf.Data.List | |
type Eval (IsInfixOf xs ys :: Bool -> Type) | |
type Eval (Elem a2 as :: Bool -> Type) | |
type Eval (IsLeft ('Right _a :: Either a b) :: Bool -> Type) | |
type Eval (IsLeft ('Left _a :: Either a b) :: Bool -> Type) | |
type Eval (IsRight ('Right _a :: Either a b) :: Bool -> Type) | |
type Eval (IsRight ('Left _a :: Either a b) :: Bool -> Type) | |
type Eval (TyEq a b :: Bool -> Type) | |
type Eval (All p lst :: Bool -> Type) | |
type Eval (Any p lst :: Bool -> Type) | |
type Eval (TyEqSing a b :: Bool -> Type) | |
type Apply OrSym0 (a6989586621680059864 :: [Bool]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply AndSym0 (a6989586621680059868 :: [Bool]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (ListnullSym0 :: TyFun [a] Bool -> Type) (a6989586621680369375 :: [a]) | |
type Apply (NullSym0 :: TyFun [a] Bool -> Type) (a6989586621680060088 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (IsNothingSym0 :: TyFun (Maybe a) Bool -> Type) (a6989586621679713002 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Maybe | |
type Apply (IsJustSym0 :: TyFun (Maybe a) Bool -> Type) (a6989586621679713004 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Maybe | |
type Apply (AndSym0 :: TyFun (t Bool) Bool -> Type) (a6989586621680417993 :: t Bool) | |
type Apply (Let6989586621680417996Scrutinee_6989586621680417758Sym0 :: TyFun (t6989586621680417511 Bool) All -> Type) (x6989586621680417995 :: t6989586621680417511 Bool) | |
type Apply (OrSym0 :: TyFun (t Bool) Bool -> Type) (a6989586621680417984 :: t Bool) | |
type Apply (Let6989586621680417987Scrutinee_6989586621680417760Sym0 :: TyFun (t6989586621680417511 Bool) Any -> Type) (x6989586621680417986 :: t6989586621680417511 Bool) | |
type Apply (Null_6989586621680570906Sym0 :: TyFun (Identity a) Bool -> Type) (a6989586621680570905 :: Identity a) | |
type Apply (ListelemSym1 a6989586621680369457 :: TyFun [a] Bool -> Type) (a6989586621680369458 :: [a]) | |
type Apply (ListisPrefixOfSym1 a6989586621680369522 :: TyFun [a] Bool -> Type) (a6989586621680369523 :: [a]) | |
type Apply (NotElemSym1 a6989586621680059593 :: TyFun [a] Bool -> Type) (a6989586621680059594 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (ElemSym1 a6989586621680059600 :: TyFun [a] Bool -> Type) (a6989586621680059601 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (IsPrefixOfSym1 a6989586621680059619 :: TyFun [a] Bool -> Type) (a6989586621680059620 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (IsPrefixOfSym1 a6989586621680059619 :: TyFun [a] Bool -> Type) (a6989586621680059620 :: [a]) = IsPrefixOf a6989586621680059619 a6989586621680059620 | |
type Apply (AnySym1 a6989586621680059850 :: TyFun [a] Bool -> Type) (a6989586621680059851 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (IsInfixOfSym1 a6989586621680059607 :: TyFun [a] Bool -> Type) (a6989586621680059608 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (AllSym1 a6989586621680059857 :: TyFun [a] Bool -> Type) (a6989586621680059858 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (IsSuffixOfSym1 a6989586621680059613 :: TyFun [a] Bool -> Type) (a6989586621680059614 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (IsSuffixOfSym1 a6989586621680059613 :: TyFun [a] Bool -> Type) (a6989586621680059614 :: [a]) = IsSuffixOf a6989586621680059613 a6989586621680059614 | |
type Apply (Elem_6989586621680570779Sym1 a6989586621680570777 :: TyFun (Identity a) Bool -> Type) (a6989586621680570778 :: Identity a) | |
type Apply (Elem_bySym2 a6989586621680058737 a6989586621680058736 :: TyFun [a] Bool -> Type) (a6989586621680058738 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Elem_6989586621680418423Sym1 a6989586621680418421 t :: TyFun (t a) Bool -> Type) (a6989586621680418422 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Null_6989586621680418379Sym0 :: TyFun (t a) Bool -> Type) (a6989586621680418378 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (AnySym1 a6989586621680417971 t :: TyFun (t a) Bool -> Type) (a6989586621680417972 :: t a) | |
type Apply (ElemSym1 arg6989586621680418174 t :: TyFun (t a) Bool -> Type) (arg6989586621680418175 :: t a) | |
type Apply (NotElemSym1 a6989586621680417900 t :: TyFun (t a) Bool -> Type) (a6989586621680417901 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (NullSym0 :: TyFun (t a) Bool -> Type) (arg6989586621680418170 :: t a) | |
type Apply (AllSym1 a6989586621680417958 t :: TyFun (t a) Bool -> Type) (a6989586621680417959 :: t a) | |
type Apply (Elem_6989586621680418543Sym1 a6989586621680418541 t :: TyFun (t a) Bool -> Type) (a6989586621680418542 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Null_6989586621680418686Sym0 :: TyFun (t a) Bool -> Type) (a6989586621680418685 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Null_6989586621680418862Sym0 :: TyFun (t a) Bool -> Type) (a6989586621680418861 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Elem_6989586621680418884Sym1 a6989586621680418882 t :: TyFun (t a) Bool -> Type) (a6989586621680418883 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Null_6989586621680419011Sym0 :: TyFun (t a) Bool -> Type) (a6989586621680419010 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Elem_6989586621680419051Sym1 a6989586621680419049 t :: TyFun (t a) Bool -> Type) (a6989586621680419050 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Null_6989586621680419178Sym0 :: TyFun (t a) Bool -> Type) (a6989586621680419177 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Elem_6989586621680419218Sym1 a6989586621680419216 t :: TyFun (t a) Bool -> Type) (a6989586621680419217 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Null_6989586621680419345Sym0 :: TyFun (t a) Bool -> Type) (a6989586621680419344 :: t a) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (ListisPrefixOfSym0 :: TyFun [a6989586621680368562] ([a6989586621680368562] ~> Bool) -> Type) (a6989586621680369522 :: [a6989586621680368562]) | |
type Apply (IsPrefixOfSym0 :: TyFun [a6989586621680054727] ([a6989586621680054727] ~> Bool) -> Type) (a6989586621680059619 :: [a6989586621680054727]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (IsPrefixOfSym0 :: TyFun [a6989586621680054727] ([a6989586621680054727] ~> Bool) -> Type) (a6989586621680059619 :: [a6989586621680054727]) = IsPrefixOfSym1 a6989586621680059619 | |
type Apply (IsInfixOfSym0 :: TyFun [a6989586621680054725] ([a6989586621680054725] ~> Bool) -> Type) (a6989586621680059607 :: [a6989586621680054725]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (IsInfixOfSym0 :: TyFun [a6989586621680054725] ([a6989586621680054725] ~> Bool) -> Type) (a6989586621680059607 :: [a6989586621680054725]) = IsInfixOfSym1 a6989586621680059607 | |
type Apply (IsSuffixOfSym0 :: TyFun [a6989586621680054726] ([a6989586621680054726] ~> Bool) -> Type) (a6989586621680059613 :: [a6989586621680054726]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (IsSuffixOfSym0 :: TyFun [a6989586621680054726] ([a6989586621680054726] ~> Bool) -> Type) (a6989586621680059613 :: [a6989586621680054726]) = IsSuffixOfSym1 a6989586621680059613 | |
type Apply (Let6989586621680059084Scrutinee_6989586621680055319Sym1 x6989586621680059082 :: TyFun [a6989586621680054761] (TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) -> Type) (xs6989586621680059083 :: [a6989586621680054761]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680059084Scrutinee_6989586621680055319Sym1 x6989586621680059082 :: TyFun [a6989586621680054761] (TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) -> Type) (xs6989586621680059083 :: [a6989586621680054761]) = Let6989586621680059084Scrutinee_6989586621680055319Sym2 x6989586621680059082 xs6989586621680059083 :: TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type | |
type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym2 ys6989586621680058760 y6989586621680058759 :: TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) (xs6989586621680058761 :: [k1]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym2 ys6989586621680058760 y6989586621680058759 :: TyFun [k1] (TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) -> Type) (xs6989586621680058761 :: [k1]) = Let6989586621680058762Scrutinee_6989586621680055347Sym3 ys6989586621680058760 y6989586621680058759 xs6989586621680058761 :: TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type | |
type Apply (Let6989586621680058783Scrutinee_6989586621680055345Sym2 xs6989586621680058781 x6989586621680058780 :: TyFun [k1] (TyFun k3 Bool -> Type) -> Type) (ls6989586621680058782 :: [k1]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058783Scrutinee_6989586621680055345Sym2 xs6989586621680058781 x6989586621680058780 :: TyFun [k1] (TyFun k3 Bool -> Type) -> Type) (ls6989586621680058782 :: [k1]) = Let6989586621680058783Scrutinee_6989586621680055345Sym3 xs6989586621680058781 x6989586621680058780 ls6989586621680058782 :: TyFun k3 Bool -> Type | |
type Apply (IsRightSym0 :: TyFun (Either a b) Bool -> Type) (a6989586621680401746 :: Either a b) | |
Defined in Data.Singletons.Prelude.Either | |
type Apply (IsLeftSym0 :: TyFun (Either a b) Bool -> Type) (a6989586621680401748 :: Either a b) | |
Defined in Data.Singletons.Prelude.Either | |
type Apply (TFHelper_6989586621680733389Sym1 a6989586621680733387 :: TyFun (Arg a b) Bool -> Type) (a6989586621680733388 :: Arg a b) | |
type Apply (ListnubBySym0 :: TyFun (a6989586621680368556 ~> (a6989586621680368556 ~> Bool)) ([a6989586621680368556] ~> [a6989586621680368556]) -> Type) (a6989586621680369487 :: a6989586621680368556 ~> (a6989586621680368556 ~> Bool)) | |
type Apply (ListpartitionSym0 :: TyFun (a6989586621680368564 ~> Bool) ([a6989586621680368564] ~> ([a6989586621680368564], [a6989586621680368564])) -> Type) (a6989586621680369542 :: a6989586621680368564 ~> Bool) | |
type Apply (ListfilterSym0 :: TyFun (a6989586621680368565 ~> Bool) ([a6989586621680368565] ~> [a6989586621680368565]) -> Type) (a6989586621680369552 :: a6989586621680368565 ~> Bool) | |
type Apply (ListspanSym0 :: TyFun (a6989586621680368566 ~> Bool) ([a6989586621680368566] ~> ([a6989586621680368566], [a6989586621680368566])) -> Type) (a6989586621680369562 :: a6989586621680368566 ~> Bool) | |
type Apply (ListdropWhileSym0 :: TyFun (a6989586621680368567 ~> Bool) ([a6989586621680368567] ~> [a6989586621680368567]) -> Type) (a6989586621680369572 :: a6989586621680368567 ~> Bool) | |
type Apply (ListtakeWhileSym0 :: TyFun (a6989586621680368568 ~> Bool) ([a6989586621680368568] ~> [a6989586621680368568]) -> Type) (a6989586621680369582 :: a6989586621680368568 ~> Bool) | |
type Apply (Elem_bySym0 :: TyFun (a6989586621680054641 ~> (a6989586621680054641 ~> Bool)) (a6989586621680054641 ~> ([a6989586621680054641] ~> Bool)) -> Type) (a6989586621680058736 :: a6989586621680054641 ~> (a6989586621680054641 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (NubBySym0 :: TyFun (a6989586621680054642 ~> (a6989586621680054642 ~> Bool)) ([a6989586621680054642] ~> [a6989586621680054642]) -> Type) (a6989586621680058746 :: a6989586621680054642 ~> (a6989586621680054642 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (SelectSym0 :: TyFun (a6989586621680054650 ~> Bool) (a6989586621680054650 ~> (([a6989586621680054650], [a6989586621680054650]) ~> ([a6989586621680054650], [a6989586621680054650]))) -> Type) (a6989586621680058852 :: a6989586621680054650 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (PartitionSym0 :: TyFun (a6989586621680054651 ~> Bool) ([a6989586621680054651] ~> ([a6989586621680054651], [a6989586621680054651])) -> Type) (a6989586621680058870 :: a6989586621680054651 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (PartitionSym0 :: TyFun (a6989586621680054651 ~> Bool) ([a6989586621680054651] ~> ([a6989586621680054651], [a6989586621680054651])) -> Type) (a6989586621680058870 :: a6989586621680054651 ~> Bool) = PartitionSym1 a6989586621680058870 | |
type Apply (BreakSym0 :: TyFun (a6989586621680054663 ~> Bool) ([a6989586621680054663] ~> ([a6989586621680054663], [a6989586621680054663])) -> Type) (a6989586621680058986 :: a6989586621680054663 ~> Bool) | |
type Apply (Let6989586621680059004YsSym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] [k] -> Type) -> Type) -> Type) (p6989586621680058991 :: k ~> Bool) | |
type Apply (Let6989586621680059004ZsSym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] [k] -> Type) -> Type) -> Type) (p6989586621680058991 :: k ~> Bool) | |
type Apply (Let6989586621680059004X_6989586621680059005Sym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] ([k], [k]) -> Type) -> Type) -> Type) (p6989586621680058991 :: k ~> Bool) | |
type Apply (SpanSym0 :: TyFun (a6989586621680054664 ~> Bool) ([a6989586621680054664] ~> ([a6989586621680054664], [a6989586621680054664])) -> Type) (a6989586621680059029 :: a6989586621680054664 ~> Bool) | |
type Apply (Let6989586621680059047YsSym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] [k] -> Type) -> Type) -> Type) (p6989586621680059034 :: k ~> Bool) | |
type Apply (Let6989586621680059047ZsSym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] [k] -> Type) -> Type) -> Type) (p6989586621680059034 :: k ~> Bool) | |
type Apply (Let6989586621680059047X_6989586621680059048Sym0 :: TyFun (k ~> Bool) (TyFun k (TyFun [k] ([k], [k]) -> Type) -> Type) -> Type) (p6989586621680059034 :: k ~> Bool) | |
type Apply (GroupBySym0 :: TyFun (a6989586621680054654 ~> (a6989586621680054654 ~> Bool)) ([a6989586621680054654] ~> [[a6989586621680054654]]) -> Type) (a6989586621680058893 :: a6989586621680054654 ~> (a6989586621680054654 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (DropWhileSym0 :: TyFun (a6989586621680054666 ~> Bool) ([a6989586621680054666] ~> [a6989586621680054666]) -> Type) (a6989586621680059098 :: a6989586621680054666 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (DropWhileSym0 :: TyFun (a6989586621680054666 ~> Bool) ([a6989586621680054666] ~> [a6989586621680054666]) -> Type) (a6989586621680059098 :: a6989586621680054666 ~> Bool) = DropWhileSym1 a6989586621680059098 | |
type Apply (TakeWhileSym0 :: TyFun (a6989586621680054667 ~> Bool) ([a6989586621680054667] ~> [a6989586621680054667]) -> Type) (a6989586621680059116 :: a6989586621680054667 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (TakeWhileSym0 :: TyFun (a6989586621680054667 ~> Bool) ([a6989586621680054667] ~> [a6989586621680054667]) -> Type) (a6989586621680059116 :: a6989586621680054667 ~> Bool) = TakeWhileSym1 a6989586621680059116 | |
type Apply (FilterSym0 :: TyFun (a6989586621680054675 ~> Bool) ([a6989586621680054675] ~> [a6989586621680054675]) -> Type) (a6989586621680059230 :: a6989586621680054675 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (FilterSym0 :: TyFun (a6989586621680054675 ~> Bool) ([a6989586621680054675] ~> [a6989586621680054675]) -> Type) (a6989586621680059230 :: a6989586621680054675 ~> Bool) = FilterSym1 a6989586621680059230 | |
type Apply (FindSym0 :: TyFun (a6989586621680054674 ~> Bool) ([a6989586621680054674] ~> Maybe a6989586621680054674) -> Type) (a6989586621680059222 :: a6989586621680054674 ~> Bool) | |
type Apply (DeleteBySym0 :: TyFun (a6989586621680054681 ~> (a6989586621680054681 ~> Bool)) (a6989586621680054681 ~> ([a6989586621680054681] ~> [a6989586621680054681])) -> Type) (a6989586621680059350 :: a6989586621680054681 ~> (a6989586621680054681 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (DeleteFirstsBySym0 :: TyFun (a6989586621680054680 ~> (a6989586621680054680 ~> Bool)) ([a6989586621680054680] ~> ([a6989586621680054680] ~> [a6989586621680054680])) -> Type) (a6989586621680059337 :: a6989586621680054680 ~> (a6989586621680054680 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (DeleteFirstsBySym0 :: TyFun (a6989586621680054680 ~> (a6989586621680054680 ~> Bool)) ([a6989586621680054680] ~> ([a6989586621680054680] ~> [a6989586621680054680])) -> Type) (a6989586621680059337 :: a6989586621680054680 ~> (a6989586621680054680 ~> Bool)) = DeleteFirstsBySym1 a6989586621680059337 | |
type Apply (UnionBySym0 :: TyFun (a6989586621680054640 ~> (a6989586621680054640 ~> Bool)) ([a6989586621680054640] ~> ([a6989586621680054640] ~> [a6989586621680054640])) -> Type) (a6989586621680058727 :: a6989586621680054640 ~> (a6989586621680054640 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (FindIndicesSym0 :: TyFun (a6989586621680054670 ~> Bool) ([a6989586621680054670] ~> [Nat]) -> Type) (a6989586621680059172 :: a6989586621680054670 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (FindIndexSym0 :: TyFun (a6989586621680054671 ~> Bool) ([a6989586621680054671] ~> Maybe Nat) -> Type) (a6989586621680059198 :: a6989586621680054671 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (AnySym0 :: TyFun (a6989586621680054744 ~> Bool) ([a6989586621680054744] ~> Bool) -> Type) (a6989586621680059850 :: a6989586621680054744 ~> Bool) | |
type Apply (IntersectBySym0 :: TyFun (a6989586621680054668 ~> (a6989586621680054668 ~> Bool)) ([a6989586621680054668] ~> ([a6989586621680054668] ~> [a6989586621680054668])) -> Type) (a6989586621680059130 :: a6989586621680054668 ~> (a6989586621680054668 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (IntersectBySym0 :: TyFun (a6989586621680054668 ~> (a6989586621680054668 ~> Bool)) ([a6989586621680054668] ~> ([a6989586621680054668] ~> [a6989586621680054668])) -> Type) (a6989586621680059130 :: a6989586621680054668 ~> (a6989586621680054668 ~> Bool)) = IntersectBySym1 a6989586621680059130 | |
type Apply (AllSym0 :: TyFun (a6989586621680054745 ~> Bool) ([a6989586621680054745] ~> Bool) -> Type) (a6989586621680059857 :: a6989586621680054745 ~> Bool) | |
type Apply (DropWhileEndSym0 :: TyFun (a6989586621680054665 ~> Bool) ([a6989586621680054665] ~> [a6989586621680054665]) -> Type) (a6989586621680059072 :: a6989586621680054665 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (DropWhileEndSym0 :: TyFun (a6989586621680054665 ~> Bool) ([a6989586621680054665] ~> [a6989586621680054665]) -> Type) (a6989586621680059072 :: a6989586621680054665 ~> Bool) = DropWhileEndSym1 a6989586621680059072 | |
type Apply (UntilSym0 :: TyFun (a6989586621679736119 ~> Bool) ((a6989586621679736119 ~> a6989586621679736119) ~> (a6989586621679736119 ~> a6989586621679736119)) -> Type) (a6989586621679736244 :: a6989586621679736119 ~> Bool) | |
type Apply (TFHelper_6989586621680733389Sym0 :: TyFun (Arg a6989586621680732234 b6989586621680732235) (Arg a6989586621680732234 b6989586621680732235 ~> Bool) -> Type) (a6989586621680733387 :: Arg a6989586621680732234 b6989586621680732235) | |
Defined in Data.Singletons.Prelude.Semigroup | |
type Apply (MfilterSym0 :: TyFun (a6989586621680980254 ~> Bool) (m6989586621680980253 a6989586621680980254 ~> m6989586621680980253 a6989586621680980254) -> Type) (a6989586621680980573 :: a6989586621680980254 ~> Bool) | |
Defined in Data.Singletons.Prelude.Monad type Apply (MfilterSym0 :: TyFun (a6989586621680980254 ~> Bool) (m6989586621680980253 a6989586621680980254 ~> m6989586621680980253 a6989586621680980254) -> Type) (a6989586621680980573 :: a6989586621680980254 ~> Bool) = MfilterSym1 a6989586621680980573 m6989586621680980253 :: TyFun (m6989586621680980253 a6989586621680980254) (m6989586621680980253 a6989586621680980254) -> Type | |
type Apply (FilterMSym0 :: TyFun (a6989586621680980292 ~> m6989586621680980291 Bool) ([a6989586621680980292] ~> m6989586621680980291 [a6989586621680980292]) -> Type) (a6989586621680980739 :: a6989586621680980292 ~> m6989586621680980291 Bool) | |
Defined in Data.Singletons.Prelude.Monad type Apply (FilterMSym0 :: TyFun (a6989586621680980292 ~> m6989586621680980291 Bool) ([a6989586621680980292] ~> m6989586621680980291 [a6989586621680980292]) -> Type) (a6989586621680980739 :: a6989586621680980292 ~> m6989586621680980291 Bool) = FilterMSym1 a6989586621680980739 | |
type Apply (Let6989586621680058752NubBy'Sym0 :: TyFun (k1 ~> (k1 ~> Bool)) (TyFun k (TyFun [k1] ([k1] ~> [k1]) -> Type) -> Type) -> Type) (eq6989586621680058750 :: k1 ~> (k1 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058900YsSym0 :: TyFun (k1 ~> (a6989586621680054664 ~> Bool)) (TyFun k1 (TyFun [a6989586621680054664] [a6989586621680054664] -> Type) -> Type) -> Type) (eq6989586621680058897 :: k1 ~> (a6989586621680054664 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058900ZsSym0 :: TyFun (k1 ~> (a6989586621680054664 ~> Bool)) (TyFun k1 (TyFun [a6989586621680054664] [a6989586621680054664] -> Type) -> Type) -> Type) (eq6989586621680058897 :: k1 ~> (a6989586621680054664 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Let6989586621680058900X_6989586621680058901Sym0 :: TyFun (k1 ~> (a6989586621680054664 ~> Bool)) (TyFun k1 (TyFun [a6989586621680054664] ([a6989586621680054664], [a6989586621680054664]) -> Type) -> Type) -> Type) (eq6989586621680058897 :: k1 ~> (a6989586621680054664 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058900X_6989586621680058901Sym0 :: TyFun (k1 ~> (a6989586621680054664 ~> Bool)) (TyFun k1 (TyFun [a6989586621680054664] ([a6989586621680054664], [a6989586621680054664]) -> Type) -> Type) -> Type) (eq6989586621680058897 :: k1 ~> (a6989586621680054664 ~> Bool)) = Let6989586621680058900X_6989586621680058901Sym1 eq6989586621680058897 | |
type Apply (Lambda_6989586621680059080Sym0 :: TyFun (a6989586621680054761 ~> Bool) (TyFun k (TyFun a6989586621680054761 (TyFun [a6989586621680054761] [a6989586621680054761] -> Type) -> Type) -> Type) -> Type) (p6989586621680059078 :: a6989586621680054761 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Lambda_6989586621680059080Sym0 :: TyFun (a6989586621680054761 ~> Bool) (TyFun k (TyFun a6989586621680054761 (TyFun [a6989586621680054761] [a6989586621680054761] -> Type) -> Type) -> Type) -> Type) (p6989586621680059078 :: a6989586621680054761 ~> Bool) = Lambda_6989586621680059080Sym1 p6989586621680059078 :: TyFun k (TyFun a6989586621680054761 (TyFun [a6989586621680054761] [a6989586621680054761] -> Type) -> Type) -> Type | |
type Apply (Lambda_6989586621680417880Sym0 :: TyFun (a6989586621679083079 ~> Bool) (TyFun k (TyFun a6989586621679083079 (First a6989586621679083079) -> Type) -> Type) -> Type) (p6989586621680417877 :: a6989586621679083079 ~> Bool) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Lambda_6989586621680417880Sym0 :: TyFun (a6989586621679083079 ~> Bool) (TyFun k (TyFun a6989586621679083079 (First a6989586621679083079) -> Type) -> Type) -> Type) (p6989586621680417877 :: a6989586621679083079 ~> Bool) = Lambda_6989586621680417880Sym1 p6989586621680417877 :: TyFun k (TyFun a6989586621679083079 (First a6989586621679083079) -> Type) -> Type | |
type Apply (AnySym0 :: TyFun (a6989586621680417430 ~> Bool) (t6989586621680417429 a6989586621680417430 ~> Bool) -> Type) (a6989586621680417971 :: a6989586621680417430 ~> Bool) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Let6989586621680417977Scrutinee_6989586621680417762Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) Any -> Type) -> Type) (p6989586621680417975 :: a6989586621680417514 ~> Bool) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Let6989586621680417977Scrutinee_6989586621680417762Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) Any -> Type) -> Type) (p6989586621680417975 :: a6989586621680417514 ~> Bool) = Let6989586621680417977Scrutinee_6989586621680417762Sym1 p6989586621680417975 :: TyFun (t6989586621680417511 a6989586621680417514) Any -> Type | |
type Apply (AllSym0 :: TyFun (a6989586621680417428 ~> Bool) (t6989586621680417427 a6989586621680417428 ~> Bool) -> Type) (a6989586621680417958 :: a6989586621680417428 ~> Bool) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Let6989586621680417964Scrutinee_6989586621680417764Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) All -> Type) -> Type) (p6989586621680417962 :: a6989586621680417514 ~> Bool) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Let6989586621680417964Scrutinee_6989586621680417764Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) All -> Type) -> Type) (p6989586621680417962 :: a6989586621680417514 ~> Bool) = Let6989586621680417964Scrutinee_6989586621680417764Sym1 p6989586621680417962 :: TyFun (t6989586621680417511 a6989586621680417514) All -> Type | |
type Apply (FindSym0 :: TyFun (a6989586621680417420 ~> Bool) (t6989586621680417419 a6989586621680417420 ~> Maybe a6989586621680417420) -> Type) (a6989586621680417873 :: a6989586621680417420 ~> Bool) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (FindSym0 :: TyFun (a6989586621680417420 ~> Bool) (t6989586621680417419 a6989586621680417420 ~> Maybe a6989586621680417420) -> Type) (a6989586621680417873 :: a6989586621680417420 ~> Bool) = FindSym1 a6989586621680417873 t6989586621680417419 :: TyFun (t6989586621680417419 a6989586621680417420) (Maybe a6989586621680417420) -> Type | |
type Apply (Let6989586621680417879Scrutinee_6989586621680417770Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) (First a6989586621680417514) -> Type) -> Type) (p6989586621680417877 :: a6989586621680417514 ~> Bool) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Let6989586621680417879Scrutinee_6989586621680417770Sym0 :: TyFun (a6989586621680417514 ~> Bool) (TyFun (t6989586621680417511 a6989586621680417514) (First a6989586621680417514) -> Type) -> Type) (p6989586621680417877 :: a6989586621680417514 ~> Bool) = Let6989586621680417879Scrutinee_6989586621680417770Sym1 p6989586621680417877 :: TyFun (t6989586621680417511 a6989586621680417514) (First a6989586621680417514) -> Type | |
type Apply (Let6989586621679736255GoSym0 :: TyFun (k1 ~> Bool) (TyFun (k1 ~> k1) (TyFun k2 (TyFun k1 k1 -> Type) -> Type) -> Type) -> Type) (p6989586621679736252 :: k1 ~> Bool) | |
Defined in Data.Singletons.Prelude.Base | |
type Apply (Lambda_6989586621680980579Sym0 :: TyFun (k1 ~> Bool) (TyFun k (TyFun k1 (m6989586621679754575 k1) -> Type) -> Type) -> Type) (p6989586621680980577 :: k1 ~> Bool) | |
Defined in Data.Singletons.Prelude.Monad | |
type Apply (Lambda_6989586621680980747Sym0 :: TyFun (k2 ~> f6989586621679754551 Bool) (TyFun k3 (TyFun k2 (TyFun (f6989586621679754551 [k2]) (f6989586621679754551 [k2]) -> Type) -> Type) -> Type) -> Type) (p6989586621680980745 :: k2 ~> f6989586621679754551 Bool) | |
Defined in Data.Singletons.Prelude.Monad type Apply (Lambda_6989586621680980747Sym0 :: TyFun (k2 ~> f6989586621679754551 Bool) (TyFun k3 (TyFun k2 (TyFun (f6989586621679754551 [k2]) (f6989586621679754551 [k2]) -> Type) -> Type) -> Type) -> Type) (p6989586621680980745 :: k2 ~> f6989586621679754551 Bool) = Lambda_6989586621680980747Sym1 p6989586621680980745 :: TyFun k3 (TyFun k2 (TyFun (f6989586621679754551 [k2]) (f6989586621679754551 [k2]) -> Type) -> Type) -> Type | |
type Apply (Lambda_6989586621680059152Sym0 :: TyFun (b6989586621679754579 ~> (a6989586621680054744 ~> Bool)) (TyFun k1 (TyFun k2 (TyFun a6989586621680054744 (TyFun [a6989586621680054744] (TyFun b6989586621679754579 (m6989586621679754575 b6989586621679754579) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (eq6989586621680059136 :: b6989586621679754579 ~> (a6989586621680054744 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Lambda_6989586621680059152Sym0 :: TyFun (b6989586621679754579 ~> (a6989586621680054744 ~> Bool)) (TyFun k1 (TyFun k2 (TyFun a6989586621680054744 (TyFun [a6989586621680054744] (TyFun b6989586621679754579 (m6989586621679754575 b6989586621679754579) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (eq6989586621680059136 :: b6989586621679754579 ~> (a6989586621680054744 ~> Bool)) = Lambda_6989586621680059152Sym1 eq6989586621680059136 :: TyFun k1 (TyFun k2 (TyFun a6989586621680054744 (TyFun [a6989586621680054744] (TyFun b6989586621679754579 (m6989586621679754575 b6989586621679754579) -> Type) -> Type) -> Type) -> Type) -> Type | |
type Apply (Let6989586621680059084Scrutinee_6989586621680055319Sym2 xs6989586621680059083 x6989586621680059082 :: TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) (p6989586621680059078 :: k1 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680059084Scrutinee_6989586621680055319Sym2 xs6989586621680059083 x6989586621680059082 :: TyFun (k1 ~> Bool) (TyFun k Bool -> Type) -> Type) (p6989586621680059078 :: k1 ~> Bool) = Let6989586621680059084Scrutinee_6989586621680055319Sym3 xs6989586621680059083 x6989586621680059082 p6989586621680059078 :: TyFun k Bool -> Type | |
type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym3 xs6989586621680058761 ys6989586621680058760 y6989586621680058759 :: TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) (eq6989586621680058750 :: k1 ~> (k1 ~> Bool)) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (Let6989586621680058762Scrutinee_6989586621680055347Sym3 xs6989586621680058761 ys6989586621680058760 y6989586621680058759 :: TyFun (k1 ~> (k1 ~> Bool)) (TyFun k3 Bool -> Type) -> Type) (eq6989586621680058750 :: k1 ~> (k1 ~> Bool)) = Let6989586621680058762Scrutinee_6989586621680055347Sym4 xs6989586621680058761 ys6989586621680058760 y6989586621680058759 eq6989586621680058750 :: TyFun k3 Bool -> Type |
Invariant: Jn#
and Jp#
are used iff value doesn't fit in S#
Useful properties resulting from the invariants:
Instances
Type representing arbitrary-precision non-negative integers.
>>>
2^100 :: Natural
1267650600228229401496703205376
Operations whose result would be negative
,throw
(Underflow
:: ArithException
)
>>>
-1 :: Natural
*** Exception: arithmetic underflow
Since: base-4.8.0.0
Instances
The Maybe
type encapsulates an optional value. A value of type
either contains a value of type Maybe
aa
(represented as
),
or it is empty (represented as Just
aNothing
). Using Maybe
is a good way to
deal with errors or exceptional cases without resorting to drastic
measures such as error
.
The Maybe
type is also a monad. It is a simple kind of error
monad, where all errors are represented by Nothing
. A richer
error monad can be built using the Either
type.
Instances
Monad Maybe | Since: base-2.1 |
Functor Maybe | Since: base-2.1 |
MonadFail Maybe | Since: base-4.9.0.0 |
Defined in Control.Monad.Fail | |
Applicative Maybe | Since: base-2.1 |
Foldable Maybe | Since: base-2.1 |
Defined in Data.Foldable Methods fold :: Monoid m => Maybe m -> m # foldMap :: Monoid m => (a -> m) -> Maybe a -> m # foldMap' :: Monoid m => (a -> m) -> Maybe a -> m # foldr :: (a -> b -> b) -> b -> Maybe a -> b # foldr' :: (a -> b -> b) -> b -> Maybe a -> b # foldl :: (b -> a -> b) -> b -> Maybe a -> b # foldl' :: (b -> a -> b) -> b -> Maybe a -> b # foldr1 :: (a -> a -> a) -> Maybe a -> a # foldl1 :: (a -> a -> a) -> Maybe a -> a # elem :: Eq a => a -> Maybe a -> Bool # maximum :: Ord a => Maybe a -> a # minimum :: Ord a => Maybe a -> a # | |
Traversable Maybe | Since: base-2.1 |
Arbitrary1 Maybe | |
Defined in Test.QuickCheck.Arbitrary | |
ToJSON1 Maybe | |
Defined in Data.Aeson.Types.ToJSON Methods liftToJSON :: (a -> Value) -> ([a] -> Value) -> Maybe a -> Value # liftToJSONList :: (a -> Value) -> ([a] -> Value) -> [Maybe a] -> Value # liftToEncoding :: (a -> Encoding) -> ([a] -> Encoding) -> Maybe a -> Encoding # liftToEncodingList :: (a -> Encoding) -> ([a] -> Encoding) -> [Maybe a] -> Encoding # | |
Alternative Maybe | Since: base-2.1 |
MonadPlus Maybe | Since: base-2.1 |
Eq1 Maybe | Since: base-4.9.0.0 |
Ord1 Maybe | Since: base-4.9.0.0 |
Defined in Data.Functor.Classes | |
Read1 Maybe | Since: base-4.9.0.0 |
Defined in Data.Functor.Classes | |
Show1 Maybe | Since: base-4.9.0.0 |
MonadFailure Maybe | |
NFData1 Maybe | Since: deepseq-1.4.3.0 |
Defined in Control.DeepSeq | |
MonadThrow Maybe | |
Defined in Control.Monad.Catch | |
Hashable1 Maybe | |
Defined in Data.Hashable.Class | |
InjValue Maybe | |
Defined in Named.Internal | |
PTraversable Maybe | |
STraversable Maybe | |
Defined in Data.Singletons.Prelude.Traversable Methods sTraverse :: forall a (f :: Type -> Type) b (t1 :: a ~> f b) (t2 :: Maybe a). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply TraverseSym0 t1) t2) # sSequenceA :: forall (f :: Type -> Type) a (t :: Maybe (f a)). SApplicative f => Sing t -> Sing (Apply SequenceASym0 t) # sMapM :: forall a (m :: Type -> Type) b (t1 :: a ~> m b) (t2 :: Maybe a). SMonad m => Sing t1 -> Sing t2 -> Sing (Apply (Apply MapMSym0 t1) t2) # sSequence :: forall (m :: Type -> Type) a (t :: Maybe (m a)). SMonad m => Sing t -> Sing (Apply SequenceSym0 t) # | |
PFoldable Maybe | |
SFoldable Maybe | |
Defined in Data.Singletons.Prelude.Foldable Methods sFold :: forall m (t :: Maybe m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) # sFoldMap :: forall a m (t1 :: a ~> m) (t2 :: Maybe a). SMonoid m => Sing t1 -> Sing t2 -> Sing (Apply (Apply FoldMapSym0 t1) t2) # sFoldr :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Maybe a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply FoldrSym0 t1) t2) t3) # sFoldr' :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Maybe a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply Foldr'Sym0 t1) t2) t3) # sFoldl :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Maybe a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply FoldlSym0 t1) t2) t3) # sFoldl' :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Maybe a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply Foldl'Sym0 t1) t2) t3) # sFoldr1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply Foldr1Sym0 t1) t2) # sFoldl1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply Foldl1Sym0 t1) t2) # sToList :: forall a (t :: Maybe a). Sing t -> Sing (Apply ToListSym0 t) # sNull :: forall a (t :: Maybe a). Sing t -> Sing (Apply NullSym0 t) # sLength :: forall a (t :: Maybe a). Sing t -> Sing (Apply LengthSym0 t) # sElem :: forall a (t1 :: a) (t2 :: Maybe a). SEq a => Sing t1 -> Sing t2 -> Sing (Apply (Apply ElemSym0 t1) t2) # sMaximum :: forall a (t :: Maybe a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) # sMinimum :: forall a (t :: Maybe a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) # sSum :: forall a (t :: Maybe a). SNum a => Sing t -> Sing (Apply SumSym0 t) # sProduct :: forall a (t :: Maybe a). SNum a => Sing t -> Sing (Apply ProductSym0 t) # | |
PMonadFail Maybe | |
Defined in Data.Singletons.Prelude.Monad.Fail | |
SMonadFail Maybe | |
PFunctor Maybe | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
PApplicative Maybe | |
PMonad Maybe | |
PAlternative Maybe | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
PMonadPlus Maybe | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
SFunctor Maybe | |
SApplicative Maybe | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) # (%<*>) :: forall a b (t1 :: Maybe (a ~> b)) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<*>@#@$) t1) t2) # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Maybe a) (t3 :: Maybe b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply LiftA2Sym0 t1) t2) t3) # (%*>) :: forall a b (t1 :: Maybe a) (t2 :: Maybe b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (*>@#@$) t1) t2) # (%<*) :: forall a b (t1 :: Maybe a) (t2 :: Maybe b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<*@#@$) t1) t2) # | |
SMonad Maybe | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods (%>>=) :: forall a b (t1 :: Maybe a) (t2 :: a ~> Maybe b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>>=@#@$) t1) t2) # (%>>) :: forall a b (t1 :: Maybe a) (t2 :: Maybe b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>>@#@$) t1) t2) # sReturn :: forall a (t :: a). Sing t -> Sing (Apply ReturnSym0 t) # | |
SAlternative Maybe | |
SMonadPlus Maybe | |
KnownNamedFunctor Maybe | |
LorentzFunctor Maybe Source # | |
Defined in Lorentz.Instr | |
MonadError () Maybe | Since: mtl-2.2.2 |
Defined in Control.Monad.Error.Class | |
(Selector s, GToJSON enc arity (K1 i (Maybe a) :: Type -> Type), KeyValuePair enc pairs, Monoid pairs) => RecordToPairs enc pairs arity (S1 s (K1 i (Maybe a) :: Type -> Type)) | |
Defined in Data.Aeson.Types.ToJSON | |
() :=> (Functor Maybe) | |
() :=> (Applicative Maybe) | |
Defined in Data.Constraint Methods ins :: () :- Applicative Maybe # | |
() :=> (Alternative Maybe) | |
Defined in Data.Constraint Methods ins :: () :- Alternative Maybe # | |
() :=> (MonadPlus Maybe) | |
Eq a => Eq (Maybe a) | Since: base-2.1 |
Ord a => Ord (Maybe a) | Since: base-2.1 |
Read a => Read (Maybe a) | Since: base-2.1 |
Show a => Show (Maybe a) | Since: base-2.1 |
Generic (Maybe a) | Since: base-4.6.0.0 |
Semigroup a => Semigroup (Maybe a) | Since: base-4.9.0.0 |
Semigroup a => Monoid (Maybe a) | Lift a semigroup into Since 4.11.0: constraint on inner Since: base-2.1 |
Lift a => Lift (Maybe a) | |
Arbitrary a => Arbitrary (Maybe a) | |
CoArbitrary a => CoArbitrary (Maybe a) | |
Defined in Test.QuickCheck.Arbitrary Methods coarbitrary :: Maybe a -> Gen b -> Gen b # | |
Hashable a => Hashable (Maybe a) | |
Defined in Data.Hashable.Class | |
ToJSON a => ToJSON (Maybe a) | |
Defined in Data.Aeson.Types.ToJSON | |
SingKind a => SingKind (Maybe a) | Since: base-4.9.0.0 |
Defined in GHC.Generics Associated Types type DemoteRep (Maybe a) | |
NFData a => NFData (Maybe a) | |
Defined in Control.DeepSeq | |
Default (Maybe a) | |
Defined in Data.Default.Class | |
Buildable a => Buildable (Maybe a) | |
Defined in Formatting.Buildable | |
Ixed (Maybe a) | |
Defined in Control.Lens.At | |
At (Maybe a) | |
PMonoid (Maybe a) | |
SSemigroup a => SMonoid (Maybe a) | |
PShow (Maybe a) | |
SShow a => SShow (Maybe a) | |
Defined in Data.Singletons.Prelude.Show Methods sShowsPrec :: forall (t1 :: Nat) (t2 :: Maybe a) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply ShowsPrecSym0 t1) t2) t3) # sShow_ :: forall (t :: Maybe a). Sing t -> Sing (Apply Show_Sym0 t) # sShowList :: forall (t1 :: [Maybe a]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply ShowListSym0 t1) t2) # | |
PSemigroup (Maybe a) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
SSemigroup a => SSemigroup (Maybe a) | |
POrd (Maybe a) | |
SOrd a => SOrd (Maybe a) | |
Defined in Data.Singletons.Prelude.Ord Methods sCompare :: forall (t1 :: Maybe a) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply CompareSym0 t1) t2) # (%<) :: forall (t1 :: Maybe a) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<@#@$) t1) t2) # (%<=) :: forall (t1 :: Maybe a) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<=@#@$) t1) t2) # (%>) :: forall (t1 :: Maybe a) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>@#@$) t1) t2) # (%>=) :: forall (t1 :: Maybe a) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>=@#@$) t1) t2) # sMax :: forall (t1 :: Maybe a) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply MaxSym0 t1) t2) # sMin :: forall (t1 :: Maybe a) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply MinSym0 t1) t2) # | |
SEq a => SEq (Maybe a) | |
PEq (Maybe a) | |
(TypeError (DisallowInstance "Maybe") :: Constraint) => Container (Maybe a) | |
Defined in Universum.Container.Class Methods toList :: Maybe a -> [Element (Maybe a)] # foldr :: (Element (Maybe a) -> b -> b) -> b -> Maybe a -> b # foldl :: (b -> Element (Maybe a) -> b) -> b -> Maybe a -> b # foldl' :: (b -> Element (Maybe a) -> b) -> b -> Maybe a -> b # elem :: Element (Maybe a) -> Maybe a -> Bool # maximum :: Maybe a -> Element (Maybe a) # minimum :: Maybe a -> Element (Maybe a) # foldMap :: Monoid m => (Element (Maybe a) -> m) -> Maybe a -> m # fold :: Maybe a -> Element (Maybe a) # foldr' :: (Element (Maybe a) -> b -> b) -> b -> Maybe a -> b # foldr1 :: (Element (Maybe a) -> Element (Maybe a) -> Element (Maybe a)) -> Maybe a -> Element (Maybe a) # foldl1 :: (Element (Maybe a) -> Element (Maybe a) -> Element (Maybe a)) -> Maybe a -> Element (Maybe a) # notElem :: Element (Maybe a) -> Maybe a -> Bool # all :: (Element (Maybe a) -> Bool) -> Maybe a -> Bool # any :: (Element (Maybe a) -> Bool) -> Maybe a -> Bool # find :: (Element (Maybe a) -> Bool) -> Maybe a -> Maybe (Element (Maybe a)) # | |
Pretty a => Pretty (Maybe a) | |
Defined in Text.PrettyPrint.Leijen.Text | |
PolyTypeHasDocC '[a] => TypeHasDoc (Maybe a) | |
Defined in Michelson.Typed.Haskell.Doc Associated Types type TypeDocFieldDescriptions (Maybe a) :: FieldDescriptions # Methods typeDocName :: Proxy (Maybe a) -> Text # typeDocMdDescription :: Markdown # typeDocMdReference :: Proxy (Maybe a) -> WithinParens -> Markdown # typeDocDependencies :: Proxy (Maybe a) -> [SomeDocDefinitionItem] # typeDocHaskellRep :: TypeDocHaskellRep (Maybe a) # typeDocMichelsonRep :: TypeDocMichelsonRep (Maybe a) # | |
IsoValue a => IsoValue (Maybe a) | |
HasAnnotation a => HasAnnotation (Maybe a) Source # | |
Defined in Lorentz.Annotation Methods getAnnotation :: FollowEntrypointFlag -> Notes (ToT (Maybe a)) Source # | |
Generic1 Maybe | Since: base-4.6.0.0 |
IsoHKD Maybe (a :: Type) | |
SingI ('Nothing :: Maybe a) | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
SDecide a => TestCoercion (SMaybe :: Maybe a -> Type) | |
Defined in Data.Singletons.Prelude.Instances | |
SDecide a => TestEquality (SMaybe :: Maybe a -> Type) | |
Defined in Data.Singletons.Prelude.Instances | |
(Eq a) :=> (Eq (Maybe a)) | |
(Ord a) :=> (Ord (Maybe a)) | |
(Read a) :=> (Read (Maybe a)) | |
(Show a) :=> (Show (Maybe a)) | |
(Semigroup a) :=> (Semigroup (Maybe a)) | |
(Monoid a) :=> (Monoid (Maybe a)) | |
Each (Maybe a) (Maybe b) a b | |
CanCastTo a b => CanCastTo (Maybe a :: Type) (Maybe b :: Type) Source # | |
SingI a2 => SingI ('Just a2 :: Maybe a1) | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
SuppressUnusedWarnings (CatMaybesSym0 :: TyFun [Maybe a6989586621679712800] [a6989586621679712800] -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ListToMaybeSym0 :: TyFun [a6989586621679712801] (Maybe a6989586621679712801) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (StripPrefixSym0 :: TyFun [a6989586621680176855] ([a6989586621680176855] ~> Maybe [a6989586621680176855]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816344Sym0 :: TyFun (Maybe a6989586621679754628) (Maybe a6989586621679754628 ~> Maybe a6989586621679754628) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (MaybeToListSym0 :: TyFun (Maybe a6989586621679712802) [a6989586621679712802] -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsNothingSym0 :: TyFun (Maybe a6989586621679712805) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsJustSym0 :: TyFun (Maybe a6989586621679712806) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FromJustSym0 :: TyFun (Maybe a6989586621679712804) a6989586621679712804 -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (MinInternalSym0 :: TyFun (Maybe a6989586621680408656) (MinInternal a6989586621680408656) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (MaxInternalSym0 :: TyFun (Maybe a6989586621680407982) (MaxInternal a6989586621680407982) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Compare_6989586621679628257Sym0 :: TyFun (Maybe a3530822107858468865) (Maybe a3530822107858468865 ~> Ordering) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (OptionSym0 :: TyFun (Maybe a6989586621679058445) (Option a6989586621679058445) -> Type) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (LastSym0 :: TyFun (Maybe a6989586621679083072) (Last a6989586621679083072) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FirstSym0 :: TyFun (Maybe a6989586621679083079) (First a6989586621679083079) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ShowsPrec_6989586621680297105Sym0 :: TyFun Nat (Maybe a3530822107858468865 ~> (Symbol ~> Symbol)) -> Type) | |
Defined in Data.Singletons.Prelude.Show Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Pure_6989586621679816059Sym0 :: TyFun a6989586621679754552 (Maybe a6989586621679754552) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679816352LSym0 :: TyFun k1 (Maybe k1) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FromMaybeSym0 :: TyFun a6989586621679712803 (Maybe a6989586621679712803 ~> a6989586621679712803) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ElemIndexSym0 :: TyFun a6989586621680054673 ([a6989586621680054673] ~> Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (JustSym0 :: TyFun a3530822107858468865 (Maybe a3530822107858468865) -> Type) | |
Defined in Data.Singletons.Prelude.Instances Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (GetOptionSym0 :: TyFun (Option a6989586621679058445) (Maybe a6989586621679058445) -> Type) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (GetFirstSym0 :: TyFun (First a6989586621679083079) (Maybe a6989586621679083079) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (GetLastSym0 :: TyFun (Last a6989586621679083072) (Maybe a6989586621679083072) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindSym0 :: TyFun (a6989586621680054674 ~> Bool) ([a6989586621680054674] ~> Maybe a6989586621680054674) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindIndexSym0 :: TyFun (a6989586621680054671 ~> Bool) ([a6989586621680054671] ~> Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SingI (CatMaybesSym0 :: TyFun [Maybe a] [a] -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing CatMaybesSym0 # | |
SingI (ListToMaybeSym0 :: TyFun [a] (Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing ListToMaybeSym0 # | |
SingI (MaybeToListSym0 :: TyFun (Maybe a) [a] -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing MaybeToListSym0 # | |
SingI (IsNothingSym0 :: TyFun (Maybe a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing IsNothingSym0 # | |
SingI (IsJustSym0 :: TyFun (Maybe a) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing IsJustSym0 # | |
SingI (FromJustSym0 :: TyFun (Maybe a) a -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing FromJustSym0 # | |
SingI (OptionSym0 :: TyFun (Maybe a) (Option a) -> Type) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods sing :: Sing OptionSym0 # | |
SingI (LastSym0 :: TyFun (Maybe a) (Last a) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid | |
SingI (FirstSym0 :: TyFun (Maybe a) (First a) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid | |
SingI (FromMaybeSym0 :: TyFun a (Maybe a ~> a) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing FromMaybeSym0 # | |
SEq a => SingI (ElemIndexSym0 :: TyFun a ([a] ~> Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing ElemIndexSym0 # | |
SingI (JustSym0 :: TyFun a (Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.Instances | |
SingI (FindSym0 :: TyFun (a ~> Bool) ([a] ~> Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI (FindIndexSym0 :: TyFun (a ~> Bool) ([a] ~> Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing FindIndexSym0 # | |
SuppressUnusedWarnings (StripPrefixSym1 a6989586621680178551 :: TyFun [a6989586621680176855] (Maybe [a6989586621680176855]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindSym1 a6989586621680059222 :: TyFun [a6989586621680054674] (Maybe a6989586621680054674) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindIndexSym1 a6989586621680059198 :: TyFun [a6989586621680054671] (Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ElemIndexSym1 a6989586621680059214 :: TyFun [a6989586621680054673] (Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ShowsPrec_6989586621680297105Sym1 a6989586621680297102 a3530822107858468865 :: TyFun (Maybe a3530822107858468865) (Symbol ~> Symbol) -> Type) | |
Defined in Data.Singletons.Prelude.Show Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816344Sym1 a6989586621679816342 :: TyFun (Maybe a6989586621679754628) (Maybe a6989586621679754628) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816254Sym0 :: TyFun (Maybe a6989586621679754578) (Maybe b6989586621679754579 ~> Maybe b6989586621679754579) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816242Sym0 :: TyFun (Maybe a6989586621679754576) ((a6989586621679754576 ~> Maybe b6989586621679754577) ~> Maybe b6989586621679754577) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816099Sym0 :: TyFun (Maybe a6989586621679754558) (Maybe b6989586621679754559 ~> Maybe b6989586621679754559) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FromMaybeSym1 a6989586621679712989 :: TyFun (Maybe a6989586621679712803) a6989586621679712803 -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Compare_6989586621679628257Sym1 a6989586621679628255 :: TyFun (Maybe a3530822107858468865) Ordering -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816069Sym0 :: TyFun (Maybe (a6989586621679754553 ~> b6989586621679754554)) (Maybe a6989586621679754553 ~> Maybe b6989586621679754554) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (OptionalSym0 :: TyFun (f6989586621680973094 a6989586621680973095) (f6989586621680973094 (Maybe a6989586621680973095)) -> Type) | |
Defined in Data.Singletons.Prelude.Applicative Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679815921Sym0 :: TyFun a6989586621679754549 (Maybe b6989586621679754550 ~> Maybe a6989586621679754549) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Maybe_Sym0 :: TyFun b6989586621679711366 ((a6989586621679711367 ~> b6989586621679711366) ~> (Maybe a6989586621679711367 ~> b6989586621679711366)) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (LookupSym0 :: TyFun a6989586621680054652 ([(a6989586621680054652, b6989586621680054653)] ~> Maybe b6989586621680054653) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409443NSym0 :: TyFun k (TyFun k1 (Maybe k1) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409443MSym0 :: TyFun k1 (TyFun k (Maybe k1) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409416NSym0 :: TyFun k (TyFun k1 (Maybe k1) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409416MSym0 :: TyFun k1 (TyFun k (Maybe k1) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Fmap_6989586621679815908Sym0 :: TyFun (a6989586621679754547 ~> b6989586621679754548) (Maybe a6989586621679754547 ~> Maybe b6989586621679754548) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (MapMaybeSym0 :: TyFun (a6989586621679712798 ~> Maybe b6989586621679712799) ([a6989586621679712798] ~> [b6989586621679712799]) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (UnfoldrSym0 :: TyFun (b6989586621680054730 ~> Maybe (a6989586621680054731, b6989586621680054730)) (b6989586621680054730 ~> [a6989586621680054731]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindSym0 :: TyFun (a6989586621680417420 ~> Bool) (t6989586621680417419 a6989586621680417420 ~> Maybe a6989586621680417420) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SingI d => SingI (FindSym1 d :: TyFun [a] (Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal | |
SingI d => SingI (FindIndexSym1 d :: TyFun [a] (Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing (FindIndexSym1 d) # | |
(SEq a, SingI d) => SingI (ElemIndexSym1 d :: TyFun [a] (Maybe Nat) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing (ElemIndexSym1 d) # | |
SingI d => SingI (FromMaybeSym1 d :: TyFun (Maybe a) a -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing (FromMaybeSym1 d) # | |
SAlternative f => SingI (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) | |
Defined in Data.Singletons.Prelude.Applicative Methods sing :: Sing OptionalSym0 # | |
SingI (Maybe_Sym0 :: TyFun b ((a ~> b) ~> (Maybe a ~> b)) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing Maybe_Sym0 # | |
SEq a => SingI (LookupSym0 :: TyFun a ([(a, b)] ~> Maybe b) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing LookupSym0 # | |
SingI (MapMaybeSym0 :: TyFun (a ~> Maybe b) ([a] ~> [b]) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing MapMaybeSym0 # | |
SingI (UnfoldrSym0 :: TyFun (b ~> Maybe (a, b)) (b ~> [a]) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing UnfoldrSym0 # | |
SFoldable t => SingI (FindSym0 :: TyFun (a ~> Bool) (t a ~> Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
SuppressUnusedWarnings (LookupSym1 a6989586621680058876 b6989586621680054653 :: TyFun [(a6989586621680054652, b6989586621680054653)] (Maybe b6989586621680054653) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816254Sym1 a6989586621679816252 b6989586621679754579 :: TyFun (Maybe b6989586621679754579) (Maybe b6989586621679754579) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816099Sym1 a6989586621679816097 b6989586621679754559 :: TyFun (Maybe b6989586621679754559) (Maybe b6989586621679754559) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816069Sym1 a6989586621679816067 :: TyFun (Maybe a6989586621679754553) (Maybe b6989586621679754554) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679815921Sym1 a6989586621679815919 b6989586621679754550 :: TyFun (Maybe b6989586621679754550) (Maybe a6989586621679754549) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Fmap_6989586621679815908Sym1 a6989586621679815906 :: TyFun (Maybe a6989586621679754547) (Maybe b6989586621679754548) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409443NSym1 x6989586621680409441 :: TyFun k1 (Maybe k1) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409443MSym1 x6989586621680409441 :: TyFun k (Maybe k1) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409416NSym1 x6989586621680409414 :: TyFun k1 (Maybe k1) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680409416MSym1 x6989586621680409414 :: TyFun k (Maybe k1) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (FindSym1 a6989586621680417873 t6989586621680417419 :: TyFun (t6989586621680417419 a6989586621680417420) (Maybe a6989586621680417420) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680333923Sym0 :: TyFun k (TyFun (k1 ~> Last a) (TyFun k1 (Maybe a) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680333835Sym0 :: TyFun k (TyFun (k1 ~> First a) (TyFun k1 (Maybe a) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Traverse_6989586621680634283Sym0 :: TyFun (a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (Maybe a6989586621680628189 ~> f6989586621680628188 (Maybe b6989586621680628190)) -> Type) | |
Defined in Data.Singletons.Prelude.Traversable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816242Sym1 a6989586621679816240 b6989586621679754577 :: TyFun (a6989586621679754576 ~> Maybe b6989586621679754577) (Maybe b6989586621679754577) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (LiftA2_6989586621679816083Sym0 :: TyFun (a6989586621679754555 ~> (b6989586621679754556 ~> c6989586621679754557)) (Maybe a6989586621679754555 ~> (Maybe b6989586621679754556 ~> Maybe c6989586621679754557)) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Maybe_Sym1 a6989586621679711384 a6989586621679711367 :: TyFun (a6989586621679711367 ~> b6989586621679711366) (Maybe a6989586621679711367 ~> b6989586621679711366) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679712966RsSym0 :: TyFun (a6989586621679712798 ~> Maybe k1) (TyFun k (TyFun [a6989586621679712798] [k1] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680418354MfSym0 :: TyFun (k2 ~> (k3 ~> k3)) (TyFun k (TyFun (Maybe k2) (TyFun k3 (Maybe k3) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680418329MfSym0 :: TyFun (k2 ~> (k3 ~> k2)) (TyFun k (TyFun k2 (TyFun (Maybe k3) (Maybe k2) -> Type) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
(SEq a, SingI d) => SingI (LookupSym1 d b :: TyFun [(a, b)] (Maybe b) -> Type) | |
Defined in Data.Singletons.Prelude.List.Internal Methods sing :: Sing (LookupSym1 d b) # | |
(SFoldable t, SingI d) => SingI (FindSym1 d t :: TyFun (t a) (Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable | |
SingI d => SingI (Maybe_Sym1 d a :: TyFun (a ~> b) (Maybe a ~> b) -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing (Maybe_Sym1 d a) # | |
SuppressUnusedWarnings (Traverse_6989586621680634283Sym1 a6989586621680634281 :: TyFun (Maybe a6989586621680628189) (f6989586621680628188 (Maybe b6989586621680628190)) -> Type) | |
Defined in Data.Singletons.Prelude.Traversable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (LiftA2_6989586621679816083Sym1 a6989586621679816080 :: TyFun (Maybe a6989586621679754555) (Maybe b6989586621679754556 ~> Maybe c6989586621679754557) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Maybe_Sym2 a6989586621679711385 a6989586621679711384 :: TyFun (Maybe a6989586621679711367) b6989586621679711366 -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680418354MfSym1 f6989586621680418352 :: TyFun k (TyFun (Maybe k2) (TyFun k3 (Maybe k3) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680418329MfSym1 f6989586621680418327 :: TyFun k (TyFun k2 (TyFun (Maybe k3) (Maybe k2) -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680333923Sym1 a6989586621680333921 :: TyFun (k1 ~> Last a) (TyFun k1 (Maybe a) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680333835Sym1 a6989586621680333833 :: TyFun (k1 ~> First a) (TyFun k1 (Maybe a) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
(SingI d1, SingI d2) => SingI (Maybe_Sym2 d1 d2 :: TyFun (Maybe a) b -> Type) | |
Defined in Data.Singletons.Prelude.Maybe Methods sing :: Sing (Maybe_Sym2 d1 d2) # | |
SuppressUnusedWarnings (LiftA2_6989586621679816083Sym2 a6989586621679816081 a6989586621679816080 :: TyFun (Maybe b6989586621679754556) (Maybe c6989586621679754557) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680418354MfSym2 xs6989586621680418353 f6989586621680418352 :: TyFun (Maybe k2) (TyFun k3 (Maybe k3) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680418329MfSym2 xs6989586621680418328 f6989586621680418327 :: TyFun k2 (TyFun (Maybe k3) (Maybe k2) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680333923Sym2 k6989586621680333922 a6989586621680333921 :: TyFun k1 (Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Lambda_6989586621680333835Sym2 k6989586621680333834 a6989586621680333833 :: TyFun k1 (Maybe a) -> Type) | |
Defined in Data.Singletons.Prelude.Monoid Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680418329MfSym3 a6989586621680418330 xs6989586621680418328 f6989586621680418327 :: TyFun (Maybe k3) (Maybe k2) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621680418354MfSym3 a6989586621680418355 xs6989586621680418353 f6989586621680418352 :: TyFun k3 (Maybe k3) -> Type) | |
Defined in Data.Singletons.Prelude.Foldable Methods suppressUnusedWarnings :: () # | |
IsoValue a => IsoValue (NamedF Maybe a name) | |
(HasAnnotation (Maybe a), KnownSymbol name) => HasAnnotation (NamedF Maybe a name) Source # | |
Defined in Lorentz.Annotation Methods getAnnotation :: FollowEntrypointFlag -> Notes (ToT (NamedF Maybe a name)) Source # | |
Wrappable (NamedF Maybe a name) Source # | |
Defined in Lorentz.Wrappable Associated Types type Unwrappable (NamedF Maybe a name) Source # | |
type Failure Maybe | |
Defined in Basement.Monad | |
type Empty | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type Mzero | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type Product (arg0 :: Maybe a0) | |
type Sum (arg0 :: Maybe a0) | |
type Minimum (arg0 :: Maybe a0) | |
type Maximum (arg0 :: Maybe a0) | |
type Length (arg0 :: Maybe a0) | |
type Null (arg0 :: Maybe a0) | |
type ToList (arg0 :: Maybe a0) | |
type Fold (arg0 :: Maybe m0) | |
type Fail a2 | |
type Pure (a :: k1) | |
type Return (arg0 :: a0) | |
type Sequence (arg0 :: Maybe (m0 a0)) | |
type SequenceA (arg0 :: Maybe (f0 a0)) | |
type Elem (arg1 :: a0) (arg2 :: Maybe a0) | |
type Foldl1 (arg1 :: a0 ~> (a0 ~> a0)) (arg2 :: Maybe a0) | |
type Foldr1 (arg1 :: a0 ~> (a0 ~> a0)) (arg2 :: Maybe a0) | |
type (a1 :: Maybe a6989586621679754628) <|> (a2 :: Maybe a6989586621679754628) | |
type Mplus (arg1 :: Maybe a0) (arg2 :: Maybe a0) | |
type FoldMap (a1 :: a6989586621680417514 ~> k2) (a2 :: Maybe a6989586621680417514) | |
type (a1 :: k1) <$ (a2 :: Maybe b6989586621679754550) | |
type Fmap (a1 :: a6989586621679754547 ~> b6989586621679754548) (a2 :: Maybe a6989586621679754547) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type (arg1 :: Maybe a0) <* (arg2 :: Maybe b0) | |
type (a1 :: Maybe a6989586621679754558) *> (a2 :: Maybe b6989586621679754559) | |
type (a1 :: Maybe (a6989586621679754553 ~> b6989586621679754554)) <*> (a2 :: Maybe a6989586621679754553) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type (a1 :: Maybe a6989586621679754578) >> (a2 :: Maybe b6989586621679754579) | |
type (a1 :: Maybe a6989586621679754576) >>= (a2 :: a6989586621679754576 ~> Maybe b6989586621679754577) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type MapM (arg1 :: a0 ~> m0 b0) (arg2 :: Maybe a0) | |
type Traverse (a1 :: a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (a2 :: Maybe a6989586621680628189) | |
Defined in Data.Singletons.Prelude.Traversable type Traverse (a1 :: a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (a2 :: Maybe a6989586621680628189) = Apply (Apply (Traverse_6989586621680634283Sym0 :: TyFun (a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (Maybe a6989586621680628189 ~> f6989586621680628188 (Maybe b6989586621680628190)) -> Type) a1) a2 | |
type Foldl' (arg1 :: b0 ~> (a0 ~> b0)) (arg2 :: b0) (arg3 :: Maybe a0) | |
type Foldl (a1 :: k2 ~> (a6989586621680417520 ~> k2)) (a2 :: k2) (a3 :: Maybe a6989586621680417520) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Foldr' (arg1 :: a0 ~> (b0 ~> b0)) (arg2 :: b0) (arg3 :: Maybe a0) | |
type Foldr (a1 :: a6989586621680417515 ~> (k2 ~> k2)) (a2 :: k2) (a3 :: Maybe a6989586621680417515) | |
Defined in Data.Singletons.Prelude.Foldable | |
type LiftA2 (a1 :: a6989586621679754555 ~> (b6989586621679754556 ~> c6989586621679754557)) (a2 :: Maybe a6989586621679754555) (a3 :: Maybe b6989586621679754556) | |
Defined in Data.Singletons.Prelude.Monad.Internal type LiftA2 (a1 :: a6989586621679754555 ~> (b6989586621679754556 ~> c6989586621679754557)) (a2 :: Maybe a6989586621679754555) (a3 :: Maybe b6989586621679754556) = Apply (Apply (Apply (LiftA2_6989586621679816083Sym0 :: TyFun (a6989586621679754555 ~> (b6989586621679754556 ~> c6989586621679754557)) (Maybe a6989586621679754555 ~> (Maybe b6989586621679754556 ~> Maybe c6989586621679754557)) -> Type) a1) a2) a3 | |
type Apply (Pure_6989586621679816059Sym0 :: TyFun a (Maybe a) -> Type) (a6989586621679816058 :: a) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type Apply (Let6989586621679816352LSym0 :: TyFun k1 (Maybe k1) -> Type) (wild_69895866216798153306989586621679816351 :: k1) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type Apply (JustSym0 :: TyFun a (Maybe a) -> Type) (t6989586621679548077 :: a) | |
type Apply (Let6989586621680409416NSym1 x6989586621680409414 :: TyFun k1 (Maybe k1) -> Type) (y6989586621680409415 :: k1) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Let6989586621680409416MSym1 x6989586621680409414 :: TyFun k (Maybe k1) -> Type) (y6989586621680409415 :: k) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Let6989586621680409443NSym1 x6989586621680409441 :: TyFun k1 (Maybe k1) -> Type) (y6989586621680409442 :: k1) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Let6989586621680409443MSym1 x6989586621680409441 :: TyFun k (Maybe k1) -> Type) (y6989586621680409442 :: k) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (Lambda_6989586621680333835Sym2 k6989586621680333834 a6989586621680333833 :: TyFun k1 (Maybe a) -> Type) (t6989586621680333846 :: k1) | |
Defined in Data.Singletons.Prelude.Monoid | |
type Apply (Lambda_6989586621680333923Sym2 k6989586621680333922 a6989586621680333921 :: TyFun k1 (Maybe a) -> Type) (t6989586621680333934 :: k1) | |
Defined in Data.Singletons.Prelude.Monoid | |
type Apply (Let6989586621680418354MfSym3 a6989586621680418355 xs6989586621680418353 f6989586621680418352 :: TyFun k3 (Maybe k3) -> Type) (a6989586621680418356 :: k3) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Apply (ShowsPrec_6989586621680297105Sym0 :: TyFun Nat (Maybe a3530822107858468865 ~> (Symbol ~> Symbol)) -> Type) (a6989586621680297102 :: Nat) | |
Defined in Data.Singletons.Prelude.Show | |
type Apply (FromMaybeSym0 :: TyFun a6989586621679712803 (Maybe a6989586621679712803 ~> a6989586621679712803) -> Type) (a6989586621679712989 :: a6989586621679712803) | |
Defined in Data.Singletons.Prelude.Maybe type Apply (FromMaybeSym0 :: TyFun a6989586621679712803 (Maybe a6989586621679712803 ~> a6989586621679712803) -> Type) (a6989586621679712989 :: a6989586621679712803) = FromMaybeSym1 a6989586621679712989 | |
type Apply (ElemIndexSym0 :: TyFun a6989586621680054673 ([a6989586621680054673] ~> Maybe Nat) -> Type) (a6989586621680059214 :: a6989586621680054673) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (ElemIndexSym0 :: TyFun a6989586621680054673 ([a6989586621680054673] ~> Maybe Nat) -> Type) (a6989586621680059214 :: a6989586621680054673) = ElemIndexSym1 a6989586621680059214 | |
type Apply (TFHelper_6989586621679815921Sym0 :: TyFun a6989586621679754549 (Maybe b6989586621679754550 ~> Maybe a6989586621679754549) -> Type) (a6989586621679815919 :: a6989586621679754549) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (TFHelper_6989586621679815921Sym0 :: TyFun a6989586621679754549 (Maybe b6989586621679754550 ~> Maybe a6989586621679754549) -> Type) (a6989586621679815919 :: a6989586621679754549) = TFHelper_6989586621679815921Sym1 a6989586621679815919 b6989586621679754550 :: TyFun (Maybe b6989586621679754550) (Maybe a6989586621679754549) -> Type | |
type Apply (Maybe_Sym0 :: TyFun b6989586621679711366 ((a6989586621679711367 ~> b6989586621679711366) ~> (Maybe a6989586621679711367 ~> b6989586621679711366)) -> Type) (a6989586621679711384 :: b6989586621679711366) | |
Defined in Data.Singletons.Prelude.Maybe type Apply (Maybe_Sym0 :: TyFun b6989586621679711366 ((a6989586621679711367 ~> b6989586621679711366) ~> (Maybe a6989586621679711367 ~> b6989586621679711366)) -> Type) (a6989586621679711384 :: b6989586621679711366) = Maybe_Sym1 a6989586621679711384 a6989586621679711367 :: TyFun (a6989586621679711367 ~> b6989586621679711366) (Maybe a6989586621679711367 ~> b6989586621679711366) -> Type | |
type Apply (LookupSym0 :: TyFun a6989586621680054652 ([(a6989586621680054652, b6989586621680054653)] ~> Maybe b6989586621680054653) -> Type) (a6989586621680058876 :: a6989586621680054652) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (LookupSym0 :: TyFun a6989586621680054652 ([(a6989586621680054652, b6989586621680054653)] ~> Maybe b6989586621680054653) -> Type) (a6989586621680058876 :: a6989586621680054652) = LookupSym1 a6989586621680058876 b6989586621680054653 :: TyFun [(a6989586621680054652, b6989586621680054653)] (Maybe b6989586621680054653) -> Type | |
type Apply (Let6989586621680409416NSym0 :: TyFun k (TyFun k1 (Maybe k1) -> Type) -> Type) (x6989586621680409414 :: k) | |
type Apply (Let6989586621680409416MSym0 :: TyFun k1 (TyFun k (Maybe k1) -> Type) -> Type) (x6989586621680409414 :: k1) | |
type Apply (Let6989586621680409443NSym0 :: TyFun k (TyFun k1 (Maybe k1) -> Type) -> Type) (x6989586621680409441 :: k) | |
type Apply (Let6989586621680409443MSym0 :: TyFun k1 (TyFun k (Maybe k1) -> Type) -> Type) (x6989586621680409441 :: k1) | |
type Apply (Lambda_6989586621680333835Sym0 :: TyFun k (TyFun (k1 ~> First a) (TyFun k1 (Maybe a) -> Type) -> Type) -> Type) (a6989586621680333833 :: k) | |
Defined in Data.Singletons.Prelude.Monoid | |
type Apply (Lambda_6989586621680333923Sym0 :: TyFun k (TyFun (k1 ~> Last a) (TyFun k1 (Maybe a) -> Type) -> Type) -> Type) (a6989586621680333921 :: k) | |
Defined in Data.Singletons.Prelude.Monoid | |
type Apply (Let6989586621680418329MfSym1 f6989586621680418327 :: TyFun k (TyFun k2 (TyFun (Maybe k3) (Maybe k2) -> Type) -> Type) -> Type) (xs6989586621680418328 :: k) | |
type Apply (Let6989586621680418354MfSym1 f6989586621680418352 :: TyFun k (TyFun (Maybe k2) (TyFun k3 (Maybe k3) -> Type) -> Type) -> Type) (xs6989586621680418353 :: k) | |
type Apply (Let6989586621680418329MfSym2 xs6989586621680418328 f6989586621680418327 :: TyFun k2 (TyFun (Maybe k3) (Maybe k2) -> Type) -> Type) (a6989586621680418330 :: k2) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Eval (FoldMap f ('Just x) :: a2 -> Type) | |
type Eval (FoldMap f ('Nothing :: Maybe a1) :: a2 -> Type) | |
type Eval (Foldr f y ('Just x) :: a2 -> Type) | |
type Eval (Foldr f y ('Nothing :: Maybe a1) :: a2 -> Type) | |
type Rep (Maybe a) | |
Defined in GHC.Generics | |
data Sing (b :: Maybe a) | |
type DemoteRep (Maybe a) | |
Defined in GHC.Generics | |
type MEmpty | |
Defined in Fcf.Class.Monoid | |
type Index (Maybe a) | |
Defined in Control.Lens.At | |
type IxValue (Maybe a) | |
Defined in Control.Lens.At | |
type Mempty | |
Defined in Data.Singletons.Prelude.Monoid | |
type Sing | |
Defined in Data.Singletons.Prelude.Instances | |
type Demote (Maybe a) | |
Defined in Data.Singletons.Prelude.Instances | |
type Element (Maybe a) | |
Defined in Universum.Container.Class | |
type TypeDocFieldDescriptions (Maybe a) | |
Defined in Michelson.Typed.Haskell.Doc | |
type ToT (Maybe a) | |
Defined in Michelson.Typed.Haskell.Value | |
type Rep1 Maybe | |
type Mconcat (arg0 :: [Maybe a]) | |
type Show_ (arg0 :: Maybe a) | |
type Sconcat (arg0 :: NonEmpty (Maybe a)) | |
type Mappend (arg1 :: Maybe a) (arg2 :: Maybe a) | |
type ShowList (arg1 :: [Maybe a]) arg2 | |
type (a2 :: Maybe a1) <> (a3 :: Maybe a1) | |
type Min (arg1 :: Maybe a) (arg2 :: Maybe a) | |
type Max (arg1 :: Maybe a) (arg2 :: Maybe a) | |
type (arg1 :: Maybe a) >= (arg2 :: Maybe a) | |
type (arg1 :: Maybe a) > (arg2 :: Maybe a) | |
type (arg1 :: Maybe a) <= (arg2 :: Maybe a) | |
type (arg1 :: Maybe a) < (arg2 :: Maybe a) | |
type Compare (a2 :: Maybe a1) (a3 :: Maybe a1) | |
type (x :: Maybe a) /= (y :: Maybe a) | |
type (a2 :: Maybe a1) == (b :: Maybe a1) | |
Defined in Data.Singletons.Prelude.Eq | |
type HKD Maybe (a :: Type) | |
Defined in Data.Vinyl.XRec | |
type ShowsPrec a2 (a3 :: Maybe a1) a4 | |
type (a2 :: Maybe a1) <> ('Nothing :: Maybe a1) | |
Defined in Fcf.Class.Monoid | |
type Apply (FromJustSym0 :: TyFun (Maybe a) a -> Type) (a6989586621679712999 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Maybe | |
type Apply (IsNothingSym0 :: TyFun (Maybe a) Bool -> Type) (a6989586621679713002 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Maybe | |
type Apply (IsJustSym0 :: TyFun (Maybe a) Bool -> Type) (a6989586621679713004 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Maybe | |
type Apply (FromMaybeSym1 a6989586621679712989 :: TyFun (Maybe a) a -> Type) (a6989586621679712990 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Maybe | |
type Apply (Compare_6989586621679628257Sym1 a6989586621679628255 :: TyFun (Maybe a) Ordering -> Type) (a6989586621679628256 :: Maybe a) | |
type Apply (Maybe_Sym2 a6989586621679711385 a6989586621679711384 :: TyFun (Maybe a) b -> Type) (a6989586621679711386 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Maybe | |
type ('Nothing :: Maybe a) <> (b :: Maybe a) | |
Defined in Fcf.Class.Monoid | |
type Apply (CatMaybesSym0 :: TyFun [Maybe a] [a] -> Type) (a6989586621679712978 :: [Maybe a]) | |
Defined in Data.Singletons.Prelude.Maybe | |
type Apply (ListToMaybeSym0 :: TyFun [a] (Maybe a) -> Type) (a6989586621679712983 :: [a]) | |
Defined in Data.Singletons.Prelude.Maybe type Apply (ListToMaybeSym0 :: TyFun [a] (Maybe a) -> Type) (a6989586621679712983 :: [a]) = ListToMaybe a6989586621679712983 | |
type Apply (MaybeToListSym0 :: TyFun (Maybe a) [a] -> Type) (a6989586621679712986 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Maybe type Apply (MaybeToListSym0 :: TyFun (Maybe a) [a] -> Type) (a6989586621679712986 :: Maybe a) = MaybeToList a6989586621679712986 | |
type Apply (MaxInternalSym0 :: TyFun (Maybe a) (MaxInternal a) -> Type) (t6989586621680408645 :: Maybe a) | |
type Apply (MinInternalSym0 :: TyFun (Maybe a) (MinInternal a) -> Type) (t6989586621680408843 :: Maybe a) | |
type Apply (OptionSym0 :: TyFun (Maybe a) (Option a) -> Type) (t6989586621679958372 :: Maybe a) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply (FirstSym0 :: TyFun (Maybe a) (First a) -> Type) (t6989586621680327653 :: Maybe a) | |
type Apply (LastSym0 :: TyFun (Maybe a) (Last a) -> Type) (t6989586621680327676 :: Maybe a) | |
type Apply (GetOptionSym0 :: TyFun (Option a) (Maybe a) -> Type) (a6989586621679958369 :: Option a) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply (GetFirstSym0 :: TyFun (First a) (Maybe a) -> Type) (a6989586621680327650 :: First a) | |
Defined in Data.Singletons.Prelude.Monoid | |
type Apply (GetLastSym0 :: TyFun (Last a) (Maybe a) -> Type) (a6989586621680327673 :: Last a) | |
Defined in Data.Singletons.Prelude.Monoid | |
type Apply (FindSym1 a6989586621680059222 :: TyFun [a] (Maybe a) -> Type) (a6989586621680059223 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (FindIndexSym1 a6989586621680059198 :: TyFun [a] (Maybe Nat) -> Type) (a6989586621680059199 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (ElemIndexSym1 a6989586621680059214 :: TyFun [a] (Maybe Nat) -> Type) (a6989586621680059215 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (StripPrefixSym1 a6989586621680178551 :: TyFun [a] (Maybe [a]) -> Type) (a6989586621680178552 :: [a]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (StripPrefixSym1 a6989586621680178551 :: TyFun [a] (Maybe [a]) -> Type) (a6989586621680178552 :: [a]) = StripPrefix a6989586621680178551 a6989586621680178552 | |
type Apply (TFHelper_6989586621679816344Sym1 a6989586621679816342 :: TyFun (Maybe a) (Maybe a) -> Type) (a6989586621679816343 :: Maybe a) | |
type Apply (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) (a6989586621680973132 :: f a) | |
Defined in Data.Singletons.Prelude.Applicative | |
type Apply (LookupSym1 a6989586621680058876 b :: TyFun [(a, b)] (Maybe b) -> Type) (a6989586621680058877 :: [(a, b)]) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Fmap_6989586621679815908Sym1 a6989586621679815906 :: TyFun (Maybe a) (Maybe b) -> Type) (a6989586621679815907 :: Maybe a) | |
type Apply (TFHelper_6989586621679815921Sym1 a6989586621679815919 b :: TyFun (Maybe b) (Maybe a) -> Type) (a6989586621679815920 :: Maybe b) | |
type Apply (TFHelper_6989586621679816069Sym1 a6989586621679816067 :: TyFun (Maybe a) (Maybe b) -> Type) (a6989586621679816068 :: Maybe a) | |
type Apply (TFHelper_6989586621679816099Sym1 a6989586621679816097 b :: TyFun (Maybe b) (Maybe b) -> Type) (a6989586621679816098 :: Maybe b) | |
type Apply (TFHelper_6989586621679816254Sym1 a6989586621679816252 b :: TyFun (Maybe b) (Maybe b) -> Type) (a6989586621679816253 :: Maybe b) | |
type Apply (FindSym1 a6989586621680417873 t :: TyFun (t a) (Maybe a) -> Type) (a6989586621680417874 :: t a) | |
type Apply (Traverse_6989586621680634283Sym1 a6989586621680634281 :: TyFun (Maybe a) (f (Maybe b)) -> Type) (a6989586621680634282 :: Maybe a) | |
type Apply (LiftA2_6989586621679816083Sym2 a6989586621679816081 a6989586621679816080 :: TyFun (Maybe b) (Maybe c) -> Type) (a6989586621679816082 :: Maybe b) | |
type Apply (Let6989586621680418329MfSym3 a6989586621680418330 xs6989586621680418328 f6989586621680418327 :: TyFun (Maybe k3) (Maybe k2) -> Type) (a6989586621680418331 :: Maybe k3) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Eval (Init '[a2] :: Maybe [a1] -> Type) | |
type Eval (Init ('[] :: [a]) :: Maybe [a] -> Type) | |
type Eval (Tail (_a ': as) :: Maybe [a] -> Type) | |
type Eval (Tail ('[] :: [a]) :: Maybe [a] -> Type) | |
type Eval (Init (a2 ': (b ': as)) :: Maybe [a1] -> Type) | |
type Eval (Head (a2 ': _as) :: Maybe a1 -> Type) | |
type Eval (Head ('[] :: [a]) :: Maybe a -> Type) | |
type Eval (Last (a2 ': (b ': as)) :: Maybe a1 -> Type) | |
type Eval (Last '[a2] :: Maybe a1 -> Type) | |
type Eval (Last ('[] :: [a]) :: Maybe a -> Type) | |
type Apply (StripPrefixSym0 :: TyFun [a6989586621680176855] ([a6989586621680176855] ~> Maybe [a6989586621680176855]) -> Type) (a6989586621680178551 :: [a6989586621680176855]) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (StripPrefixSym0 :: TyFun [a6989586621680176855] ([a6989586621680176855] ~> Maybe [a6989586621680176855]) -> Type) (a6989586621680178551 :: [a6989586621680176855]) = StripPrefixSym1 a6989586621680178551 | |
type Apply (TFHelper_6989586621679816344Sym0 :: TyFun (Maybe a6989586621679754628) (Maybe a6989586621679754628 ~> Maybe a6989586621679754628) -> Type) (a6989586621679816342 :: Maybe a6989586621679754628) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type Apply (Compare_6989586621679628257Sym0 :: TyFun (Maybe a3530822107858468865) (Maybe a3530822107858468865 ~> Ordering) -> Type) (a6989586621679628255 :: Maybe a3530822107858468865) | |
type ('Just a2 :: Maybe a1) <> ('Just b :: Maybe a1) | |
type Apply (ShowsPrec_6989586621680297105Sym1 a6989586621680297102 a3530822107858468865 :: TyFun (Maybe a3530822107858468865) (Symbol ~> Symbol) -> Type) (a6989586621680297103 :: Maybe a3530822107858468865) | |
Defined in Data.Singletons.Prelude.Show | |
type Apply (TFHelper_6989586621679816099Sym0 :: TyFun (Maybe a6989586621679754558) (Maybe b6989586621679754559 ~> Maybe b6989586621679754559) -> Type) (a6989586621679816097 :: Maybe a6989586621679754558) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (TFHelper_6989586621679816099Sym0 :: TyFun (Maybe a6989586621679754558) (Maybe b6989586621679754559 ~> Maybe b6989586621679754559) -> Type) (a6989586621679816097 :: Maybe a6989586621679754558) = TFHelper_6989586621679816099Sym1 a6989586621679816097 b6989586621679754559 :: TyFun (Maybe b6989586621679754559) (Maybe b6989586621679754559) -> Type | |
type Apply (TFHelper_6989586621679816242Sym0 :: TyFun (Maybe a6989586621679754576) ((a6989586621679754576 ~> Maybe b6989586621679754577) ~> Maybe b6989586621679754577) -> Type) (a6989586621679816240 :: Maybe a6989586621679754576) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (TFHelper_6989586621679816242Sym0 :: TyFun (Maybe a6989586621679754576) ((a6989586621679754576 ~> Maybe b6989586621679754577) ~> Maybe b6989586621679754577) -> Type) (a6989586621679816240 :: Maybe a6989586621679754576) = TFHelper_6989586621679816242Sym1 a6989586621679816240 b6989586621679754577 :: TyFun (a6989586621679754576 ~> Maybe b6989586621679754577) (Maybe b6989586621679754577) -> Type | |
type Apply (TFHelper_6989586621679816254Sym0 :: TyFun (Maybe a6989586621679754578) (Maybe b6989586621679754579 ~> Maybe b6989586621679754579) -> Type) (a6989586621679816252 :: Maybe a6989586621679754578) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (TFHelper_6989586621679816254Sym0 :: TyFun (Maybe a6989586621679754578) (Maybe b6989586621679754579 ~> Maybe b6989586621679754579) -> Type) (a6989586621679816252 :: Maybe a6989586621679754578) = TFHelper_6989586621679816254Sym1 a6989586621679816252 b6989586621679754579 :: TyFun (Maybe b6989586621679754579) (Maybe b6989586621679754579) -> Type | |
type Apply (TFHelper_6989586621679816069Sym0 :: TyFun (Maybe (a6989586621679754553 ~> b6989586621679754554)) (Maybe a6989586621679754553 ~> Maybe b6989586621679754554) -> Type) (a6989586621679816067 :: Maybe (a6989586621679754553 ~> b6989586621679754554)) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (TFHelper_6989586621679816069Sym0 :: TyFun (Maybe (a6989586621679754553 ~> b6989586621679754554)) (Maybe a6989586621679754553 ~> Maybe b6989586621679754554) -> Type) (a6989586621679816067 :: Maybe (a6989586621679754553 ~> b6989586621679754554)) = TFHelper_6989586621679816069Sym1 a6989586621679816067 | |
type Apply (LiftA2_6989586621679816083Sym1 a6989586621679816080 :: TyFun (Maybe a6989586621679754555) (Maybe b6989586621679754556 ~> Maybe c6989586621679754557) -> Type) (a6989586621679816081 :: Maybe a6989586621679754555) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type Apply (Let6989586621680418354MfSym2 xs6989586621680418353 f6989586621680418352 :: TyFun (Maybe k2) (TyFun k3 (Maybe k3) -> Type) -> Type) (a6989586621680418355 :: Maybe k2) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Eval (FindIndex p (a2 ': as) :: Maybe Nat -> Type) | |
type Eval (FindIndex _p ('[] :: [a]) :: Maybe Nat -> Type) | |
type Eval (NumIter a s :: Maybe (k, Nat) -> Type) | |
type Eval (Find p (a2 ': as) :: Maybe a1 -> Type) | |
type Eval (Find _p ('[] :: [a]) :: Maybe a -> Type) | |
type Eval (Lookup a as :: Maybe b -> Type) | |
type Eval (Map f ('Just a3) :: Maybe a2 -> Type) | |
type Eval (Map f ('Nothing :: Maybe a) :: Maybe b -> Type) | |
type Eval ('Just x <|> _1 :: Maybe a -> Type) | |
type Eval (('Nothing :: Maybe a) <|> m :: Maybe a -> Type) | |
type Apply (TFHelper_6989586621679816242Sym1 a6989586621679816240 b :: TyFun (a ~> Maybe b) (Maybe b) -> Type) (a6989586621679816241 :: a ~> Maybe b) | |
type Apply (FindSym0 :: TyFun (a6989586621680054674 ~> Bool) ([a6989586621680054674] ~> Maybe a6989586621680054674) -> Type) (a6989586621680059222 :: a6989586621680054674 ~> Bool) | |
type Apply (FindIndexSym0 :: TyFun (a6989586621680054671 ~> Bool) ([a6989586621680054671] ~> Maybe Nat) -> Type) (a6989586621680059198 :: a6989586621680054671 ~> Bool) | |
Defined in Data.Singletons.Prelude.List.Internal | |
type Apply (Fmap_6989586621679815908Sym0 :: TyFun (a6989586621679754547 ~> b6989586621679754548) (Maybe a6989586621679754547 ~> Maybe b6989586621679754548) -> Type) (a6989586621679815906 :: a6989586621679754547 ~> b6989586621679754548) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type Apply (MapMaybeSym0 :: TyFun (a6989586621679712798 ~> Maybe b6989586621679712799) ([a6989586621679712798] ~> [b6989586621679712799]) -> Type) (a6989586621679712959 :: a6989586621679712798 ~> Maybe b6989586621679712799) | |
Defined in Data.Singletons.Prelude.Maybe type Apply (MapMaybeSym0 :: TyFun (a6989586621679712798 ~> Maybe b6989586621679712799) ([a6989586621679712798] ~> [b6989586621679712799]) -> Type) (a6989586621679712959 :: a6989586621679712798 ~> Maybe b6989586621679712799) = MapMaybeSym1 a6989586621679712959 | |
type Apply (UnfoldrSym0 :: TyFun (b6989586621680054730 ~> Maybe (a6989586621680054731, b6989586621680054730)) (b6989586621680054730 ~> [a6989586621680054731]) -> Type) (a6989586621680059642 :: b6989586621680054730 ~> Maybe (a6989586621680054731, b6989586621680054730)) | |
Defined in Data.Singletons.Prelude.List.Internal type Apply (UnfoldrSym0 :: TyFun (b6989586621680054730 ~> Maybe (a6989586621680054731, b6989586621680054730)) (b6989586621680054730 ~> [a6989586621680054731]) -> Type) (a6989586621680059642 :: b6989586621680054730 ~> Maybe (a6989586621680054731, b6989586621680054730)) = UnfoldrSym1 a6989586621680059642 | |
type Apply (FindSym0 :: TyFun (a6989586621680417420 ~> Bool) (t6989586621680417419 a6989586621680417420 ~> Maybe a6989586621680417420) -> Type) (a6989586621680417873 :: a6989586621680417420 ~> Bool) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (FindSym0 :: TyFun (a6989586621680417420 ~> Bool) (t6989586621680417419 a6989586621680417420 ~> Maybe a6989586621680417420) -> Type) (a6989586621680417873 :: a6989586621680417420 ~> Bool) = FindSym1 a6989586621680417873 t6989586621680417419 :: TyFun (t6989586621680417419 a6989586621680417420) (Maybe a6989586621680417420) -> Type | |
type Apply (Traverse_6989586621680634283Sym0 :: TyFun (a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (Maybe a6989586621680628189 ~> f6989586621680628188 (Maybe b6989586621680628190)) -> Type) (a6989586621680634281 :: a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) | |
Defined in Data.Singletons.Prelude.Traversable type Apply (Traverse_6989586621680634283Sym0 :: TyFun (a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (Maybe a6989586621680628189 ~> f6989586621680628188 (Maybe b6989586621680628190)) -> Type) (a6989586621680634281 :: a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) = Traverse_6989586621680634283Sym1 a6989586621680634281 | |
type Apply (LiftA2_6989586621679816083Sym0 :: TyFun (a6989586621679754555 ~> (b6989586621679754556 ~> c6989586621679754557)) (Maybe a6989586621679754555 ~> (Maybe b6989586621679754556 ~> Maybe c6989586621679754557)) -> Type) (a6989586621679816080 :: a6989586621679754555 ~> (b6989586621679754556 ~> c6989586621679754557)) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (LiftA2_6989586621679816083Sym0 :: TyFun (a6989586621679754555 ~> (b6989586621679754556 ~> c6989586621679754557)) (Maybe a6989586621679754555 ~> (Maybe b6989586621679754556 ~> Maybe c6989586621679754557)) -> Type) (a6989586621679816080 :: a6989586621679754555 ~> (b6989586621679754556 ~> c6989586621679754557)) = LiftA2_6989586621679816083Sym1 a6989586621679816080 | |
type Apply (Maybe_Sym1 a6989586621679711384 a6989586621679711367 :: TyFun (a6989586621679711367 ~> b6989586621679711366) (Maybe a6989586621679711367 ~> b6989586621679711366) -> Type) (a6989586621679711385 :: a6989586621679711367 ~> b6989586621679711366) | |
Defined in Data.Singletons.Prelude.Maybe type Apply (Maybe_Sym1 a6989586621679711384 a6989586621679711367 :: TyFun (a6989586621679711367 ~> b6989586621679711366) (Maybe a6989586621679711367 ~> b6989586621679711366) -> Type) (a6989586621679711385 :: a6989586621679711367 ~> b6989586621679711366) = Maybe_Sym2 a6989586621679711384 a6989586621679711385 | |
type Apply (Let6989586621679712966RsSym0 :: TyFun (a6989586621679712798 ~> Maybe k1) (TyFun k (TyFun [a6989586621679712798] [k1] -> Type) -> Type) -> Type) (f6989586621679712963 :: a6989586621679712798 ~> Maybe k1) | |
Defined in Data.Singletons.Prelude.Maybe type Apply (Let6989586621679712966RsSym0 :: TyFun (a6989586621679712798 ~> Maybe k1) (TyFun k (TyFun [a6989586621679712798] [k1] -> Type) -> Type) -> Type) (f6989586621679712963 :: a6989586621679712798 ~> Maybe k1) = Let6989586621679712966RsSym1 f6989586621679712963 :: TyFun k (TyFun [a6989586621679712798] [k1] -> Type) -> Type | |
type Apply (Let6989586621680418329MfSym0 :: TyFun (k2 ~> (k3 ~> k2)) (TyFun k (TyFun k2 (TyFun (Maybe k3) (Maybe k2) -> Type) -> Type) -> Type) -> Type) (f6989586621680418327 :: k2 ~> (k3 ~> k2)) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Let6989586621680418329MfSym0 :: TyFun (k2 ~> (k3 ~> k2)) (TyFun k (TyFun k2 (TyFun (Maybe k3) (Maybe k2) -> Type) -> Type) -> Type) -> Type) (f6989586621680418327 :: k2 ~> (k3 ~> k2)) = Let6989586621680418329MfSym1 f6989586621680418327 :: TyFun k (TyFun k2 (TyFun (Maybe k3) (Maybe k2) -> Type) -> Type) -> Type | |
type Apply (Let6989586621680418354MfSym0 :: TyFun (k2 ~> (k3 ~> k3)) (TyFun k (TyFun (Maybe k2) (TyFun k3 (Maybe k3) -> Type) -> Type) -> Type) -> Type) (f6989586621680418352 :: k2 ~> (k3 ~> k3)) | |
Defined in Data.Singletons.Prelude.Foldable type Apply (Let6989586621680418354MfSym0 :: TyFun (k2 ~> (k3 ~> k3)) (TyFun k (TyFun (Maybe k2) (TyFun k3 (Maybe k3) -> Type) -> Type) -> Type) -> Type) (f6989586621680418352 :: k2 ~> (k3 ~> k3)) = Let6989586621680418354MfSym1 f6989586621680418352 :: TyFun k (TyFun (Maybe k2) (TyFun k3 (Maybe k3) -> Type) -> Type) -> Type | |
type Apply (Lambda_6989586621680333835Sym1 a6989586621680333833 :: TyFun (k1 ~> First a) (TyFun k1 (Maybe a) -> Type) -> Type) (k6989586621680333834 :: k1 ~> First a) | |
type Apply (Lambda_6989586621680333923Sym1 a6989586621680333921 :: TyFun (k1 ~> Last a) (TyFun k1 (Maybe a) -> Type) -> Type) (k6989586621680333922 :: k1 ~> Last a) | |
type ToT (NamedF Maybe a name) | |
type Unwrappable (NamedF Maybe a name) Source # | |
Defined in Lorentz.Wrappable |
The Either
type represents values with two possibilities: a value of
type
is either Either
a b
or Left
a
.Right
b
The Either
type is sometimes used to represent a value which is
either correct or an error; by convention, the Left
constructor is
used to hold an error value and the Right
constructor is used to
hold a correct value (mnemonic: "right" also means "correct").
Examples
The type
is the type of values which can be either
a Either
String
Int
String
or an Int
. The Left
constructor can be used only on
String
s, and the Right
constructor can be used only on Int
s:
>>>
let s = Left "foo" :: Either String Int
>>>
s
Left "foo">>>
let n = Right 3 :: Either String Int
>>>
n
Right 3>>>
:type s
s :: Either String Int>>>
:type n
n :: Either String Int
The fmap
from our Functor
instance will ignore Left
values, but
will apply the supplied function to values contained in a Right
:
>>>
let s = Left "foo" :: Either String Int
>>>
let n = Right 3 :: Either String Int
>>>
fmap (*2) s
Left "foo">>>
fmap (*2) n
Right 6
The Monad
instance for Either
allows us to chain together multiple
actions which may fail, and fail overall if any of the individual
steps failed. First we'll write a function that can either parse an
Int
from a Char
, or fail.
>>>
import Data.Char ( digitToInt, isDigit )
>>>
:{
let parseEither :: Char -> Either String Int parseEither c | isDigit c = Right (digitToInt c) | otherwise = Left "parse error">>>
:}
The following should work, since both '1'
and '2'
can be
parsed as Int
s.
>>>
:{
let parseMultiple :: Either String Int parseMultiple = do x <- parseEither '1' y <- parseEither '2' return (x + y)>>>
:}
>>>
parseMultiple
Right 3
But the following should fail overall, since the first operation where
we attempt to parse 'm'
as an Int
will fail:
>>>
:{
let parseMultiple :: Either String Int parseMultiple = do x <- parseEither 'm' y <- parseEither '2' return (x + y)>>>
:}
>>>
parseMultiple
Left "parse error"
Instances
Arbitrary2 Either | |
Defined in Test.QuickCheck.Arbitrary Methods liftArbitrary2 :: Gen a -> Gen b -> Gen (Either a b) # liftShrink2 :: (a -> [a]) -> (b -> [b]) -> Either a b -> [Either a b] # | |
ToJSON2 Either | |
Defined in Data.Aeson.Types.ToJSON Methods liftToJSON2 :: (a -> Value) -> ([a] -> Value) -> (b -> Value) -> ([b] -> Value) -> Either a b -> Value # liftToJSONList2 :: (a -> Value) -> ([a] -> Value) -> (b -> Value) -> ([b] -> Value) -> [Either a b] -> Value # liftToEncoding2 :: (a -> Encoding) -> ([a] -> Encoding) -> (b -> Encoding) -> ([b] -> Encoding) -> Either a b -> Encoding # liftToEncodingList2 :: (a -> Encoding) -> ([a] -> Encoding) -> (b -> Encoding) -> ([b] -> Encoding) -> [Either a b] -> Encoding # | |
Bifunctor Either | Since: base-4.8.0.0 |
Eq2 Either | Since: base-4.9.0.0 |
Ord2 Either | Since: base-4.9.0.0 |
Defined in Data.Functor.Classes | |
Read2 Either | Since: base-4.9.0.0 |
Defined in Data.Functor.Classes Methods liftReadsPrec2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> Int -> ReadS (Either a b) # liftReadList2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> ReadS [Either a b] # liftReadPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec (Either a b) # liftReadListPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec [Either a b] # | |
Show2 Either | Since: base-4.9.0.0 |
NFData2 Either | Since: deepseq-1.4.3.0 |
Defined in Control.DeepSeq | |
Hashable2 Either | |
Defined in Data.Hashable.Class | |
Swapped Either | |
() :=> (Monad (Either a)) | |
() :=> (Functor (Either a)) | |
() :=> (Applicative (Either a)) | |
Defined in Data.Constraint Methods ins :: () :- Applicative (Either a) # | |
MonadError e (Either e) | |
Defined in Control.Monad.Error.Class | |
Monad (Either e) | Since: base-4.4.0.0 |
Functor (Either a) | Since: base-3.0 |
Applicative (Either e) | Since: base-3.0 |
Foldable (Either a) | Since: base-4.7.0.0 |
Defined in Data.Foldable Methods fold :: Monoid m => Either a m -> m # foldMap :: Monoid m => (a0 -> m) -> Either a a0 -> m # foldMap' :: Monoid m => (a0 -> m) -> Either a a0 -> m # foldr :: (a0 -> b -> b) -> b -> Either a a0 -> b # foldr' :: (a0 -> b -> b) -> b -> Either a a0 -> b # foldl :: (b -> a0 -> b) -> b -> Either a a0 -> b # foldl' :: (b -> a0 -> b) -> b -> Either a a0 -> b # foldr1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 # foldl1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 # toList :: Either a a0 -> [a0] # length :: Either a a0 -> Int # elem :: Eq a0 => a0 -> Either a a0 -> Bool # maximum :: Ord a0 => Either a a0 -> a0 # minimum :: Ord a0 => Either a a0 -> a0 # | |
Traversable (Either a) | Since: base-4.7.0.0 |
Defined in Data.Traversable | |
Arbitrary a => Arbitrary1 (Either a) | |
Defined in Test.QuickCheck.Arbitrary Methods liftArbitrary :: Gen a0 -> Gen (Either a a0) # liftShrink :: (a0 -> [a0]) -> Either a a0 -> [Either a a0] # | |
ToJSON a => ToJSON1 (Either a) | |
Defined in Data.Aeson.Types.ToJSON Methods liftToJSON :: (a0 -> Value) -> ([a0] -> Value) -> Either a a0 -> Value # liftToJSONList :: (a0 -> Value) -> ([a0] -> Value) -> [Either a a0] -> Value # liftToEncoding :: (a0 -> Encoding) -> ([a0] -> Encoding) -> Either a a0 -> Encoding # liftToEncodingList :: (a0 -> Encoding) -> ([a0] -> Encoding) -> [Either a a0] -> Encoding # | |
Eq a => Eq1 (Either a) | Since: base-4.9.0.0 |
Ord a => Ord1 (Either a) | Since: base-4.9.0.0 |
Defined in Data.Functor.Classes | |
Read a => Read1 (Either a) | Since: base-4.9.0.0 |
Defined in Data.Functor.Classes Methods liftReadsPrec :: (Int -> ReadS a0) -> ReadS [a0] -> Int -> ReadS (Either a a0) # liftReadList :: (Int -> ReadS a0) -> ReadS [a0] -> ReadS [Either a a0] # liftReadPrec :: ReadPrec a0 -> ReadPrec [a0] -> ReadPrec (Either a a0) # liftReadListPrec :: ReadPrec a0 -> ReadPrec [a0] -> ReadPrec [Either a a0] # | |
Show a => Show1 (Either a) | Since: base-4.9.0.0 |
MonadFailure (Either a) | |
NFData a => NFData1 (Either a) | Since: deepseq-1.4.3.0 |
Defined in Control.DeepSeq | |
e ~ SomeException => MonadThrow (Either e) | |
Defined in Control.Monad.Catch | |
e ~ SomeException => MonadCatch (Either e) | Since: exceptions-0.8.3 |
e ~ SomeException => MonadMask (Either e) | Since: exceptions-0.8.3 |
Defined in Control.Monad.Catch | |
Hashable a => Hashable1 (Either a) | |
Defined in Data.Hashable.Class | |
PTraversable (Either a) | |
STraversable (Either a) | |
Defined in Data.Singletons.Prelude.Traversable Methods sTraverse :: forall a0 (f :: Type -> Type) b (t1 :: a0 ~> f b) (t2 :: Either a a0). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply TraverseSym0 t1) t2) # sSequenceA :: forall (f :: Type -> Type) a0 (t :: Either a (f a0)). SApplicative f => Sing t -> Sing (Apply SequenceASym0 t) # sMapM :: forall a0 (m :: Type -> Type) b (t1 :: a0 ~> m b) (t2 :: Either a a0). SMonad m => Sing t1 -> Sing t2 -> Sing (Apply (Apply MapMSym0 t1) t2) # sSequence :: forall (m :: Type -> Type) a0 (t :: Either a (m a0)). SMonad m => Sing t -> Sing (Apply SequenceSym0 t) # | |
PFoldable (Either a) | |
SFoldable (Either a) | |
Defined in Data.Singletons.Prelude.Foldable Methods sFold :: forall m (t :: Either a m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) # sFoldMap :: forall a0 m (t1 :: a0 ~> m) (t2 :: Either a a0). SMonoid m => Sing t1 -> Sing t2 -> Sing (Apply (Apply FoldMapSym0 t1) t2) # sFoldr :: forall a0 b (t1 :: a0 ~> (b ~> b)) (t2 :: b) (t3 :: Either a a0). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply FoldrSym0 t1) t2) t3) # sFoldr' :: forall a0 b (t1 :: a0 ~> (b ~> b)) (t2 :: b) (t3 :: Either a a0). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply Foldr'Sym0 t1) t2) t3) # sFoldl :: forall b a0 (t1 :: b ~> (a0 ~> b)) (t2 :: b) (t3 :: Either a a0). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply FoldlSym0 t1) t2) t3) # sFoldl' :: forall b a0 (t1 :: b ~> (a0 ~> b)) (t2 :: b) (t3 :: Either a a0). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply Foldl'Sym0 t1) t2) t3) # sFoldr1 :: forall a0 (t1 :: a0 ~> (a0 ~> a0)) (t2 :: Either a a0). Sing t1 -> Sing t2 -> Sing (Apply (Apply Foldr1Sym0 t1) t2) # sFoldl1 :: forall a0 (t1 :: a0 ~> (a0 ~> a0)) (t2 :: Either a a0). Sing t1 -> Sing t2 -> Sing (Apply (Apply Foldl1Sym0 t1) t2) # sToList :: forall a0 (t :: Either a a0). Sing t -> Sing (Apply ToListSym0 t) # sNull :: forall a0 (t :: Either a a0). Sing t -> Sing (Apply NullSym0 t) # sLength :: forall a0 (t :: Either a a0). Sing t -> Sing (Apply LengthSym0 t) # sElem :: forall a0 (t1 :: a0) (t2 :: Either a a0). SEq a0 => Sing t1 -> Sing t2 -> Sing (Apply (Apply ElemSym0 t1) t2) # sMaximum :: forall a0 (t :: Either a a0). SOrd a0 => Sing t -> Sing (Apply MaximumSym0 t) # sMinimum :: forall a0 (t :: Either a a0). SOrd a0 => Sing t -> Sing (Apply MinimumSym0 t) # sSum :: forall a0 (t :: Either a a0). SNum a0 => Sing t -> Sing (Apply SumSym0 t) # sProduct :: forall a0 (t :: Either a a0). SNum a0 => Sing t -> Sing (Apply ProductSym0 t) # | |
PFunctor (Either a) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
PApplicative (Either e) | |
PMonad (Either e) | |
SFunctor (Either a) | |
SApplicative (Either e) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) # (%<*>) :: forall a b (t1 :: Either e (a ~> b)) (t2 :: Either e a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<*>@#@$) t1) t2) # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Either e a) (t3 :: Either e b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply LiftA2Sym0 t1) t2) t3) # (%*>) :: forall a b (t1 :: Either e a) (t2 :: Either e b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (*>@#@$) t1) t2) # (%<*) :: forall a b (t1 :: Either e a) (t2 :: Either e b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<*@#@$) t1) t2) # | |
SMonad (Either e) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods (%>>=) :: forall a b (t1 :: Either e a) (t2 :: a ~> Either e b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>>=@#@$) t1) t2) # (%>>) :: forall a b (t1 :: Either e a) (t2 :: Either e b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>>@#@$) t1) t2) # sReturn :: forall a (t :: a). Sing t -> Sing (Apply ReturnSym0 t) # | |
Generic1 (Either a :: Type -> Type) | Since: base-4.6.0.0 |
IsoHKD (Either a :: Type -> Type) (b :: Type) | |
(CanCastTo l1 l2, CanCastTo r1 r2) => CanCastTo (Either l1 r1 :: Type) (Either l2 r2 :: Type) Source # | |
(Eq a, Eq b) => Eq (Either a b) | Since: base-2.1 |
(Ord a, Ord b) => Ord (Either a b) | Since: base-2.1 |
(Read a, Read b) => Read (Either a b) | Since: base-3.0 |
(Show a, Show b) => Show (Either a b) | Since: base-3.0 |
Generic (Either a b) | Since: base-4.6.0.0 |
Semigroup (Either a b) | Since: base-4.9.0.0 |
(Lift a, Lift b) => Lift (Either a b) | |
(Arbitrary a, Arbitrary b) => Arbitrary (Either a b) | |
(CoArbitrary a, CoArbitrary b) => CoArbitrary (Either a b) | |
Defined in Test.QuickCheck.Arbitrary Methods coarbitrary :: Either a b -> Gen b0 -> Gen b0 # | |
(Hashable a, Hashable b) => Hashable (Either a b) | |
Defined in Data.Hashable.Class | |
(ToJSON a, ToJSON b) => ToJSON (Either a b) | |
Defined in Data.Aeson.Types.ToJSON | |
(NFData a, NFData b) => NFData (Either a b) | |
Defined in Control.DeepSeq | |
PShow (Either a b) | |
(SShow a, SShow b) => SShow (Either a b) | |
Defined in Data.Singletons.Prelude.Show Methods sShowsPrec :: forall (t1 :: Nat) (t2 :: Either a b) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply ShowsPrecSym0 t1) t2) t3) # sShow_ :: forall (t :: Either a b). Sing t -> Sing (Apply Show_Sym0 t) # sShowList :: forall (t1 :: [Either a b]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply ShowListSym0 t1) t2) # | |
PSemigroup (Either a b) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
SSemigroup (Either a b) | |
POrd (Either a b) | |
(SOrd a, SOrd b) => SOrd (Either a b) | |
Defined in Data.Singletons.Prelude.Ord Methods sCompare :: forall (t1 :: Either a b) (t2 :: Either a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply CompareSym0 t1) t2) # (%<) :: forall (t1 :: Either a b) (t2 :: Either a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<@#@$) t1) t2) # (%<=) :: forall (t1 :: Either a b) (t2 :: Either a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (<=@#@$) t1) t2) # (%>) :: forall (t1 :: Either a b) (t2 :: Either a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>@#@$) t1) t2) # (%>=) :: forall (t1 :: Either a b) (t2 :: Either a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (>=@#@$) t1) t2) # sMax :: forall (t1 :: Either a b) (t2 :: Either a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply MaxSym0 t1) t2) # sMin :: forall (t1 :: Either a b) (t2 :: Either a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply MinSym0 t1) t2) # | |
(SEq a, SEq b) => SEq (Either a b) | |
PEq (Either a b) | |
(TypeError (DisallowInstance "Either") :: Constraint) => Container (Either a b) | |
Defined in Universum.Container.Class Methods toList :: Either a b -> [Element (Either a b)] # foldr :: (Element (Either a b) -> b0 -> b0) -> b0 -> Either a b -> b0 # foldl :: (b0 -> Element (Either a b) -> b0) -> b0 -> Either a b -> b0 # foldl' :: (b0 -> Element (Either a b) -> b0) -> b0 -> Either a b -> b0 # elem :: Element (Either a b) -> Either a b -> Bool # maximum :: Either a b -> Element (Either a b) # minimum :: Either a b -> Element (Either a b) # foldMap :: Monoid m => (Element (Either a b) -> m) -> Either a b -> m # fold :: Either a b -> Element (Either a b) # foldr' :: (Element (Either a b) -> b0 -> b0) -> b0 -> Either a b -> b0 # foldr1 :: (Element (Either a b) -> Element (Either a b) -> Element (Either a b)) -> Either a b -> Element (Either a b) # foldl1 :: (Element (Either a b) -> Element (Either a b) -> Element (Either a b)) -> Either a b -> Element (Either a b) # notElem :: Element (Either a b) -> Either a b -> Bool # all :: (Element (Either a b) -> Bool) -> Either a b -> Bool # any :: (Element (Either a b) -> Bool) -> Either a b -> Bool # find :: (Element (Either a b) -> Bool) -> Either a b -> Maybe (Element (Either a b)) # | |
PolyTypeHasDocC '[l, r] => TypeHasDoc (Either l r) | |
Defined in Michelson.Typed.Haskell.Doc Associated Types type TypeDocFieldDescriptions (Either l r) :: FieldDescriptions # Methods typeDocName :: Proxy (Either l r) -> Text # typeDocMdDescription :: Markdown # typeDocMdReference :: Proxy (Either l r) -> WithinParens -> Markdown # typeDocDependencies :: Proxy (Either l r) -> [SomeDocDefinitionItem] # typeDocHaskellRep :: TypeDocHaskellRep (Either l r) # typeDocMichelsonRep :: TypeDocMichelsonRep (Either l r) # | |
(IsoValue l, IsoValue r) => IsoValue (Either l r) | |
(Eq a, Eq b) :=> (Eq (Either a b)) | |
(Ord a, Ord b) :=> (Ord (Either a b)) | |
(Read a, Read b) :=> (Read (Either a b)) | |
(Show a, Show b) :=> (Show (Either a b)) | |
(SDecide a, SDecide b) => TestCoercion (SEither :: Either a b -> Type) | |
Defined in Data.Singletons.Prelude.Instances | |
(SDecide a, SDecide b) => TestEquality (SEither :: Either a b -> Type) | |
Defined in Data.Singletons.Prelude.Instances | |
SuppressUnusedWarnings (RightsSym0 :: TyFun [Either a6989586621680401503 b6989586621680401504] [b6989586621680401504] -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (PartitionEithersSym0 :: TyFun [Either a6989586621680401501 b6989586621680401502] ([a6989586621680401501], [b6989586621680401502]) -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (LeftsSym0 :: TyFun [Either a6989586621680401505 b6989586621680401506] [a6989586621680401505] -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsRightSym0 :: TyFun (Either a6989586621680401497 b6989586621680401498) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (IsLeftSym0 :: TyFun (Either a6989586621680401499 b6989586621680401500) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Compare_6989586621679628335Sym0 :: TyFun (Either a6989586621679086693 b6989586621679086694) (Either a6989586621679086693 b6989586621679086694 ~> Ordering) -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (ShowsPrec_6989586621680297161Sym0 :: TyFun Nat (Either a6989586621679086693 b6989586621679086694 ~> (Symbol ~> Symbol)) -> Type) | |
Defined in Data.Singletons.Prelude.Show Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Pure_6989586621679816219Sym0 :: TyFun a6989586621679754552 (Either e6989586621679815301 a6989586621679754552) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (RightSym0 :: TyFun b6989586621679086694 (Either a6989586621679086693 b6989586621679086694) -> Type) | |
Defined in Data.Singletons.Prelude.Instances Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (LeftSym0 :: TyFun a6989586621679086693 (Either a6989586621679086693 b6989586621679086694) -> Type) | |
Defined in Data.Singletons.Prelude.Instances Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Let6989586621679949301ASym0 :: TyFun k1 (Either a6989586621679086693 k1) -> Type) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
SingI (RightsSym0 :: TyFun [Either a b] [b] -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods sing :: Sing RightsSym0 # | |
SingI (PartitionEithersSym0 :: TyFun [Either a b] ([a], [b]) -> Type) | |
Defined in Data.Singletons.Prelude.Either | |
SingI (LeftsSym0 :: TyFun [Either a b] [a] -> Type) | |
Defined in Data.Singletons.Prelude.Either | |
SingI (IsRightSym0 :: TyFun (Either a b) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods sing :: Sing IsRightSym0 # | |
SingI (IsLeftSym0 :: TyFun (Either a b) Bool -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods sing :: Sing IsLeftSym0 # | |
SingI (RightSym0 :: TyFun b (Either a b) -> Type) | |
Defined in Data.Singletons.Prelude.Instances | |
SingI (LeftSym0 :: TyFun a (Either a b) -> Type) | |
Defined in Data.Singletons.Prelude.Instances | |
(a ~ a', b ~ b') => Each (Either a a') (Either b b') a b | Since: microlens-0.4.11 |
SuppressUnusedWarnings (ShowsPrec_6989586621680297161Sym1 a6989586621680297158 a6989586621679086693 b6989586621679086694 :: TyFun (Either a6989586621679086693 b6989586621679086694) (Symbol ~> Symbol) -> Type) | |
Defined in Data.Singletons.Prelude.Show Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816329Sym0 :: TyFun (Either e6989586621679815318 a6989586621679754576) ((a6989586621679754576 ~> Either e6989586621679815318 b6989586621679754577) ~> Either e6989586621679815318 b6989586621679754577) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816229Sym0 :: TyFun (Either e6989586621679815301 (a6989586621679754553 ~> b6989586621679754554)) (Either e6989586621679815301 a6989586621679754553 ~> Either e6989586621679815301 b6989586621679754554) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Compare_6989586621679628335Sym1 a6989586621679628333 :: TyFun (Either a6989586621679086693 b6989586621679086694) Ordering -> Type) | |
Defined in Data.Singletons.Prelude.Ord Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816032Sym0 :: TyFun a6989586621679754549 (Either a6989586621679815289 b6989586621679754550 ~> Either a6989586621679815289 a6989586621679754549) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Fmap_6989586621679816011Sym0 :: TyFun (a6989586621679754547 ~> b6989586621679754548) (Either a6989586621679815289 a6989586621679754547 ~> Either a6989586621679815289 b6989586621679754548) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Either_Sym0 :: TyFun (a6989586621680400023 ~> c6989586621680400024) ((b6989586621680400025 ~> c6989586621680400024) ~> (Either a6989586621680400023 b6989586621680400025 ~> c6989586621680400024)) -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SingI (Either_Sym0 :: TyFun (a ~> c) ((b ~> c) ~> (Either a b ~> c)) -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods sing :: Sing Either_Sym0 # | |
SuppressUnusedWarnings (TFHelper_6989586621679816229Sym1 a6989586621679816227 :: TyFun (Either e6989586621679815301 a6989586621679754553) (Either e6989586621679815301 b6989586621679754554) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816032Sym1 a6989586621679816030 a6989586621679815289 b6989586621679754550 :: TyFun (Either a6989586621679815289 b6989586621679754550) (Either a6989586621679815289 a6989586621679754549) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Fmap_6989586621679816011Sym1 a6989586621679816009 a6989586621679815289 :: TyFun (Either a6989586621679815289 a6989586621679754547) (Either a6989586621679815289 b6989586621679754548) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Traverse_6989586621680634323Sym0 :: TyFun (a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (Either a6989586621680633746 a6989586621680628189 ~> f6989586621680628188 (Either a6989586621680633746 b6989586621680628190)) -> Type) | |
Defined in Data.Singletons.Prelude.Traversable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (TFHelper_6989586621679816329Sym1 a6989586621679816327 b6989586621679754577 :: TyFun (a6989586621679754576 ~> Either e6989586621679815318 b6989586621679754577) (Either e6989586621679815318 b6989586621679754577) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Either_Sym1 a6989586621680400059 b6989586621680400025 :: TyFun (b6989586621680400025 ~> c6989586621680400024) (Either a6989586621680400023 b6989586621680400025 ~> c6989586621680400024) -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
SingI d => SingI (Either_Sym1 d b :: TyFun (b ~> c) (Either a b ~> c) -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods sing :: Sing (Either_Sym1 d b) # | |
SuppressUnusedWarnings (Traverse_6989586621680634323Sym1 a6989586621680634321 a6989586621680633746 :: TyFun (Either a6989586621680633746 a6989586621680628189) (f6989586621680628188 (Either a6989586621680633746 b6989586621680628190)) -> Type) | |
Defined in Data.Singletons.Prelude.Traversable Methods suppressUnusedWarnings :: () # | |
SuppressUnusedWarnings (Either_Sym2 a6989586621680400060 a6989586621680400059 :: TyFun (Either a6989586621680400023 b6989586621680400025) c6989586621680400024 -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods suppressUnusedWarnings :: () # | |
(SingI d1, SingI d2) => SingI (Either_Sym2 d1 d2 :: TyFun (Either a b) c -> Type) | |
Defined in Data.Singletons.Prelude.Either Methods sing :: Sing (Either_Sym2 d1 d2) # | |
(Functor f, Functor g) => Functor (Lift Either f g) | |
type MapM (arg1 :: a0 ~> m0 b0) (arg2 :: Either a a0) | |
type Traverse (a2 :: a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (a3 :: Either a1 a6989586621680628189) | |
Defined in Data.Singletons.Prelude.Traversable type Traverse (a2 :: a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (a3 :: Either a1 a6989586621680628189) = Apply (Apply (Traverse_6989586621680634323Sym0 :: TyFun (a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (Either a1 a6989586621680628189 ~> f6989586621680628188 (Either a1 b6989586621680628190)) -> Type) a2) a3 | |
type LiftA2 (arg1 :: a0 ~> (b0 ~> c0)) (arg2 :: Either e a0) (arg3 :: Either e b0) | |
type FoldMap (a2 :: a6989586621680417514 ~> k2) (a3 :: Either a1 a6989586621680417514) | |
type Fmap (a2 :: a6989586621679754547 ~> b6989586621679754548) (a3 :: Either a1 a6989586621679754547) | |
Defined in Data.Singletons.Prelude.Monad.Internal | |
type Foldl' (arg1 :: b0 ~> (a0 ~> b0)) (arg2 :: b0) (arg3 :: Either a a0) | |
type Foldl (arg1 :: b0 ~> (a0 ~> b0)) (arg2 :: b0) (arg3 :: Either a a0) | |
type Foldr' (arg1 :: a0 ~> (b0 ~> b0)) (arg2 :: b0) (arg3 :: Either a a0) | |
type Foldr (a2 :: a6989586621680417515 ~> (k2 ~> k2)) (a3 :: k2) (a4 :: Either a1 a6989586621680417515) | |
Defined in Data.Singletons.Prelude.Foldable | |
type Pure (a :: k1) | |
type Return (arg0 :: a0) | |
type Elem (arg1 :: a0) (arg2 :: Either a a0) | |
type Foldl1 (arg1 :: a0 ~> (a0 ~> a0)) (arg2 :: Either a a0) | |
type Foldr1 (arg1 :: a0 ~> (a0 ~> a0)) (arg2 :: Either a a0) | |
type (a2 :: k1) <$ (a3 :: Either a1 b6989586621679754550) | |
type Apply (ShowsPrec_6989586621680297161Sym0 :: TyFun Nat (Either a6989586621679086693 b6989586621679086694 ~> (Symbol ~> Symbol)) -> Type) (a6989586621680297158 :: Nat) | |
Defined in Data.Singletons.Prelude.Show type Apply (ShowsPrec_6989586621680297161Sym0 :: TyFun Nat (Either a6989586621679086693 b6989586621679086694 ~> (Symbol ~> Symbol)) -> Type) (a6989586621680297158 :: Nat) = ShowsPrec_6989586621680297161Sym1 a6989586621680297158 a6989586621679086693 b6989586621679086694 :: TyFun (Either a6989586621679086693 b6989586621679086694) (Symbol ~> Symbol) -> Type | |
type Apply (Pure_6989586621679816219Sym0 :: TyFun a (Either e6989586621679815301 a) -> Type) (a6989586621679816218 :: a) | |
type Apply (LeftSym0 :: TyFun a (Either a b6989586621679086694) -> Type) (t6989586621679548144 :: a) | |
type Apply (RightSym0 :: TyFun b (Either a6989586621679086693 b) -> Type) (t6989586621679548146 :: b) | |
type Apply (Let6989586621679949301ASym0 :: TyFun k1 (Either a6989586621679086693 k1) -> Type) (wild_69895866216799488856989586621679949300 :: k1) | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type Apply (TFHelper_6989586621679816032Sym0 :: TyFun a6989586621679754549 (Either a6989586621679815289 b6989586621679754550 ~> Either a6989586621679815289 a6989586621679754549) -> Type) (a6989586621679816030 :: a6989586621679754549) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (TFHelper_6989586621679816032Sym0 :: TyFun a6989586621679754549 (Either a6989586621679815289 b6989586621679754550 ~> Either a6989586621679815289 a6989586621679754549) -> Type) (a6989586621679816030 :: a6989586621679754549) = TFHelper_6989586621679816032Sym1 a6989586621679816030 a6989586621679815289 b6989586621679754550 :: TyFun (Either a6989586621679815289 b6989586621679754550) (Either a6989586621679815289 a6989586621679754549) -> Type | |
type Eval (FoldMap f ('Right x :: Either a3 a1) :: a2 -> Type) | |
type Eval (FoldMap f ('Left _a :: Either a3 a1) :: a2 -> Type) | |
type Eval (Foldr f y ('Right x :: Either a3 a1) :: a2 -> Type) | |
type Eval (Foldr f y ('Left _a :: Either a3 a1) :: a2 -> Type) | |
type Failure (Either a) | |
Defined in Basement.Monad | |
type Product (arg0 :: Either a a0) | |
type Sum (arg0 :: Either a a0) | |
type Minimum (arg0 :: Either a a0) | |
type Maximum (arg0 :: Either a a0) | |
type Length (a2 :: Either a1 a6989586621680417527) | |
type Null (a2 :: Either a1 a6989586621680417526) | |
type ToList (arg0 :: Either a a0) | |
type Fold (arg0 :: Either a m0) | |
type Sequence (arg0 :: Either a (m0 a0)) | |
type SequenceA (arg0 :: Either a (f0 a0)) | |
type (arg1 :: Either e a0) <* (arg2 :: Either e b0) | |
type (arg1 :: Either e a0) *> (arg2 :: Either e b0) | |
type (a1 :: Either e (a6989586621679754553 ~> b6989586621679754554)) <*> (a2 :: Either e a6989586621679754553) | |
Defined in Data.Singletons.Prelude.Monad.Internal type (a1 :: Either e (a6989586621679754553 ~> b6989586621679754554)) <*> (a2 :: Either e a6989586621679754553) = Apply (Apply (TFHelper_6989586621679816229Sym0 :: TyFun (Either e (a6989586621679754553 ~> b6989586621679754554)) (Either e a6989586621679754553 ~> Either e b6989586621679754554) -> Type) a1) a2 | |
type (arg1 :: Either e a0) >> (arg2 :: Either e b0) | |
type (a1 :: Either e a6989586621679754576) >>= (a2 :: a6989586621679754576 ~> Either e b6989586621679754577) | |
Defined in Data.Singletons.Prelude.Monad.Internal type (a1 :: Either e a6989586621679754576) >>= (a2 :: a6989586621679754576 ~> Either e b6989586621679754577) = Apply (Apply (TFHelper_6989586621679816329Sym0 :: TyFun (Either e a6989586621679754576) ((a6989586621679754576 ~> Either e b6989586621679754577) ~> Either e b6989586621679754577) -> Type) a1) a2 | |
type Rep1 (Either a :: Type -> Type) | |
Defined in GHC.Generics type Rep1 (Either a :: Type -> Type) = D1 ('MetaData "Either" "Data.Either" "base" 'False) (C1 ('MetaCons "Left" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Right" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1)) | |
type HKD (Either a :: Type -> Type) (b :: Type) | |
type Apply (RightsSym0 :: TyFun [Either a b] [b] -> Type) (a6989586621680401772 :: [Either a b]) | |
Defined in Data.Singletons.Prelude.Either | |
type Apply (LeftsSym0 :: TyFun [Either a b] [a] -> Type) (a6989586621680401777 :: [Either a b]) | |
type Apply (PartitionEithersSym0 :: TyFun [Either a b] ([a], [b]) -> Type) (a6989586621680401752 :: [Either a b]) | |
Defined in Data.Singletons.Prelude.Either | |
type Rep (Either a b) | |
Defined in GHC.Generics type Rep (Either a b) = D1 ('MetaData "Either" "Data.Either" "base" 'False) (C1 ('MetaCons "Left" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Right" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b))) | |
type Sing | |
Defined in Data.Singletons.Prelude.Instances | |
type Demote (Either a b) | |
type Element (Either a b) | |
Defined in Universum.Container.Class | |
type TypeDocFieldDescriptions (Either l r) | |
Defined in Michelson.Typed.Haskell.Doc | |
type ToT (Either l r) | |
Defined in Michelson.Typed.Haskell.Value | |
type Show_ (arg0 :: Either a b) | |
type Sconcat (arg0 :: NonEmpty (Either a b)) | |
type ShowList (arg1 :: [Either a b]) arg2 | |
type (a2 :: Either a1 b) <> (a3 :: Either a1 b) | |
type Min (arg1 :: Either a b) (arg2 :: Either a b) | |
type Max (arg1 :: Either a b) (arg2 :: Either a b) | |
type (arg1 :: Either a b) >= (arg2 :: Either a b) | |
type (arg1 :: Either a b) > (arg2 :: Either a b) | |
type (arg1 :: Either a b) <= (arg2 :: Either a b) | |
type (arg1 :: Either a b) < (arg2 :: Either a b) | |
type Compare (a2 :: Either a1 b) (a3 :: Either a1 b) | |
type (x :: Either a b) /= (y :: Either a b) | |
type (a2 :: Either a1 b1) == (b2 :: Either a1 b1) | |
Defined in Data.Singletons.Prelude.Eq | |
type ShowsPrec a2 (a3 :: Either a1 b) a4 | |
type Apply (IsRightSym0 :: TyFun (Either a b) Bool -> Type) (a6989586621680401746 :: Either a b) | |
Defined in Data.Singletons.Prelude.Either | |
type Apply (IsLeftSym0 :: TyFun (Either a b) Bool -> Type) (a6989586621680401748 :: Either a b) | |
Defined in Data.Singletons.Prelude.Either | |
type Apply (Compare_6989586621679628335Sym1 a6989586621679628333 :: TyFun (Either a b) Ordering -> Type) (a6989586621679628334 :: Either a b) | |
type Apply (Either_Sym2 a6989586621680400060 a6989586621680400059 :: TyFun (Either a b) c -> Type) (a6989586621680400061 :: Either a b) | |
Defined in Data.Singletons.Prelude.Either | |
type Apply (Traverse_6989586621680634323Sym1 a6989586621680634321 a2 :: TyFun (Either a2 a1) (f (Either a2 b)) -> Type) (a6989586621680634322 :: Either a2 a1) | |
type Apply (Compare_6989586621679628335Sym0 :: TyFun (Either a6989586621679086693 b6989586621679086694) (Either a6989586621679086693 b6989586621679086694 ~> Ordering) -> Type) (a6989586621679628333 :: Either a6989586621679086693 b6989586621679086694) | |
Defined in Data.Singletons.Prelude.Ord type Apply (Compare_6989586621679628335Sym0 :: TyFun (Either a6989586621679086693 b6989586621679086694) (Either a6989586621679086693 b6989586621679086694 ~> Ordering) -> Type) (a6989586621679628333 :: Either a6989586621679086693 b6989586621679086694) = Compare_6989586621679628335Sym1 a6989586621679628333 | |
type Apply (ShowsPrec_6989586621680297161Sym1 a6989586621680297158 a6989586621679086693 b6989586621679086694 :: TyFun (Either a6989586621679086693 b6989586621679086694) (Symbol ~> Symbol) -> Type) (a6989586621680297159 :: Either a6989586621679086693 b6989586621679086694) | |
Defined in Data.Singletons.Prelude.Show type Apply (ShowsPrec_6989586621680297161Sym1 a6989586621680297158 a6989586621679086693 b6989586621679086694 :: TyFun (Either a6989586621679086693 b6989586621679086694) (Symbol ~> Symbol) -> Type) (a6989586621680297159 :: Either a6989586621679086693 b6989586621679086694) = ShowsPrec_6989586621680297161Sym2 a6989586621680297158 a6989586621680297159 | |
type Apply (TFHelper_6989586621679816229Sym0 :: TyFun (Either e6989586621679815301 (a6989586621679754553 ~> b6989586621679754554)) (Either e6989586621679815301 a6989586621679754553 ~> Either e6989586621679815301 b6989586621679754554) -> Type) (a6989586621679816227 :: Either e6989586621679815301 (a6989586621679754553 ~> b6989586621679754554)) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (TFHelper_6989586621679816229Sym0 :: TyFun (Either e6989586621679815301 (a6989586621679754553 ~> b6989586621679754554)) (Either e6989586621679815301 a6989586621679754553 ~> Either e6989586621679815301 b6989586621679754554) -> Type) (a6989586621679816227 :: Either e6989586621679815301 (a6989586621679754553 ~> b6989586621679754554)) = TFHelper_6989586621679816229Sym1 a6989586621679816227 | |
type Apply (TFHelper_6989586621679816329Sym0 :: TyFun (Either e6989586621679815318 a6989586621679754576) ((a6989586621679754576 ~> Either e6989586621679815318 b6989586621679754577) ~> Either e6989586621679815318 b6989586621679754577) -> Type) (a6989586621679816327 :: Either e6989586621679815318 a6989586621679754576) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (TFHelper_6989586621679816329Sym0 :: TyFun (Either e6989586621679815318 a6989586621679754576) ((a6989586621679754576 ~> Either e6989586621679815318 b6989586621679754577) ~> Either e6989586621679815318 b6989586621679754577) -> Type) (a6989586621679816327 :: Either e6989586621679815318 a6989586621679754576) = TFHelper_6989586621679816329Sym1 a6989586621679816327 b6989586621679754577 :: TyFun (a6989586621679754576 ~> Either e6989586621679815318 b6989586621679754577) (Either e6989586621679815318 b6989586621679754577) -> Type | |
type Apply (Fmap_6989586621679816011Sym0 :: TyFun (a6989586621679754547 ~> b6989586621679754548) (Either a6989586621679815289 a6989586621679754547 ~> Either a6989586621679815289 b6989586621679754548) -> Type) (a6989586621679816009 :: a6989586621679754547 ~> b6989586621679754548) | |
Defined in Data.Singletons.Prelude.Monad.Internal type Apply (Fmap_6989586621679816011Sym0 :: TyFun (a6989586621679754547 ~> b6989586621679754548) (Either a6989586621679815289 a6989586621679754547 ~> Either a6989586621679815289 b6989586621679754548) -> Type) (a6989586621679816009 :: a6989586621679754547 ~> b6989586621679754548) = Fmap_6989586621679816011Sym1 a6989586621679816009 a6989586621679815289 :: TyFun (Either a6989586621679815289 a6989586621679754547) (Either a6989586621679815289 b6989586621679754548) -> Type | |
type Apply (Either_Sym0 :: TyFun (a6989586621680400023 ~> c6989586621680400024) ((b6989586621680400025 ~> c6989586621680400024) ~> (Either a6989586621680400023 b6989586621680400025 ~> c6989586621680400024)) -> Type) (a6989586621680400059 :: a6989586621680400023 ~> c6989586621680400024) | |
Defined in Data.Singletons.Prelude.Either type Apply (Either_Sym0 :: TyFun (a6989586621680400023 ~> c6989586621680400024) ((b6989586621680400025 ~> c6989586621680400024) ~> (Either a6989586621680400023 b6989586621680400025 ~> c6989586621680400024)) -> Type) (a6989586621680400059 :: a6989586621680400023 ~> c6989586621680400024) = Either_Sym1 a6989586621680400059 b6989586621680400025 :: TyFun (b6989586621680400025 ~> c6989586621680400024) (Either a6989586621680400023 b6989586621680400025 ~> c6989586621680400024) -> Type | |
type Apply (Fmap_6989586621679816011Sym1 a6989586621679816009 a2 :: TyFun (Either a2 a1) (Either a2 b) -> Type) (a6989586621679816010 :: Either a2 a1) | |
type Apply (TFHelper_6989586621679816032Sym1 a6989586621679816030 a2 b :: TyFun (Either a2 b) (Either a2 a1) -> Type) (a6989586621679816031 :: Either a2 b) | |
type Apply (TFHelper_6989586621679816229Sym1 a6989586621679816227 :: TyFun (Either e a) (Either e b) -> Type) (a6989586621679816228 :: Either e a) | |
type Apply (Traverse_6989586621680634323Sym0 :: TyFun (a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (Either a6989586621680633746 a6989586621680628189 ~> f6989586621680628188 (Either a6989586621680633746 b6989586621680628190)) -> Type) (a6989586621680634321 :: a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) | |
Defined in Data.Singletons.Prelude.Traversable type Apply (Traverse_6989586621680634323Sym0 :: TyFun (a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) (Either a6989586621680633746 a6989586621680628189 ~> f6989586621680628188 (Either a6989586621680633746 b6989586621680628190)) -> Type) (a6989586621680634321 :: a6989586621680628189 ~> f6989586621680628188 b6989586621680628190) = Traverse_6989586621680634323Sym1 a6989586621680634321 a6989586621680633746 :: TyFun (Either a6989586621680633746 a6989586621680628189) (f6989586621680628188 (Either a6989586621680633746 b6989586621680628190)) -> Type | |
type Apply (TFHelper_6989586621679816329Sym1 a6989586621679816327 b :: TyFun (a ~> Either e b) (Either e b) -> Type) (a6989586621679816328 :: a ~> Either e b) | |
type Apply (Either_Sym1 a6989586621680400059 b6989586621680400025 :: TyFun (b6989586621680400025 ~> c6989586621680400024) (Either a6989586621680400023 b6989586621680400025 ~> c6989586621680400024) -> Type) (a6989586621680400060 :: b6989586621680400025 ~> c6989586621680400024) | |
Defined in Data.Singletons.Prelude.Either type Apply (Either_Sym1 a6989586621680400059 b6989586621680400025 :: TyFun (b6989586621680400025 ~> c6989586621680400024) (Either a6989586621680400023 b6989586621680400025 ~> c6989586621680400024) -> Type) (a6989586621680400060 :: b6989586621680400025 ~> c6989586621680400024) = Either_Sym2 a6989586621680400059 a6989586621680400060 | |
type Eval (Map f ('Right a3 :: Either a2 a1) :: Either a2 b -> Type) | |
type Eval (Map f ('Left x :: Either a2 a1) :: Either a2 b -> Type) | |
type Eval (Bimap f g ('Right y :: Either a b1) :: Either a' b2 -> Type) | |
type Eval (Bimap f g ('Left x :: Either a1 b) :: Either a2 b' -> Type) | |
data ByteString #
A space-efficient representation of a Word8
vector, supporting many
efficient operations.
A ByteString
contains 8-bit bytes, or by using the operations from
Data.ByteString.Char8 it can be interpreted as containing 8-bit
characters.
Instances
A space efficient, packed, unboxed Unicode text type.
Instances
A Map from keys k
to values a
.
The Semigroup
operation for Map
is union
, which prefers
values from the left operand. If m1
maps a key k
to a value
a1
, and m2
maps the same key to a different value a2
, then
their union m1 <> m2
maps k
to a1
.
Instances
Eq2 Map | Since: containers-0.5.9 |
Ord2 Map | Since: containers-0.5.9 |
Defined in Data.Map.Internal | |
Show2 Map | Since: containers-0.5.9 |
Ord k => TraverseMin k (Map k) | |
Defined in Control.Lens.Traversal Methods traverseMin :: IndexedTraversal' k (Map k v) v # | |
Ord k => TraverseMax k (Map k) | |
Defined in Control.Lens.Traversal Methods traverseMax :: IndexedTraversal' k (Map k v) v # | |
Functor (Map k) | |
Foldable (Map k) | Folds in order of increasing key. |
Defined in Data.Map.Internal Methods fold :: Monoid m => Map k m -> m # foldMap :: Monoid m => (a -> m) -> Map k a -> m # foldMap' :: Monoid m => (a -> m) -> Map k a -> m # foldr :: (a -> b -> b) -> b -> Map k a -> b # foldr' :: (a -> b -> b) -> b -> Map k a -> b # foldl :: (b -> a -> b) -> b -> Map k a -> b # foldl' :: (b -> a -> b) -> b -> Map k a -> b # foldr1 :: (a -> a -> a) -> Map k a -> a # foldl1 :: (a -> a -> a) -> Map k a -> a # elem :: Eq a => a -> Map k a -> Bool # maximum :: Ord a => Map k a -> a # minimum :: Ord a => Map k a -> a # | |
Traversable (Map k) | Traverses in order of increasing key. |
(Ord k, Arbitrary k) => Arbitrary1 (Map k) | |
Defined in Test.QuickCheck.Arbitrary | |
ToJSONKey k => ToJSON1 (Map k) | |
Defined in Data.Aeson.Types.ToJSON Methods liftToJSON :: (a -> Value) -> ([a] -> Value) -> Map k a -> Value # liftToJSONList :: (a -> Value) -> ([a] -> Value) -> [Map k a] -> Value # liftToEncoding :: (a -> Encoding) -> ([a] -> Encoding) -> Map k a -> Encoding # liftToEncodingList :: (a -> Encoding) -> ([a] -> Encoding) -> [Map k a] -> Encoding # | |
Eq k => Eq1 (Map k) | Since: containers-0.5.9 |
Ord k => Ord1 (Map k) | Since: containers-0.5.9 |
Defined in Data.Map.Internal | |
(Ord k, Read k) => Read1 (Map k) | Since: containers-0.5.9 |
Defined in Data.Map.Internal | |
Show k => Show1 (Map k) | Since: containers-0.5.9 |
(CanCastTo k1 k2, CanCastTo v1 v2) => CanCastTo (Map k1 v1 :: Type) (Map k2 v2 :: Type) Source # | |
Ord k => IsList (Map k v) | Since: containers-0.5.6.2 |
(Eq k, Eq a) => Eq (Map k a) | |
(Data k, Data a, Ord k) => Data (Map k a) | |
Defined in Data.Map.Internal Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Map k a -> c (Map k a) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Map k a) # toConstr :: Map k a -> Constr # dataTypeOf :: Map k a -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Map k a)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Map k a)) # gmapT :: (forall b. Data b => b -> b) -> Map k a -> Map k a # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Map k a -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Map k a -> r # gmapQ :: (forall d. Data d => d -> u) -> Map k a -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Map k a -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) # | |
(Ord k, Ord v) => Ord (Map k v) | |
(Ord k, Read k, Read e) => Read (Map k e) | |
(Show k, Show a) => Show (Map k a) | |
Ord k => Semigroup (Map k v) | |
Ord k => Monoid (Map k v) | |
(Ord k, Arbitrary k, Arbitrary v) => Arbitrary (Map k v) | |
(CoArbitrary k, CoArbitrary v) => CoArbitrary (Map k v) | |
Defined in Test.QuickCheck.Arbitrary Methods coarbitrary :: Map k v -> Gen b -> Gen b # | |
(ToJSON v, ToJSONKey k) => ToJSON (Map k v) | |
Defined in Data.Aeson.Types.ToJSON | |
(NFData k, NFData a) => NFData (Map k a) | |
Defined in Data.Map.Internal | |
Ord k => Ixed (Map k a) | |
Defined in Control.Lens.At | |
Ord k => At (Map k a) | |
Ord k => Wrapped (Map k a) | |
ToPairs (Map k v) | |
Container (Map k v) | |
Defined in Universum.Container.Class Methods toList :: Map k v -> [Element (Map k v)] # foldr :: (Element (Map k v) -> b -> b) -> b -> Map k v -> b # foldl :: (b -> Element (Map k v) -> b) -> b -> Map k v -> b # foldl' :: (b -> Element (Map k v) -> b) -> b -> Map k v -> b # elem :: Element (Map k v) -> Map k v -> Bool # maximum :: Map k v -> Element (Map k v) # minimum :: Map k v -> Element (Map k v) # foldMap :: Monoid m => (Element (Map k v) -> m) -> Map k v -> m # fold :: Map k v -> Element (Map k v) # foldr' :: (Element (Map k v) -> b -> b) -> b -> Map k v -> b # foldr1 :: (Element (Map k v) -> Element (Map k v) -> Element (Map k v)) -> Map k v -> Element (Map k v) # foldl1 :: (Element (Map k v) -> Element (Map k v) -> Element (Map k v)) -> Map k v -> Element (Map k v) # notElem :: Element (Map k v) -> Map k v -> Bool # all :: (Element (Map k v) -> Bool) -> Map k v -> Bool # any :: (Element (Map k v) -> Bool) -> Map k v -> Bool # find :: (Element (Map k v) -> Bool) -> Map k v -> Maybe (Element (Map k v)) # | |
One (Map k v) | |
(PolyCTypeHasDocC '[k], PolyTypeHasDocC '[v], Ord k) => TypeHasDoc (Map k v) | |
Defined in Michelson.Typed.Haskell.Doc Associated Types type TypeDocFieldDescriptions (Map k v) :: FieldDescriptions # Methods typeDocName :: Proxy (Map k v) -> Text # typeDocMdDescription :: Markdown # typeDocMdReference :: Proxy (Map k v) -> WithinParens -> Markdown # typeDocDependencies :: Proxy (Map k v) -> [SomeDocDefinitionItem] # typeDocHaskellRep :: TypeDocHaskellRep (Map k v) # typeDocMichelsonRep :: TypeDocMichelsonRep (Map k v) # | |
(Comparable (ToT k), Ord k, IsoValue k, IsoValue v) => IsoValue (Map k v) | |
(HasAnnotation k, HasAnnotation v) => HasAnnotation (Map k v) Source # | |
Defined in Lorentz.Annotation Methods getAnnotation :: FollowEntrypointFlag -> Notes (ToT (Map k v)) Source # | |
NiceComparable k => GetOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
NiceComparable k => UpdOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
SizeOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
NiceComparable k => IterOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs (Map k v) Source # | |
NiceComparable k => MapOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic Associated Types type MapOpInpHs (Map k v) Source # | |
NiceComparable k => MemOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (Map k v) Source # | |
(t ~ Map k' a', Ord k) => Rewrapped (Map k a) t | Use |
Defined in Control.Lens.Wrapped | |
(key ~ key', value ~ value', NiceComparable key) => StoreHasSubmap (Map key' value') name key value Source # |
|
Defined in Lorentz.StoreClass Methods storeSubmapOps :: StoreSubmapOps (Map key' value') name key value Source # | |
type Item (Map k v) | |
Defined in Data.Map.Internal | |
type Index (Map k a) | |
Defined in Control.Lens.At | |
type IxValue (Map k a) | |
Defined in Control.Lens.At | |
type Unwrapped (Map k a) | |
Defined in Control.Lens.Wrapped | |
type Val (Map k v) | |
Defined in Universum.Container.Class | |
type Key (Map k v) | |
Defined in Universum.Container.Class | |
type Element (Map k v) | |
Defined in Universum.Container.Class | |
type OneItem (Map k v) | |
Defined in Universum.Container.Class | |
type TypeDocFieldDescriptions (Map k v) | |
Defined in Michelson.Typed.Haskell.Doc | |
type ToT (Map k v) | |
Defined in Michelson.Typed.Haskell.Value | |
type GetOpKeyHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
type GetOpValHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
type UpdOpKeyHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
type UpdOpParamsHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
type IterOpElHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
type MapOpInpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
type MapOpResHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
type MemOpKeyHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic |
Proxy
is a type that holds no data, but has a phantom parameter of
arbitrary type (or even kind). Its use is to provide type information, even
though there is no value available of that type (or it may be too costly to
create one).
Historically,
is a safer alternative to the
Proxy
:: Proxy
a
idiom.undefined
:: a
>>>
Proxy :: Proxy (Void, Int -> Int)
Proxy
Proxy can even hold types of higher kinds,
>>>
Proxy :: Proxy Either
Proxy
>>>
Proxy :: Proxy Functor
Proxy
>>>
Proxy :: Proxy complicatedStructure
Proxy
Constructors
Proxy |
Instances
Generic1 (Proxy :: k -> Type) | Since: base-4.6.0.0 |
Monad (Proxy :: Type -> Type) | Since: base-4.7.0.0 |
Functor (Proxy :: Type -> Type) | Since: base-4.7.0.0 |
Applicative (Proxy :: Type -> Type) | Since: base-4.7.0.0 |
Foldable (Proxy :: Type -> Type) | Since: base-4.7.0.0 |
Defined in Data.Foldable Methods fold :: Monoid m => Proxy m -> m # foldMap :: Monoid m => (a -> m) -> Proxy a -> m # foldMap' :: Monoid m => (a -> m) -> Proxy a -> m # foldr :: (a -> b -> b) -> b -> Proxy a -> b # foldr' :: (a -> b -> b) -> b -> Proxy a -> b # foldl :: (b -> a -> b) -> b -> Proxy a -> b # foldl' :: (b -> a -> b) -> b -> Proxy a -> b # foldr1 :: (a -> a -> a) -> Proxy a -> a # foldl1 :: (a -> a -> a) -> Proxy a -> a # elem :: Eq a => a -> Proxy a -> Bool # maximum :: Ord a => Proxy a -> a # minimum :: Ord a => Proxy a -> a # | |
Traversable (Proxy :: Type -> Type) | Since: base-4.7.0.0 |
Contravariant (Proxy :: Type -> Type) | |
Representable (Proxy :: Type -> Type) | |
ToJSON1 (Proxy :: Type -> Type) | |
Defined in Data.Aeson.Types.ToJSON Methods liftToJSON :: (a -> Value) -> ([a] -> Value) -> Proxy a -> Value # liftToJSONList :: (a -> Value) -> ([a] -> Value) -> [Proxy a] -> Value # liftToEncoding :: (a -> Encoding) -> ([a] -> Encoding) -> Proxy a -> Encoding # liftToEncodingList :: (a -> Encoding) -> ([a] -> Encoding) -> [Proxy a] -> Encoding # | |
Alternative (Proxy :: Type -> Type) | Since: base-4.9.0.0 |
MonadPlus (Proxy :: Type -> Type) | Since: base-4.9.0.0 |
Eq1 (Proxy :: Type -> Type) | Since: base-4.9.0.0 |
Ord1 (Proxy :: Type -> Type) | Since: base-4.9.0.0 |
Defined in Data.Functor.Classes | |
Read1 (Proxy :: Type -> Type) | Since: base-4.9.0.0 |
Defined in Data.Functor.Classes | |
Show1 (Proxy :: Type -> Type) | Since: base-4.9.0.0 |
NFData1 (Proxy :: Type -> Type) | Since: deepseq-1.4.3.0 |
Defined in Control.DeepSeq | |
Hashable1 (Proxy :: Type -> Type) | |
Defined in Data.Hashable.Class | |
Bounded (Proxy t) | Since: base-4.7.0.0 |
Enum (Proxy s) | Since: base-4.7.0.0 |
Eq (Proxy s) | Since: base-4.7.0.0 |
Ord (Proxy s) | Since: base-4.7.0.0 |
Read (Proxy t) | Since: base-4.7.0.0 |
Show (Proxy s) | Since: base-4.7.0.0 |
Ix (Proxy s) | Since: base-4.7.0.0 |
Defined in Data.Proxy | |
Generic (Proxy t) | Since: base-4.6.0.0 |
Semigroup (Proxy s) | Since: base-4.9.0.0 |
Monoid (Proxy s) | Since: base-4.7.0.0 |
Hashable (Proxy a) | |
Defined in Data.Hashable.Class | |
ToJSON (Proxy a) | |
Defined in Data.Aeson.Types.ToJSON | |
NFData (Proxy a) | Since: deepseq-1.4.0.0 |
Defined in Control.DeepSeq | |
type Rep1 (Proxy :: k -> Type) | |
type Rep (Proxy :: Type -> Type) | |
type Rep (Proxy t) | |
withDict :: HasDict c e => e -> (c => r) -> r #
From a Dict
, takes a value in an environment where the instance
witnessed by the Dict
is in scope, and evaluates it.
Essentially a deconstruction of a Dict
into its continuation-style
form.
Can also be used to deconstruct an entailment, a
, using a context :-
ba
.
withDict ::Dict
c -> (c => r) -> r withDict :: a => (a:-
c) -> (c => r) -> r
A set of values a
.
Instances
Foldable Set | Folds in order of increasing key. |
Defined in Data.Set.Internal Methods fold :: Monoid m => Set m -> m # foldMap :: Monoid m => (a -> m) -> Set a -> m # foldMap' :: Monoid m => (a -> m) -> Set a -> m # foldr :: (a -> b -> b) -> b -> Set a -> b # foldr' :: (a -> b -> b) -> b -> Set a -> b # foldl :: (b -> a -> b) -> b -> Set a -> b # foldl' :: (b -> a -> b) -> b -> Set a -> b # foldr1 :: (a -> a -> a) -> Set a -> a # foldl1 :: (a -> a -> a) -> Set a -> a # elem :: Eq a => a -> Set a -> Bool # maximum :: Ord a => Set a -> a # | |
ToJSON1 Set | |
Defined in Data.Aeson.Types.ToJSON Methods liftToJSON :: (a -> Value) -> ([a] -> Value) -> Set a -> Value # liftToJSONList :: (a -> Value) -> ([a] -> Value) -> [Set a] -> Value # liftToEncoding :: (a -> Encoding) -> ([a] -> Encoding) -> Set a -> Encoding # liftToEncodingList :: (a -> Encoding) -> ([a] -> Encoding) -> [Set a] -> Encoding # | |
Eq1 Set | Since: containers-0.5.9 |
Ord1 Set | Since: containers-0.5.9 |
Defined in Data.Set.Internal | |
Show1 Set | Since: containers-0.5.9 |
Ord a => IsList (Set a) | Since: containers-0.5.6.2 |
Eq a => Eq (Set a) | |
(Data a, Ord a) => Data (Set a) | |
Defined in Data.Set.Internal Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Set a -> c (Set a) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Set a) # dataTypeOf :: Set a -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Set a)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Set a)) # gmapT :: (forall b. Data b => b -> b) -> Set a -> Set a # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Set a -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Set a -> r # gmapQ :: (forall d. Data d => d -> u) -> Set a -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Set a -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) # | |
Ord a => Ord (Set a) | |
(Read a, Ord a) => Read (Set a) | |
Show a => Show (Set a) | |
Ord a => Semigroup (Set a) | Since: containers-0.5.7 |
Ord a => Monoid (Set a) | |
(Ord a, Arbitrary a) => Arbitrary (Set a) | |
CoArbitrary a => CoArbitrary (Set a) | |
Defined in Test.QuickCheck.Arbitrary Methods coarbitrary :: Set a -> Gen b -> Gen b # | |
ToJSON a => ToJSON (Set a) | |
Defined in Data.Aeson.Types.ToJSON | |
NFData a => NFData (Set a) | |
Defined in Data.Set.Internal | |
Ord a => Contains (Set a) | |
Ord k => Ixed (Set k) | |
Defined in Control.Lens.At | |
Ord k => At (Set k) | |
Ord a => Wrapped (Set a) | |
Ord v => Container (Set v) | |
Defined in Universum.Container.Class Methods toList :: Set v -> [Element (Set v)] # foldr :: (Element (Set v) -> b -> b) -> b -> Set v -> b # foldl :: (b -> Element (Set v) -> b) -> b -> Set v -> b # foldl' :: (b -> Element (Set v) -> b) -> b -> Set v -> b # elem :: Element (Set v) -> Set v -> Bool # maximum :: Set v -> Element (Set v) # minimum :: Set v -> Element (Set v) # foldMap :: Monoid m => (Element (Set v) -> m) -> Set v -> m # fold :: Set v -> Element (Set v) # foldr' :: (Element (Set v) -> b -> b) -> b -> Set v -> b # foldr1 :: (Element (Set v) -> Element (Set v) -> Element (Set v)) -> Set v -> Element (Set v) # foldl1 :: (Element (Set v) -> Element (Set v) -> Element (Set v)) -> Set v -> Element (Set v) # notElem :: Element (Set v) -> Set v -> Bool # all :: (Element (Set v) -> Bool) -> Set v -> Bool # any :: (Element (Set v) -> Bool) -> Set v -> Bool # find :: (Element (Set v) -> Bool) -> Set v -> Maybe (Element (Set v)) # | |
One (Set v) | |
PolyCTypeHasDocC '[a] => TypeHasDoc (Set a) | |
Defined in Michelson.Typed.Haskell.Doc Associated Types type TypeDocFieldDescriptions (Set a) :: FieldDescriptions # Methods typeDocName :: Proxy (Set a) -> Text # typeDocMdDescription :: Markdown # typeDocMdReference :: Proxy (Set a) -> WithinParens -> Markdown # typeDocDependencies :: Proxy (Set a) -> [SomeDocDefinitionItem] # typeDocHaskellRep :: TypeDocHaskellRep (Set a) # typeDocMichelsonRep :: TypeDocMichelsonRep (Set a) # | |
(Comparable (ToT c), Ord c, IsoValue c) => IsoValue (Set c) | |
KnownIsoT v => HasAnnotation (Set v) Source # | |
Defined in Lorentz.Annotation Methods getAnnotation :: FollowEntrypointFlag -> Notes (ToT (Set v)) Source # | |
NiceComparable a => UpdOpHs (Set a) Source # | |
Defined in Lorentz.Polymorphic | |
SizeOpHs (Set a) Source # | |
Defined in Lorentz.Polymorphic | |
NiceComparable e => IterOpHs (Set e) Source # | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs (Set e) Source # | |
NiceComparable e => MemOpHs (Set e) Source # | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (Set e) Source # | |
(t ~ Set a', Ord a) => Rewrapped (Set a) t | Use |
Defined in Control.Lens.Wrapped | |
CanCastTo k1 k2 => CanCastTo (Set k1 :: Type) (Set k2 :: Type) Source # | |
type Item (Set a) | |
Defined in Data.Set.Internal | |
type Index (Set a) | |
Defined in Control.Lens.At | |
type IxValue (Set k) | |
Defined in Control.Lens.At | |
type Unwrapped (Set a) | |
Defined in Control.Lens.Wrapped | |
type Element (Set v) | |
Defined in Universum.Container.Class | |
type OneItem (Set v) | |
Defined in Universum.Container.Class | |
type TypeDocFieldDescriptions (Set a) | |
Defined in Michelson.Typed.Haskell.Doc | |
type ToT (Set c) | |
Defined in Michelson.Typed.Haskell.Value | |
type UpdOpKeyHs (Set a) Source # | |
Defined in Lorentz.Polymorphic | |
type UpdOpParamsHs (Set a) Source # | |
Defined in Lorentz.Polymorphic | |
type IterOpElHs (Set e) Source # | |
Defined in Lorentz.Polymorphic | |
type MemOpKeyHs (Set e) Source # | |
Defined in Lorentz.Polymorphic |
A class for types with a default value.
Minimal complete definition
Nothing
Instances
arg :: forall (name :: Symbol) a. Name name -> (name :! a) -> a #
arg
unwraps a named parameter with the specified name. One way to use it is
to match on arguments with -XViewPatterns
:
fn (arg #t -> t) (arg #f -> f) = ...
This way, the names of parameters can be inferred from the patterns: no type
signature for fn
is required. In case a type signature for fn
is
provided, the parameters must come in the same order:
fn :: "t" :! Integer -> "f" :! Integer -> ... fn (arg #t -> t) (arg #f -> f) = ... -- ok fn (arg #f -> f) (arg #t -> t) = ... -- does not typecheck
type (:!) (name :: Symbol) a = NamedF Identity a name #
Infix notation for the type of a named parameter.
type (:?) (name :: Symbol) a = NamedF Maybe a name #
Infix notation for the type of an optional named parameter.
type ($) (f :: k1 -> k) (a :: k1) = f a infixr 2 #
Infix application.
f :: Either String $ Maybe Int = f :: Either String (Maybe Int)
undefined :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => a #
undefined
that leaves a warning in code on every usage.
error :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => Text -> a #
data Rec (a :: u -> Type) (b :: [u]) where #
A record is parameterized by a universe u
, an interpretation f
and a
list of rows rs
. The labels or indices of the record are given by
inhabitants of the kind u
; the type of values at any label r :: u
is
given by its interpretation f r :: *
.
Constructors
RNil :: forall u (a :: u -> Type). Rec a ('[] :: [u]) | |
(:&) :: forall u (a :: u -> Type) (r :: u) (rs :: [u]). !(a r) -> !(Rec a rs) -> Rec a (r ': rs) infixr 7 |
Instances
RecSubset (Rec :: (k -> Type) -> [k] -> Type) ('[] :: [k]) (ss :: [k]) ('[] :: [Nat]) | |
Defined in Data.Vinyl.Lens Associated Types type RecSubsetFCtx Rec f # Methods rsubsetC :: forall g (f :: k0 -> Type). (Functor g, RecSubsetFCtx Rec f) => (Rec f '[] -> g (Rec f '[])) -> Rec f ss -> g (Rec f ss) # rcastC :: forall (f :: k0 -> Type). RecSubsetFCtx Rec f => Rec f ss -> Rec f '[] # rreplaceC :: forall (f :: k0 -> Type). RecSubsetFCtx Rec f => Rec f '[] -> Rec f ss -> Rec f ss # | |
(RElem r ss i, RSubset rs ss is) => RecSubset (Rec :: (k -> Type) -> [k] -> Type) (r ': rs :: [k]) (ss :: [k]) (i ': is) | |
Defined in Data.Vinyl.Lens Associated Types type RecSubsetFCtx Rec f # Methods rsubsetC :: forall g (f :: k0 -> Type). (Functor g, RecSubsetFCtx Rec f) => (Rec f (r ': rs) -> g (Rec f (r ': rs))) -> Rec f ss -> g (Rec f ss) # rcastC :: forall (f :: k0 -> Type). RecSubsetFCtx Rec f => Rec f ss -> Rec f (r ': rs) # rreplaceC :: forall (f :: k0 -> Type). RecSubsetFCtx Rec f => Rec f (r ': rs) -> Rec f ss -> Rec f ss # | |
RecElem (Rec :: (a -> Type) -> [a] -> Type) (r :: a) (r' :: a) (r ': rs :: [a]) (r' ': rs :: [a]) 'Z | |
Defined in Data.Vinyl.Lens Associated Types type RecElemFCtx Rec f # | |
(RIndex r (s ': rs) ~ 'S i, RecElem (Rec :: (a -> Type) -> [a] -> Type) r r' rs rs' i) => RecElem (Rec :: (a -> Type) -> [a] -> Type) (r :: a) (r' :: a) (s ': rs :: [a]) (s ': rs' :: [a]) ('S i) | |
Defined in Data.Vinyl.Lens Associated Types type RecElemFCtx Rec f # | |
TestCoercion f => TestCoercion (Rec f :: [u] -> Type) | |
Defined in Data.Vinyl.Core | |
TestEquality f => TestEquality (Rec f :: [u] -> Type) | |
Defined in Data.Vinyl.Core | |
Eq (Rec f ('[] :: [u])) | |
(Eq (f r), Eq (Rec f rs)) => Eq (Rec f (r ': rs)) | |
Ord (Rec f ('[] :: [u])) | |
(Ord (f r), Ord (Rec f rs)) => Ord (Rec f (r ': rs)) | |
Defined in Data.Vinyl.Core Methods compare :: Rec f (r ': rs) -> Rec f (r ': rs) -> Ordering # (<) :: Rec f (r ': rs) -> Rec f (r ': rs) -> Bool # (<=) :: Rec f (r ': rs) -> Rec f (r ': rs) -> Bool # (>) :: Rec f (r ': rs) -> Rec f (r ': rs) -> Bool # (>=) :: Rec f (r ': rs) -> Rec f (r ': rs) -> Bool # max :: Rec f (r ': rs) -> Rec f (r ': rs) -> Rec f (r ': rs) # min :: Rec f (r ': rs) -> Rec f (r ': rs) -> Rec f (r ': rs) # | |
(RMap rs, ReifyConstraint Show f rs, RecordToList rs) => Show (Rec f rs) | Records may be shown insofar as their points may be shown.
|
Generic (Rec f ('[] :: [u])) | |
Generic (Rec f rs) => Generic (Rec f (r ': rs)) | |
Semigroup (Rec f ('[] :: [u])) | |
(Semigroup (f r), Semigroup (Rec f rs)) => Semigroup (Rec f (r ': rs)) | |
Monoid (Rec f ('[] :: [u])) | |
(Monoid (f r), Monoid (Rec f rs)) => Monoid (Rec f (r ': rs)) | |
Storable (Rec f ('[] :: [u])) | |
Defined in Data.Vinyl.Core | |
(Storable (f r), Storable (Rec f rs)) => Storable (Rec f (r ': rs)) | |
Defined in Data.Vinyl.Core Methods sizeOf :: Rec f (r ': rs) -> Int # alignment :: Rec f (r ': rs) -> Int # peekElemOff :: Ptr (Rec f (r ': rs)) -> Int -> IO (Rec f (r ': rs)) # pokeElemOff :: Ptr (Rec f (r ': rs)) -> Int -> Rec f (r ': rs) -> IO () # peekByteOff :: Ptr b -> Int -> IO (Rec f (r ': rs)) # pokeByteOff :: Ptr b -> Int -> Rec f (r ': rs) -> IO () # | |
type RecSubsetFCtx (Rec :: (k -> Type) -> [k] -> Type) (f :: k -> Type) | |
Defined in Data.Vinyl.Lens | |
type RecSubsetFCtx (Rec :: (k -> Type) -> [k] -> Type) (f :: k -> Type) | |
Defined in Data.Vinyl.Lens | |
type RecElemFCtx (Rec :: (a -> Type) -> [a] -> Type) (f :: a -> Type) | |
Defined in Data.Vinyl.Lens | |
type RecElemFCtx (Rec :: (a -> Type) -> [a] -> Type) (f :: a -> Type) | |
Defined in Data.Vinyl.Lens | |
type Rep (Rec f (r ': rs)) | |
Defined in Data.Vinyl.Core type Rep (Rec f (r ': rs)) = C1 ('MetaCons ":&" ('InfixI 'RightAssociative 7) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f r)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rep (Rec f rs))) | |
type Rep (Rec f ('[] :: [u])) | |
Defined in Data.Vinyl.Core | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17, f x18, f x19, f x20, f x21, f x22, f x23, f x24, f x25) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17, f x18, f x19, f x20, f x21, f x22, f x23, f x24) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17, f x18, f x19, f x20, f x21, f x22, f x23) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17, f x18, f x19, f x20, f x21, f x22) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17, f x18, f x19, f x20, f x21) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17, f x18, f x19, f x20) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17, f x18, f x19) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17, f x18) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16, f x17) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15, f x16) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14, f x15) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13, f x14) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12, f x13) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11, f x12) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10, f x11) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9, f x10) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8, x9]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8, f x9) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7, x8]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7, f x8) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6, x7]) = (f x1, f x2, f x3, f x4, f x5, f x6, f x7) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5, x6]) = (f x1, f x2, f x3, f x4, f x5, f x6) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5]) = (f x1, f x2, f x3, f x4, f x5) | |
type IsoRecTuple (Rec f '[x1, x2, x3, x4]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3, x4]) = (f x1, f x2, f x3, f x4) | |
type IsoRecTuple (Rec f '[x1, x2, x3]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2, x3]) = (f x1, f x2, f x3) | |
type IsoRecTuple (Rec f '[x1, x2]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x1, x2]) = (f x1, f x2) | |
type IsoRecTuple (Rec f '[x]) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f '[x]) = f x | |
type IsoRecTuple (Rec f ('[] :: [u])) | |
Defined in Util.TypeTuple.Instances type IsoRecTuple (Rec f ('[] :: [u])) = () |
concreteTypeDocHaskellRep :: (Typeable a, GenericIsoValue a, GTypeHasDoc (Rep a), HaveCommonTypeCtor b a) => TypeDocHaskellRep b #
concreteTypeDocHaskellRepUnsafe :: (Typeable a, GenericIsoValue a, GTypeHasDoc (Rep a)) => TypeDocHaskellRep b #
concreteTypeDocMichelsonRep :: forall k a (b :: k). (Typeable a, SingI (ToT a), HaveCommonTypeCtor b a) => TypeDocMichelsonRep b #
concreteTypeDocMichelsonRepUnsafe :: forall k a (b :: k). (Typeable a, SingI (ToT a)) => TypeDocMichelsonRep b #
dTypeDep :: TypeHasDoc t => SomeDocDefinitionItem #
genericTypeDocDependencies :: (Generic a, GTypeHasDoc (Rep a)) => Proxy a -> [SomeDocDefinitionItem] #
haskellAddNewtypeField :: Text -> TypeDocHaskellRep a -> TypeDocHaskellRep a #
haskellRepNoFields :: TypeDocHaskellRep a -> TypeDocHaskellRep a #
haskellRepStripFieldPrefix :: HasCallStack => TypeDocHaskellRep a -> TypeDocHaskellRep a #
homomorphicTypeDocHaskellRep :: (Generic a, GTypeHasDoc (Rep a)) => TypeDocHaskellRep a #
homomorphicTypeDocMdReference :: (Typeable t, TypeHasDoc t, IsHomomorphic t) => Proxy t -> WithinParens -> Markdown #
homomorphicTypeDocMichelsonRep :: SingI (ToT a) => TypeDocMichelsonRep a #
poly1TypeDocMdReference :: forall (t :: Type -> Type) r a. (r ~ t a, Typeable t, Each '[TypeHasDoc] '[r, a], IsHomomorphic t) => Proxy r -> WithinParens -> Markdown #
poly2TypeDocMdReference :: forall (t :: Type -> Type -> Type) r a b. (r ~ t a b, Typeable t, Each '[TypeHasDoc] '[r, a, b], IsHomomorphic t) => Proxy r -> WithinParens -> Markdown #
coerceContractRef :: ToT a ~ ToT b => ContractRef a -> ContractRef b #
Constructors
DType :: forall a. TypeHasDoc a => Proxy a -> DType |
Instances
Eq DType | |
Ord DType | |
Show DType | |
DocItem DType | |
Defined in Michelson.Typed.Haskell.Doc Associated Types type DocItemPlacement DType :: DocItemPlacementKind # type DocItemReferenced DType :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DType -> DocItemRef (DocItemPlacement DType) (DocItemReferenced DType) # docItemToMarkdown :: HeaderLevel -> DType -> Markdown # docItemToToc :: HeaderLevel -> DType -> Markdown # docItemDependencies :: DType -> [SomeDocDefinitionItem] # docItemsOrder :: [DType] -> [DType] # | |
type DocItemPlacement DType | |
Defined in Michelson.Typed.Haskell.Doc | |
type DocItemReferenced DType | |
Defined in Michelson.Typed.Haskell.Doc |
class HaveCommonTypeCtor (a :: k) (b :: k1) #
Instances
HaveCommonTypeCtor (a :: k) (a :: k) | |
Defined in Michelson.Typed.Haskell.Doc | |
HaveCommonTypeCtor ac bc => HaveCommonTypeCtor (ac a :: k2) (bc b :: k4) | |
Defined in Michelson.Typed.Haskell.Doc |
class IsHomomorphic (a :: k) #
Instances
IsHomomorphic (a :: k) | |
Defined in Michelson.Typed.Haskell.Doc | |
(TypeError ('Text "Type is not homomorphic: " :<>: 'ShowType (a b)) :: Constraint) => IsHomomorphic (a b :: k2) | |
Defined in Michelson.Typed.Haskell.Doc |
data SomeTypeWithDoc where #
Constructors
SomeTypeWithDoc :: forall td. TypeHasDoc td => Proxy td -> SomeTypeWithDoc |
type family TypeDocFieldDescriptions a :: FieldDescriptions #
Instances
class (Typeable a, SingI (TypeDocFieldDescriptions a), FieldDescriptionsValid (TypeDocFieldDescriptions a) a) => TypeHasDoc a where #
Minimal complete definition
Associated Types
type TypeDocFieldDescriptions a :: FieldDescriptions #
Methods
typeDocName :: Proxy a -> Text #
typeDocMdDescription :: Markdown #
typeDocMdReference :: Proxy a -> WithinParens -> Markdown #
typeDocDependencies :: Proxy a -> [SomeDocDefinitionItem] #
typeDocHaskellRep :: TypeDocHaskellRep a #
typeDocMichelsonRep :: TypeDocMichelsonRep a #
Instances
type ConstructorFieldTypes dt = GFieldTypes (Rep dt) #
type InstrConstructC dt = (GenericIsoValue dt, GInstrConstruct (Rep dt)) #
Instances
data ContractRef arg #
Constructors
ContractRef | |
Fields
|
Instances
type EntrypointCall param arg = EntrypointCallT (ToT param) (ToT arg) #
class WellTypedToT a => IsoValue a where #
Minimal complete definition
Nothing
Instances
Instances
type SomeEntrypointCall arg = SomeEntrypointCallT (ToT arg) #
type WellTypedIsoValue a = (WellTyped (ToT a), IsoValue a) #
Instances
Eq EpName | |
Ord EpName | |
Show EpName | |
Generic EpName | |
Arbitrary FieldAnn => Arbitrary EpName | |
ToJSON EpName | |
Defined in Michelson.Untyped.Entrypoints | |
FromJSON EpName | |
NFData EpName | |
Defined in Michelson.Untyped.Entrypoints | |
Buildable EpName | |
Defined in Michelson.Untyped.Entrypoints | |
HasCLReader EpName | |
Defined in Michelson.Untyped.Entrypoints | |
type Rep EpName | |
Defined in Michelson.Untyped.Entrypoints |
data Label (name :: Symbol) where #
Constructors
Label :: forall (name :: Symbol). KnownSymbol name => Label name |
Instances
(KnownSymbol name, s ~ name) => IsLabel s (Label name) | |
Defined in Util.Label | |
Eq (Label name) | |
Show (Label name) | |
Buildable (Label name) | |
Defined in Util.Label |
newtype ShouldHaveEntrypoints a Source #
A special type which wraps over a primitive type and states that it has entrypoints (one).
Assuming that any type can have entrypoints makes use of Lorentz entrypoints too annoying, so for declaring entrypoints for not sum types we require an explicit wrapper.
Constructors
ShouldHaveEntrypoints | |
Fields
|
Instances
Instances
Instances
Eq ChainId | |
Show ChainId | |
Generic ChainId | |
Arbitrary ChainId | |
ToJSON ChainId | |
Defined in Tezos.Core | |
FromJSON ChainId | |
NFData ChainId | |
Defined in Tezos.Core | |
Buildable ChainId | |
Defined in Tezos.Core | |
IsoValue ChainId | |
type Rep ChainId | |
Defined in Tezos.Core type Rep ChainId = D1 ('MetaData "ChainId" "Tezos.Core" "morley-1.6.0-inplace" 'True) (C1 ('MetaCons "ChainIdUnsafe" 'PrefixI 'True) (S1 ('MetaSel ('Just "unChainId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ByteString))) | |
type ToT ChainId | |
Defined in Michelson.Typed.Haskell.Value |
Constructors
EpAddress | |
Fields
|
Instances
Instances
Instances
Instances
Instances
Instances
Instances
data SomeDocItem where #
Constructors
SomeDocItem :: forall d. DocItem d => d -> SomeDocItem |
Instances
Show SomeDocItem | |
Defined in Michelson.Doc Methods showsPrec :: Int -> SomeDocItem -> ShowS # show :: SomeDocItem -> String # showList :: [SomeDocItem] -> ShowS # | |
Show DocGrouping | |
Defined in Michelson.Doc Methods showsPrec :: Int -> DocGrouping -> ShowS # show :: DocGrouping -> String # showList :: [DocGrouping] -> ShowS # | |
NFData SomeDocItem | |
Defined in Michelson.Doc Methods rnf :: SomeDocItem -> () # |
type DocGrouping = SubDoc -> SomeDocItem #
mt :: QuasiQuoter #
docDefinitionRef :: (DocItem d, DocItemPlacement d ~ 'DocItemInDefinitions) => Markdown -> d -> Markdown #
docItemPosition :: DocItem d => DocItemPos #
mdTocFromRef :: (DocItem d, DocItemReferenced d ~ 'True) => HeaderLevel -> Markdown -> d -> Markdown #
mkDGitRevision :: ExpQ #
subDocToMarkdown :: HeaderLevel -> SubDoc -> Markdown #
data ContractDoc #
Constructors
ContractDoc | |
Fields
|
Instances
Semigroup ContractDoc | |
Defined in Michelson.Doc Methods (<>) :: ContractDoc -> ContractDoc -> ContractDoc # sconcat :: NonEmpty ContractDoc -> ContractDoc # stimes :: Integral b => b -> ContractDoc -> ContractDoc # | |
Monoid ContractDoc | |
Defined in Michelson.Doc Methods mempty :: ContractDoc # mappend :: ContractDoc -> ContractDoc -> ContractDoc # mconcat :: [ContractDoc] -> ContractDoc # |
Constructors
DAnchor Anchor |
Instances
DocItem DAnchor | |
Defined in Michelson.Doc Associated Types type DocItemPlacement DAnchor :: DocItemPlacementKind # type DocItemReferenced DAnchor :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DAnchor -> DocItemRef (DocItemPlacement DAnchor) (DocItemReferenced DAnchor) # docItemToMarkdown :: HeaderLevel -> DAnchor -> Markdown # docItemToToc :: HeaderLevel -> DAnchor -> Markdown # docItemDependencies :: DAnchor -> [SomeDocDefinitionItem] # docItemsOrder :: [DAnchor] -> [DAnchor] # | |
type DocItemPlacement DAnchor | |
Defined in Michelson.Doc | |
type DocItemReferenced DAnchor | |
Defined in Michelson.Doc |
Instances
DocItem DComment | |
Defined in Michelson.Doc Associated Types type DocItemPlacement DComment :: DocItemPlacementKind # type DocItemReferenced DComment :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DComment -> DocItemRef (DocItemPlacement DComment) (DocItemReferenced DComment) # docItemToMarkdown :: HeaderLevel -> DComment -> Markdown # docItemToToc :: HeaderLevel -> DComment -> Markdown # docItemDependencies :: DComment -> [SomeDocDefinitionItem] # docItemsOrder :: [DComment] -> [DComment] # | |
type DocItemPlacement DComment | |
Defined in Michelson.Doc | |
type DocItemReferenced DComment | |
Defined in Michelson.Doc |
data DDescription #
Constructors
DDescription Markdown |
Instances
DocItem DDescription | |
Defined in Michelson.Doc Associated Types type DocItemPlacement DDescription :: DocItemPlacementKind # type DocItemReferenced DDescription :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DDescription -> DocItemRef (DocItemPlacement DDescription) (DocItemReferenced DDescription) # docItemToMarkdown :: HeaderLevel -> DDescription -> Markdown # docItemToToc :: HeaderLevel -> DDescription -> Markdown # docItemDependencies :: DDescription -> [SomeDocDefinitionItem] # docItemsOrder :: [DDescription] -> [DDescription] # | |
type DocItemPlacement DDescription | |
Defined in Michelson.Doc | |
type DocItemReferenced DDescription | |
Defined in Michelson.Doc |
data DGitRevision #
Constructors
DGitRevisionKnown DGitRevisionInfo | |
DGitRevisionUnknown |
Instances
DocItem DGitRevision | |
Defined in Michelson.Doc Associated Types type DocItemPlacement DGitRevision :: DocItemPlacementKind # type DocItemReferenced DGitRevision :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DGitRevision -> DocItemRef (DocItemPlacement DGitRevision) (DocItemReferenced DGitRevision) # docItemToMarkdown :: HeaderLevel -> DGitRevision -> Markdown # docItemToToc :: HeaderLevel -> DGitRevision -> Markdown # docItemDependencies :: DGitRevision -> [SomeDocDefinitionItem] # docItemsOrder :: [DGitRevision] -> [DGitRevision] # | |
type DocItemPlacement DGitRevision | |
Defined in Michelson.Doc | |
type DocItemReferenced DGitRevision | |
Defined in Michelson.Doc |
class (Typeable d, DOrd d) => DocItem d where #
Minimal complete definition
Associated Types
type DocItemPlacement d :: DocItemPlacementKind #
type DocItemPlacement d = 'DocItemInlined #
type DocItemReferenced d :: DocItemReferencedKind #
type DocItemReferenced d = 'False #
Methods
docItemPos :: Natural #
docItemSectionName :: Maybe Text #
docItemSectionDescription :: Maybe Markdown #
docItemSectionNameStyle :: DocSectionNameStyle #
docItemRef :: d -> DocItemRef (DocItemPlacement d) (DocItemReferenced d) #
docItemToMarkdown :: HeaderLevel -> d -> Markdown #
docItemToToc :: HeaderLevel -> d -> Markdown #
docItemDependencies :: d -> [SomeDocDefinitionItem] #
docItemsOrder :: [d] -> [d] #
Instances
type family DocItemPlacement d :: DocItemPlacementKind #
Instances
type family DocItemReferenced d :: DocItemReferencedKind #
Instances
Instances
Eq DocItemId | |
Ord DocItemId | |
Show DocItemId | |
ToAnchor DocItemId | |
Defined in Michelson.Doc |
data DocItemPlacementKind #
Constructors
DocItemInlined | |
DocItemInDefinitions |
newtype DocItemPos #
Constructors
DocItemPos (Natural, Text) |
Instances
Eq DocItemPos | |
Defined in Michelson.Doc | |
Ord DocItemPos | |
Defined in Michelson.Doc Methods compare :: DocItemPos -> DocItemPos -> Ordering # (<) :: DocItemPos -> DocItemPos -> Bool # (<=) :: DocItemPos -> DocItemPos -> Bool # (>) :: DocItemPos -> DocItemPos -> Bool # (>=) :: DocItemPos -> DocItemPos -> Bool # max :: DocItemPos -> DocItemPos -> DocItemPos # min :: DocItemPos -> DocItemPos -> DocItemPos # | |
Show DocItemPos | |
Defined in Michelson.Doc Methods showsPrec :: Int -> DocItemPos -> ShowS # show :: DocItemPos -> String # showList :: [DocItemPos] -> ShowS # | |
Buildable DocItemPos | |
Defined in Michelson.Doc Methods build :: DocItemPos -> Builder # |
data DocItemRef (p :: DocItemPlacementKind) (r :: DocItemReferencedKind) where #
Constructors
DocItemRef :: DocItemId -> DocItemRef 'DocItemInDefinitions 'True | |
DocItemRefInlined :: DocItemId -> DocItemRef 'DocItemInlined 'True | |
DocItemNoRef :: DocItemRef 'DocItemInlined 'False |
Instances
ToAnchor (DocItemRef d 'True) | |
Defined in Michelson.Doc Methods toAnchor :: DocItemRef d 'True -> Anchor |
data DocSection #
Constructors
DocItem d => DocSection (NonEmpty $ DocElem d) |
Instances
Show DocSection | |
Defined in Michelson.Doc Methods showsPrec :: Int -> DocSection -> ShowS # show :: DocSection -> String # showList :: [DocSection] -> ShowS # |
data DocSectionNameStyle #
Constructors
DocSectionNameBig | |
DocSectionNameSmall |
newtype GitRepoSettings #
Constructors
GitRepoSettings | |
Fields
|
data SomeDocDefinitionItem where #
Constructors
SomeDocDefinitionItem :: forall d. (DocItem d, DocItemPlacement d ~ 'DocItemInDefinitions) => d -> SomeDocDefinitionItem |
Instances
Eq SomeDocDefinitionItem | |
Defined in Michelson.Doc Methods (==) :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> Bool # (/=) :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> Bool # | |
Ord SomeDocDefinitionItem | |
Defined in Michelson.Doc Methods compare :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> Ordering # (<) :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> Bool # (<=) :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> Bool # (>) :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> Bool # (>=) :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> Bool # max :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> SomeDocDefinitionItem # min :: SomeDocDefinitionItem -> SomeDocDefinitionItem -> SomeDocDefinitionItem # |
Constructors
SubDoc DocBlock |
Instances
Show DocGrouping | |
Defined in Michelson.Doc Methods showsPrec :: Int -> DocGrouping -> ShowS # show :: DocGrouping -> String # showList :: [DocGrouping] -> ShowS # |
insertTypeAnn :: forall (b :: T). TypeAnn -> Notes b -> Notes b #
class GHasAnnotation a where Source #
A Generic HasAnnotation
implementation
Methods
gGetAnnotation :: FollowEntrypointFlag -> GenerateFieldAnnFlag -> (Notes (GValueType a), FieldAnn) Source #
Instances
class HasAnnotation a where Source #
This class defines the type and field annotations for a given type. Right now the type annotations come from names in a named field, and field annotations are generated from the record fields.
Minimal complete definition
Nothing
Methods
getAnnotation :: FollowEntrypointFlag -> Notes (ToT a) Source #
default getAnnotation :: (GHasAnnotation (Rep a), GValueType (Rep a) ~ ToT a) => FollowEntrypointFlag -> Notes (ToT a) Source #
Instances
data GenerateFieldAnnFlag Source #
Used in GHasAnnotation
as a flag to track whether or not field/constructor
annotations should be generated.
Constructors
GenerateFieldAnn | |
NotGenerateFieldAnn |
data FollowEntrypointFlag Source #
Used in GHasAnnotation
and HasAnnotation
as a flag to track
whether or not it directly follows an entrypoint to avoid introducing
extra entrypoints.
Constructors
FollowEntrypoint | |
NotFollowEntrypoint |
gGetAnnotationNoField :: forall a. (GHasAnnotation (Rep a), GValueType (Rep a) ~ ToT a) => FollowEntrypointFlag -> Notes (ToT a) Source #
Use this in the instance of HasAnnotation
when field annotations
should not be generated.
type NiceComparable n = (KnownValue n, Comparable (ToT n)) Source #
type NicePrintedValue a = (KnownValue a, ProperPrintedValBetterErrors (ToT a)) Source #
type NiceFullPackedValue a = (NicePackedValue a, NiceUnpackedValue a) Source #
type NiceUnpackedValue a = (KnownValue a, ProperUnpackedValBetterErrors (ToT a)) Source #
type NicePackedValue a = (KnownValue a, ProperPackedValBetterErrors (ToT a)) Source #
type NiceConstant a = (KnownValue a, ProperConstantBetterErrors (ToT a)) Source #
type NiceStorage a = (HasAnnotation a, KnownValue a, ProperStorageBetterErrors (ToT a)) Source #
type NiceParameter a = (KnownValue a, ProperParameterBetterErrors (ToT a)) Source #
Constraint applied to any part of parameter type.
Note that you don't usually apply this constraint to the whole parameter,
consider using NiceParameterFull
in such case.
Using this type is justified e.g. when calling another contract, there you usually supply an entrypoint argument, not the whole parameter.
class (IsoValue a, HasNoNestedBigMaps (ToT a)) => CanHaveBigMap a Source #
Instances
(IsoValue a, HasNoNestedBigMaps (ToT a)) => CanHaveBigMap a Source # | |
Defined in Lorentz.Constraints.Scopes |
class (IsoValue a, ForbidContract (ToT a)) => NoContractType a Source #
Instances
(IsoValue a, ForbidContract (ToT a)) => NoContractType a Source # | |
Defined in Lorentz.Constraints.Scopes |
class (IsoValue a, ForbidOp (ToT a)) => NoOperation a Source #
Ensure given type does not contain "operation".
Instances
(IsoValue a, ForbidOp (ToT a)) => NoOperation a Source # | |
Defined in Lorentz.Constraints.Scopes |
class (IsoValue a, Typeable a) => KnownValue a Source #
Gathers constraints, commonly required for values.
Instances
(IsoValue a, Typeable a) => KnownValue a Source # | |
Defined in Lorentz.Constraints.Scopes |
niceParameterEvi :: forall a. NiceParameter a :- ParameterScope (ToT a) Source #
niceStorageEvi :: forall a. NiceStorage a :- StorageScope (ToT a) Source #
niceConstantEvi :: forall a. NiceConstant a :- ConstantScope (ToT a) Source #
nicePackedValueEvi :: forall a. NicePackedValue a :- PackedValScope (ToT a) Source #
niceUnpackedValueEvi :: forall a. NiceUnpackedValue a :- UnpackedValScope (ToT a) Source #
nicePrintedValueEvi :: forall a. NicePrintedValue a :- PrintedValScope (ToT a) Source #
No entrypoints declared, parameter type will serve as argument type of the only existing entrypoint (default one).
Instances
HasAnnotation cp => EntrypointsDerivation EpdNone cp Source # | |
Defined in Lorentz.Entrypoints.Core | |
type EpdAllEntrypoints EpdNone cp Source # | |
Defined in Lorentz.Entrypoints.Core | |
type EpdLookupEntrypoint EpdNone cp Source # | |
type family ParameterContainsEntrypoints param (fields :: [NamedEp]) :: Constraint where ... Source #
Check that the given entrypoint has some fields inside. This interface allows for an abstraction of contract parameter so that it requires some *minimal* specification, but not a concrete one.
Equations
ParameterContainsEntrypoints _ '[] = () | |
ParameterContainsEntrypoints param ((n :> ty) ': rest) = (HasEntrypointOfType param n ty, ParameterContainsEntrypoints param rest) |
type HasEntrypointOfType param con exp = (GetEntrypointArgCustom param ('Just con) ~ exp, ParameterDeclaresEntrypoints param) Source #
Checks that the given parameter consists of some specific entrypoint. Similar as
HasEntrypointArg
but ensures that the argument matches the following datatype.
newtype TrustEpName Source #
This wrapper allows to pass untyped EpName
and bypass checking
that entrypoint with given name and type exists.
Constructors
TrustEpName EpName |
Instances
NiceParameter arg => HasEntrypointArg (cp :: k) TrustEpName arg Source # | |
Defined in Lorentz.Entrypoints.Core Methods useHasEntrypointArg :: TrustEpName -> (Dict (ParameterScope (ToT arg)), EpName) Source # |
type HasDefEntrypointArg cp defEpName defArg = (defEpName ~ EntrypointRef 'Nothing, HasEntrypointArg cp defEpName defArg) Source #
HasEntrypointArg
constraint specialized to default entrypoint.
class HasEntrypointArg cp name arg where Source #
When we call a Lorentz contract we should pass entrypoint name
and corresponding argument. Ideally we want to statically check
that parameter has entrypoint with given name and
argument. Constraint defined by this type class holds for contract
with parameter cp
that have entrypoint matching name
with type
arg
.
In order to check this property statically, we need to know entrypoint
name in compile time, EntrypointRef
type serves this purpose.
If entrypoint name is not known, one can use TrustEpName
wrapper
to take responsibility for presence of this entrypoint.
If you want to call a function which has this constraint, you have
two options:
1. Pass contract parameter cp
using type application, pass EntrypointRef
as a value and pass entrypoint argument. Type system will check that
cp
has an entrypoint with given reference and type.
2. Pass EpName
wrapped into TrustEpName
and entrypoint argument.
In this case passing contract parameter is not necessary, you do not even
have to know it.
Methods
useHasEntrypointArg :: name -> (Dict (ParameterScope (ToT arg)), EpName) Source #
Data returned by this method may look somewhat arbitrary.
EpName
is obviously needed because name
can be
EntrypointRef
or TrustEpName
. Dict
is returned because in
EntrypointRef
case we get this evidence for free and don't want
to use it. We seem to always need it anyway.
Instances
NiceParameter arg => HasEntrypointArg (cp :: k) TrustEpName arg Source # | |
Defined in Lorentz.Entrypoints.Core Methods useHasEntrypointArg :: TrustEpName -> (Dict (ParameterScope (ToT arg)), EpName) Source # | |
(GetEntrypointArgCustom cp mname ~ arg, ParameterDeclaresEntrypoints cp) => HasEntrypointArg (cp :: Type) (EntrypointRef mname) arg Source # | |
Defined in Lorentz.Entrypoints.Core Methods useHasEntrypointArg :: EntrypointRef mname -> (Dict (ParameterScope (ToT arg)), EpName) Source # |
type family GetEntrypointArgCustom cp mname :: Type where ... Source #
Universal entrypoint lookup.
Equations
GetEntrypointArgCustom cp 'Nothing = GetDefaultEntrypointArg cp | |
GetEntrypointArgCustom cp ('Just name) = GetEntrypointArg cp name |
data EntrypointRef (mname :: Maybe Symbol) where Source #
Which entrypoint to call.
We intentionally distinguish default and non-default cases because this makes API more details-agnostic.
Constructors
CallDefault :: EntrypointRef 'Nothing | Call the default entrypoint, or root if no explicit default is assigned. |
Call :: NiceEntrypointName name => EntrypointRef ('Just name) | Call the given entrypoint; calling default is not treated specially. You have to provide entrypoint name via passing it as type argument. Unfortunatelly, here we cannot accept a label because in most cases our entrypoints begin from capital letter (being derived from constructor name), while labels must start from a lower-case letter, and there is no way to make a conversion at type-level. |
Instances
(GetEntrypointArgCustom cp mname ~ arg, ParameterDeclaresEntrypoints cp) => HasEntrypointArg (cp :: Type) (EntrypointRef mname) arg Source # | |
Defined in Lorentz.Entrypoints.Core Methods useHasEntrypointArg :: EntrypointRef mname -> (Dict (ParameterScope (ToT arg)), EpName) Source # |
type NoExplicitDefaultEntrypoint cp = Eval (LookupParameterEntrypoint cp DefaultEpName) ~ 'Nothing Source #
Similar to ForbidExplicitDefaultEntrypoint
, but in a version which
the compiler can work with (and which produces errors confusing for users :/)
type ForbidExplicitDefaultEntrypoint cp = Eval (LiftM3 UnMaybe (Pure (Pure (() :: Constraint))) (TError ('Text "Parameter used here must have no explicit \"default\" entrypoint" :$$: (('Text "In parameter type `" :<>: 'ShowType cp) :<>: 'Text "`"))) (LookupParameterEntrypoint cp DefaultEpName)) Source #
Ensure that there is no explicit "default" entrypoint.
type GetDefaultEntrypointArg cp = Eval (LiftM2 FromMaybe (Pure cp) (LookupParameterEntrypoint cp DefaultEpName)) Source #
Get type of entrypoint with given name, fail if not found.
type GetEntrypointArg cp name = Eval (LiftM2 FromMaybe (TError (('Text "Entrypoint not found: " :<>: 'ShowType name) :$$: (('Text "In contract parameter `" :<>: 'ShowType cp) :<>: 'Text "`"))) (LookupParameterEntrypoint cp name)) Source #
Get type of entrypoint with given name, fail if not found.
type family LookupParameterEntrypoint (cp :: Type) :: Symbol -> Exp (Maybe Type) where ... Source #
Lookup for entrypoint type by name.
Does not treat default entrypoints in a special way.
Equations
LookupParameterEntrypoint cp = EpdLookupEntrypoint (GetParameterEpDerivation cp) cp |
type family AllParameterEntrypoints (cp :: Type) :: [(Symbol, Type)] where ... Source #
Get all entrypoints declared for parameter.
Equations
AllParameterEntrypoints cp = EpdAllEntrypoints (GetParameterEpDerivation cp) cp |
type ParameterDeclaresEntrypoints cp = (If (CanHaveEntrypoints cp) (ParameterHasEntrypoints cp) (() :: Constraint), NiceParameter cp, EntrypointsDerivation (GetParameterEpDerivation cp) cp) Source #
Parameter declares some entrypoints.
This is a version of ParameterHasEntrypoints
which we actually use in
constraints. When given type is a sum type or newtype, we refer to
ParameterHasEntrypoints
instance, otherwise this instance is not
necessary.
class (EntrypointsDerivation (ParameterEntrypointsDerivation cp) cp, RequireAllUniqueEntrypoints cp) => ParameterHasEntrypoints cp Source #
Which entrypoints given parameter declares.
Note that usually this function should not be used as constraint, use
ParameterDeclaresEntrypoints
for this purpose.
Associated Types
type ParameterEntrypointsDerivation cp :: Type Source #
Instances
(NiceParameter cp, EntrypointsDerivation epd cp, RequireAllUniqueEntrypoints' epd cp) => ParameterHasEntrypoints (ParameterWrapper epd cp) Source # | |
Defined in Lorentz.Entrypoints.Manual Associated Types type ParameterEntrypointsDerivation (ParameterWrapper epd cp) Source # |
type RequireAllUniqueEntrypoints cp = RequireAllUniqueEntrypoints' (ParameterEntrypointsDerivation cp) cp Source #
Ensure that all declared entrypoints are unique.
class EntrypointsDerivation deriv cp where Source #
Defines a generalized way to declare entrypoints for various parameter types.
When defining instances of this typeclass, set concrete deriv
argument
and leave variable cp
argument.
Also keep in mind, that in presence of explicit default entrypoint, all other
Or
arms should be callable, though you can put this burden on user if very
necessary.
Methods of this typeclass aim to better type-safety when making up an implementation and they may be not too convenient to use; users should exploit their counterparts.
Associated Types
type EpdAllEntrypoints deriv cp :: [(Symbol, Type)] Source #
Name and argument of each entrypoint. This may include intermediate ones, even root if necessary.
Touching this type family is costly (O(N^2)
), don't use it often.
Note [order of entrypoints children]:
If this contains entrypoints referring to indermediate nodes (not leaves)
in or
tree, then each such entrypoint should be mentioned eariler than
all of its children.
type EpdLookupEntrypoint deriv cp :: Symbol -> Exp (Maybe Type) Source #
Get entrypoint argument by name.
Methods
epdNotes :: (Notes (ToT cp), RootAnn) Source #
Construct parameter annotations corresponding to expected entrypoints set.
This method is implementation detail, for actual notes construction
use parameterEntrypointsToNotes
.
epdCall :: ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint deriv cp name)) Source #
Construct entrypoint caller.
This does not treat calls to default entrypoint in a special way.
This method is implementation detail, for actual entrypoint lookup
use parameterEntrypointCall
.
epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints deriv cp) Source #
Description of how each of the entrypoints is constructed.
Instances
parameterEntrypointsToNotes :: forall cp. ParameterDeclaresEntrypoints cp => ParamNotes (ToT cp) Source #
Derive annotations for given parameter.
parameterEntrypointCall :: forall cp name. ParameterDeclaresEntrypoints cp => Label name -> EntrypointCall cp (GetEntrypointArg cp name) Source #
Prepare call to given entrypoint.
This does not treat calls to default entrypoint in a special way.
To call default entrypoint properly use parameterEntrypointCallDefault
.
parameterEntrypointCallDefault :: forall cp. ParameterDeclaresEntrypoints cp => EntrypointCall cp (GetDefaultEntrypointArg cp) Source #
Call the default entrypoint.
sepcCallRootChecked :: forall cp. (NiceParameter cp, ForbidExplicitDefaultEntrypoint cp) => SomeEntrypointCall cp Source #
Call root entrypoint safely.
eprName :: forall mname. EntrypointRef mname -> EpName Source #
parameterEntrypointCallCustom :: forall cp mname. ParameterDeclaresEntrypoints cp => EntrypointRef mname -> EntrypointCall cp (GetEntrypointArgCustom cp mname) Source #
Universal entrypoint calling.
type NiceParameterFull cp = (Typeable cp, ParameterDeclaresEntrypoints cp) Source #
Constraint applied to a whole parameter type.
class MapLorentzInstr instr where Source #
Applicable for wrappers over Lorentz code.
Methods
mapLorentzInstr :: (forall i o. (i :-> o) -> i :-> o) -> instr -> instr Source #
Modify all the code under given entity.
Instances
MapLorentzInstr (i :-> o) Source # | |
Defined in Lorentz.Base | |
MapLorentzInstr (UStoreMigration os ns) Source # | |
Defined in Lorentz.UStore.Migration.Base Methods mapLorentzInstr :: (forall (i :: [Type]) (o :: [Type]). (i :-> o) -> i :-> o) -> UStoreMigration os ns -> UStoreMigration os ns Source # |
data SomeContractCode where Source #
Constructors
SomeContractCode :: (NiceParameterFull cp, NiceStorage st) => ContractCode cp st -> SomeContractCode |
type ContractCode cp st = '[(cp, st)] :-> ContractOut st Source #
type ContractOut st = '[([Operation], st)] Source #
type (%>) = (:->) infixr 1 Source #
Alias for :->
, seems to make signatures more readable sometimes.
Let's someday decide which one of these two should remain.
newtype (inp :: [Type]) :-> (out :: [Type]) infixr 1 Source #
Alias for instruction which hides inner types representation via T
.
Constructors
LorentzInstr | |
Fields
|
Instances
iGenericIf :: (forall s'. Instr (ToTs a) s' -> Instr (ToTs b) s' -> Instr (ToTs c) s') -> (a :-> s) -> (b :-> s) -> c :-> s Source #
iNonFailingCode :: HasCallStack => (inp :-> out) -> Instr (ToTs inp) (ToTs out) Source #
iMapAnyCode :: (forall o'. Instr (ToTs i1) o' -> Instr (ToTs i2) o') -> (i1 :-> o) -> i2 :-> o Source #
iForceNotFail :: (i :-> o) -> i :-> o Source #
iWithVarAnnotations :: HasCallStack => [Text] -> (inp :-> out) -> inp :-> out Source #
Wrap Lorentz instruction with variable annotations, annots
list has to be
non-empty, otherwise this function raises an error.
(##) :: (a :-> b) -> (b :-> c) -> a :-> c Source #
Version of #
which performs some optimizations immediately.
parseLorentzValue :: forall v. KnownValue v => Text -> Either ParseLorentzError v Source #
Parse textual representation of a Michelson value and turn it into corresponding Haskell value.
Note: it won't work in some complex cases, e. g. if there is a lambda which uses an instruction which depends on current contract's type. Obviously it can not work, because we don't have any information about a contract to which this value belongs (there is no such contract at all).
transformStringsLorentz :: Bool -> (MText -> MText) -> (inp :-> out) -> inp :-> out Source #
Lorentz version of transformStrings
.
transformBytesLorentz :: Bool -> (ByteString -> ByteString) -> (inp :-> out) -> inp :-> out Source #
Lorentz version of transformBytes
.
optimizeLorentzWithConf :: OptimizerConf -> (inp :-> out) -> inp :-> out Source #
optimizeLorentz :: (inp :-> out) -> inp :-> out Source #
type Entrypoint_ store = '[store] :-> ContractOut store Source #
Version of Entrypoint
which accepts no argument.
type Entrypoint param store = '[param, store] :-> ContractOut store Source #
Single entrypoint of a contract.
Note that we cannot make it return [[Operation], store]
because
such entrypoint should've been followed by pair
, and this is not
possible if entrypoint implementation ends with failWith
.
class FromContractRef (cp :: Type) (contract :: Type) where Source #
Convert something from ContractAddr
in Haskell world.
Methods
fromContractRef :: ContractRef cp -> contract Source #
Instances
FromContractRef cp Address Source # | |
Defined in Lorentz.Address Methods fromContractRef :: ContractRef cp -> Address Source # | |
FromContractRef cp EpAddress Source # | |
Defined in Lorentz.Address Methods fromContractRef :: ContractRef cp -> EpAddress Source # | |
cp ~ cp' => FromContractRef cp (FutureContract cp') Source # | |
Defined in Lorentz.Address Methods fromContractRef :: ContractRef cp -> FutureContract cp' Source # | |
cp ~ cp' => FromContractRef cp (ContractRef cp') Source # | |
Defined in Lorentz.Address Methods fromContractRef :: ContractRef cp -> ContractRef cp' Source # |
class ToContractRef (cp :: Type) (contract :: Type) where Source #
Convert something to ContractRef
in Haskell world.
Methods
toContractRef :: HasCallStack => contract -> ContractRef cp Source #
Instances
(NiceParameter cp, cp ~ cp') => ToContractRef cp (FutureContract cp') Source # | |
Defined in Lorentz.Address Methods toContractRef :: FutureContract cp' -> ContractRef cp Source # | |
cp ~ cp' => ToContractRef cp (ContractRef cp') Source # | |
Defined in Lorentz.Address Methods toContractRef :: ContractRef cp' -> ContractRef cp Source # | |
(FailWhen cond msg, cond ~ (CanHaveEntrypoints cp && Not (ParameterEntrypointsDerivation cp == EpdNone)), msg ~ (((('Text "Cannot apply `ToContractRef` to `TAddress`" :$$: 'Text "Consider using call(Def)TAddress first`") :$$: 'Text "(or if you know your parameter type is primitive,") :$$: 'Text " make sure typechecker also knows about that)") :$$: (('Text "For parameter `" :<>: 'ShowType cp) :<>: 'Text "`")), cp ~ arg, NiceParameter arg, NiceParameterFull cp, GetDefaultEntrypointArg cp ~ cp) => ToContractRef arg (TAddress cp) Source # | |
Defined in Lorentz.Address Methods toContractRef :: TAddress cp -> ContractRef arg Source # |
class ToTAddress (cp :: Type) (a :: Type) where Source #
Convert something referring to a contract (not specific entrypoint)
to TAddress
in Haskell world.
Methods
toTAddress :: a -> TAddress cp Source #
Instances
ToTAddress cp Address Source # | |
Defined in Lorentz.Address Methods toTAddress :: Address -> TAddress cp Source # | |
cp ~ cp' => ToTAddress cp (TAddress cp') Source # | |
Defined in Lorentz.Address Methods toTAddress :: TAddress cp' -> TAddress cp Source # |
class ToAddress a where Source #
Convert something to Address
in Haskell world.
Use this when you want to access state of the contract and are not interested in calling it.
Instances
ToAddress Address Source # | |
ToAddress EpAddress Source # | |
ToAddress (ContractRef cp) Source # | |
Defined in Lorentz.Address Methods toAddress :: ContractRef cp -> Address Source # | |
ToAddress (FutureContract cp) Source # | |
Defined in Lorentz.Address Methods toAddress :: FutureContract cp -> Address Source # | |
ToAddress (TAddress cp) Source # | |
newtype FutureContract arg Source #
Address associated with value of contract arg
type.
Places where ContractRef
can appear are now severely limited,
this type gives you type-safety of ContractRef
but still can be used
everywhere.
This type is not a full-featured one rather a helper; in particular, once
pushing it on stack, you cannot return it back to Haskell world.
Note that it refers to an entrypoint of the contract, not just the contract
as a whole. In this sense this type differs from TAddress
.
Unlike with ContractRef
, having this type you still cannot be sure that
the referred contract exists and need to perform a lookup before calling it.
Constructors
FutureContract | |
Fields
|
Instances
Address which remembers the parameter type of the contract it refers to.
It differs from Michelson's contract
type because it cannot contain
entrypoint, and it always refers to entire contract parameter even if this
contract has explicit default entrypoint.
Constructors
TAddress | |
Fields |
Instances
callingTAddress :: forall cp mname. NiceParameterFull cp => TAddress cp -> EntrypointRef mname -> ContractRef (GetEntrypointArgCustom cp mname) Source #
Turn TAddress
to ContractRef
in Haskell world.
This is an analogy of address
to contract
convertion in Michelson world,
thus you have to supply an entrypoint (or call the default one explicitly).
callingDefTAddress :: forall cp. NiceParameterFull cp => TAddress cp -> ContractRef (GetDefaultEntrypointArg cp) Source #
Specification of callTAddress
to call the default entrypoint.
toTAddress_ :: forall cp addr s. ToTAddress_ cp addr => (addr ': s) :-> (TAddress cp ': s) Source #
Cast something appropriate to TAddress
.
convertContractRef :: forall cp contract2 contract1. (ToContractRef cp contract1, FromContractRef cp contract2) => contract1 -> contract2 Source #
stackRef :: forall (gn :: Nat) st n. (n ~ ToPeano gn, SingI n, KnownPeano n, RequireLongerThan st n) => PrintComment st Source #
printComment :: PrintComment (ToTs s) -> s :-> s Source #
testAssert :: (Typeable (ToTs out), HasCallStack) => Text -> PrintComment (ToTs inp) -> (inp :-> (Bool & out)) -> inp :-> inp Source #
lPackValue :: forall a. NicePackedValue a => a -> ByteString Source #
lUnpackValue :: forall a. NiceUnpackedValue a => ByteString -> Either UnpackError a Source #
lEncodeValue :: forall a. NicePrintedValue a => a -> ByteString Source #
valueToScriptExpr :: forall t. NicePackedValue t => t -> ByteString Source #
This function transforms Lorentz values into script_expr
.
script_expr
is used in RPC as an argument in entrypoint
designed for getting value by key from the big_map in Babylon.
In order to convert value to the script_expr
we have to pack it,
take blake2b hash and add specific expr
prefix. Take a look at
https://gitlab.com/tezos/tezos/blob/6e25ae8eb385d9975a30388c7a7aa2a9a65bf184/src/proto_005_PsBabyM1/lib_protocol/script_expr_hash.ml
and https://gitlab.com/tezos/tezos/blob/6e25ae8eb385d9975a30388c7a7aa2a9a65bf184/src/proto_005_PsBabyM1/lib_protocol/contract_services.ml#L136
for more information.
expressionToScriptExpr :: Expression -> ByteString Source #
Similar to valueToScriptExpr
, but for values encoded as Expression
s.
This is only used in tests.
class (EDivOp (ToT n) (ToT m), NiceComparable n, NiceComparable m, ToT (EDivOpResHs n m) ~ EDivOpRes (ToT n) (ToT m), ToT (EModOpResHs n m) ~ EModOpRes (ToT n) (ToT m)) => EDivOpHs n m Source #
Lifted EDivOp
.
Instances
EDivOpHs Integer Integer Source # | |
Defined in Lorentz.Polymorphic | |
EDivOpHs Integer Natural Source # | |
Defined in Lorentz.Polymorphic | |
EDivOpHs Natural Integer Source # | |
Defined in Lorentz.Polymorphic | |
EDivOpHs Natural Natural Source # | |
Defined in Lorentz.Polymorphic | |
EDivOpHs Mutez Natural Source # | |
Defined in Lorentz.Polymorphic | |
EDivOpHs Mutez Mutez Source # | |
Defined in Lorentz.Polymorphic |
class SliceOp (ToT c) => SliceOpHs c Source #
Lifted SliceOp
.
Instances
SliceOpHs ByteString Source # | |
Defined in Lorentz.Polymorphic | |
SliceOpHs MText Source # | |
Defined in Lorentz.Polymorphic |
class ConcatOp (ToT c) => ConcatOpHs c Source #
Lifted ConcatOp
.
Instances
ConcatOpHs ByteString Source # | |
Defined in Lorentz.Polymorphic | |
ConcatOpHs MText Source # | |
Defined in Lorentz.Polymorphic |
class (GetOp (ToT c), ToT (GetOpKeyHs c) ~ GetOpKey (ToT c), ToT (GetOpValHs c) ~ GetOpVal (ToT c)) => GetOpHs c Source #
Lifted GetOp
.
Instances
GetOpHs (UStore a) Source # | |
Defined in Lorentz.UStore.Types | |
NiceComparable k => GetOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
NiceComparable k => GetOpHs (BigMap k v) Source # | |
Defined in Lorentz.Polymorphic |
class (UpdOp (ToT c), ToT (UpdOpKeyHs c) ~ UpdOpKey (ToT c), ToT (UpdOpParamsHs c) ~ UpdOpParams (ToT c)) => UpdOpHs c Source #
Lifted UpdOp
.
Instances
NiceComparable a => UpdOpHs (Set a) Source # | |
Defined in Lorentz.Polymorphic | |
UpdOpHs (UStore a) Source # | |
Defined in Lorentz.UStore.Types | |
NiceComparable k => UpdOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic | |
NiceComparable k => UpdOpHs (BigMap k v) Source # | |
Defined in Lorentz.Polymorphic |
class SizeOp (ToT c) => SizeOpHs c Source #
Lifted SizeOp
.
This could be just a constraint alias, but to avoid T
types appearance in
error messages we make a full type class with concrete instances.
Instances
SizeOpHs ByteString Source # | |
Defined in Lorentz.Polymorphic | |
SizeOpHs MText Source # | |
Defined in Lorentz.Polymorphic | |
SizeOpHs [a] Source # | |
Defined in Lorentz.Polymorphic | |
SizeOpHs (Set a) Source # | |
Defined in Lorentz.Polymorphic | |
SizeOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic |
class (IterOp (ToT c), ToT (IterOpElHs c) ~ IterOpEl (ToT c)) => IterOpHs c Source #
Lifted IterOp
.
Associated Types
type IterOpElHs c :: Type Source #
Instances
IterOpHs [e] Source # | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs [e] Source # | |
NiceComparable e => IterOpHs (Set e) Source # | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs (Set e) Source # | |
NiceComparable k => IterOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs (Map k v) Source # |
class (MapOp (ToT c), ToT (MapOpInpHs c) ~ MapOpInp (ToT c), ToT (MapOpResHs c ()) ~ MapOpRes (ToT c) (ToT ())) => MapOpHs c Source #
Lifted MapOp
.
Instances
MapOpHs [e] Source # | |
Defined in Lorentz.Polymorphic | |
NiceComparable k => MapOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic Associated Types type MapOpInpHs (Map k v) Source # |
type family IsoMapOpRes c b where ... Source #
A useful property which holds for reasonable MapOp
instances.
It's a separate thing from MapOpHs
because it mentions b
type parameter.
Equations
IsoMapOpRes c b = ToT (MapOpResHs c b) ~ MapOpRes (ToT c) (ToT b) |
class (MemOp (ToT c), ToT (MemOpKeyHs c) ~ MemOpKey (ToT c)) => MemOpHs c Source #
Lifted MemOpKey
.
Associated Types
type MemOpKeyHs c :: Type Source #
Instances
NiceComparable e => MemOpHs (Set e) Source # | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (Set e) Source # | |
MemOpHs (UStore a) Source # | |
Defined in Lorentz.UStore.Types Associated Types type MemOpKeyHs (UStore a) Source # | |
NiceComparable k => MemOpHs (Map k v) Source # | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (Map k v) Source # | |
NiceComparable k => MemOpHs (BigMap k v) Source # | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (BigMap k v) Source # |
customGeneric :: String -> GenericStrategy -> Q [Dec] #
leftBalanced :: GenericStrategy #
rightBalanced :: GenericStrategy #
withDepths :: [CstrDepth] -> GenericStrategy #
data EpdWithRoot (r :: Symbol) epd Source #
Extension of EpdPlain
, EpdRecursive
, and EpdDelegate
which allow specifying root annotation
for the parameters.
Instances
(KnownSymbol r, PlainEntrypointsC deriv cp) => EntrypointsDerivation (EpdWithRoot r deriv :: Type) cp Source # | |
Defined in Lorentz.Entrypoints.Impl Associated Types type EpdAllEntrypoints (EpdWithRoot r deriv) cp :: [(Symbol, Type)] Source # type EpdLookupEntrypoint (EpdWithRoot r deriv) cp :: Symbol -> Exp (Maybe Type) Source # Methods epdNotes :: (Notes (ToT cp), RootAnn) Source # epdCall :: forall (name :: Symbol). ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint (EpdWithRoot r deriv) cp name)) Source # epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints (EpdWithRoot r deriv) cp) Source # | |
type EpdAllEntrypoints (EpdWithRoot r deriv :: Type) cp Source # | |
Defined in Lorentz.Entrypoints.Impl | |
type EpdLookupEntrypoint (EpdWithRoot r deriv :: Type) cp Source # | |
Defined in Lorentz.Entrypoints.Impl |
data EpdDelegate Source #
Extension of EpdPlain
on parameters being defined as several nested
datatypes.
In particular, it will traverse the immediate sum type, and require another
ParameterHasEntrypoints
for the inner complex datatypes. Only those
inner types are considered which are the only fields in their respective
constructors.
Inner types should not themselves declare default entrypoint, we enforce
this for better modularity.
Each top-level constructor will be treated as entrypoint even if it contains
a complex datatype within, in such case that would be an entrypoint
corresponding to intermediate node in or
tree.
Comparing to EpdRecursive
this gives you more control over where and how
entrypoints will be derived.
Instances
PlainEntrypointsC EpdDelegate cp => EntrypointsDerivation EpdDelegate cp Source # | |
Defined in Lorentz.Entrypoints.Impl Associated Types type EpdAllEntrypoints EpdDelegate cp :: [(Symbol, Type)] Source # type EpdLookupEntrypoint EpdDelegate cp :: Symbol -> Exp (Maybe Type) Source # Methods epdNotes :: (Notes (ToT cp), RootAnn) Source # epdCall :: forall (name :: Symbol). ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint EpdDelegate cp name)) Source # epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints EpdDelegate cp) Source # | |
type EpdAllEntrypoints EpdDelegate cp Source # | |
Defined in Lorentz.Entrypoints.Impl | |
type EpdLookupEntrypoint EpdDelegate cp Source # | |
Defined in Lorentz.Entrypoints.Impl |
data EpdRecursive Source #
Extension of EpdPlain
on parameters being defined as several nested
datatypes.
In particular, this will traverse sum types recursively, stopping at
Michelson primitives (like Natural
) and constructors with number of
fields different from one.
It does not assign names to intermediate nodes of Or
tree, only to the very
leaves.
If some entrypoint arguments have custom IsoValue
instance, this
derivation way will not work. As a workaround, you can wrap your
argument into some primitive (e.g. :!
).
Instances
PlainEntrypointsC EpdRecursive cp => EntrypointsDerivation EpdRecursive cp Source # | |
Defined in Lorentz.Entrypoints.Impl Associated Types type EpdAllEntrypoints EpdRecursive cp :: [(Symbol, Type)] Source # type EpdLookupEntrypoint EpdRecursive cp :: Symbol -> Exp (Maybe Type) Source # Methods epdNotes :: (Notes (ToT cp), RootAnn) Source # epdCall :: forall (name :: Symbol). ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint EpdRecursive cp name)) Source # epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints EpdRecursive cp) Source # | |
type EpdAllEntrypoints EpdRecursive cp Source # | |
Defined in Lorentz.Entrypoints.Impl | |
type EpdLookupEntrypoint EpdRecursive cp Source # | |
Defined in Lorentz.Entrypoints.Impl |
Implementation of ParameterHasEntrypoints
which fits for case when
your contract exposes multiple entrypoints via having sum type as its
parameter.
In particular, each constructor would produce a homonymous entrypoint with
argument type equal to type of constructor field (each constructor should
have only one field).
Constructor called Default
will designate the default entrypoint.
Instances
PlainEntrypointsC EpdPlain cp => EntrypointsDerivation EpdPlain cp Source # | |
Defined in Lorentz.Entrypoints.Impl | |
type EpdAllEntrypoints EpdPlain cp Source # | |
Defined in Lorentz.Entrypoints.Impl | |
type EpdLookupEntrypoint EpdPlain cp Source # | |
Defined in Lorentz.Entrypoints.Impl |
class (UnaryArithOp aop (ToT n), NiceComparable n, ToT (UnaryArithResHs aop n) ~ UnaryArithRes aop (ToT n)) => UnaryArithOpHs (aop :: Type) (n :: Type) Source #
Lifted UnaryArithOp
.
Associated Types
type UnaryArithResHs aop n :: Type Source #
Instances
class (ArithOp aop (ToT n) (ToT m), NiceComparable n, NiceComparable m, ToT (ArithResHs aop n m) ~ ArithRes aop (ToT n) (ToT m)) => ArithOpHs (aop :: Type) (n :: Type) (m :: Type) Source #
Lifted ArithOp
.
Associated Types
type ArithResHs aop n m :: Type Source #
Instances
class ToT s ~ ToT (Unwrappable s) => Wrappable (s :: Type) Source #
Wrappable
is similar to lens Wrapped
class without the method.
It provides type family that is mainly used as constraint when
unwrapping Lorentz instruction into a Haskell newtype and vice versa.
Associated Types
type Unwrappable s :: Type Source #
type Unwrappable s = GUnwrappable (Rep s) Source #
Instances
Wrappable (UStore a) Source # | |
Defined in Lorentz.UStore.Types Associated Types type Unwrappable (UStore a) Source # | |
Wrappable (UParam entries) Source # | |
Defined in Lorentz.UParam Associated Types type Unwrappable (UParam entries) Source # | |
Wrappable (ParameterWrapper deriv cp) Source # | |
Defined in Lorentz.Entrypoints.Manual Associated Types type Unwrappable (ParameterWrapper deriv cp) Source # | |
Wrappable (MigrationScript oldStore newStore) Source # | |
Defined in Lorentz.UStore.Migration.Base Associated Types type Unwrappable (MigrationScript oldStore newStore) Source # | |
Wrappable (Extensible x) Source # | |
Defined in Lorentz.Extensible Associated Types type Unwrappable (Extensible x) Source # | |
Wrappable (NamedF Maybe a name) Source # | |
Defined in Lorentz.Wrappable Associated Types type Unwrappable (NamedF Maybe a name) Source # | |
Wrappable (NamedF Identity a name) Source # | |
Defined in Lorentz.Wrappable Associated Types type Unwrappable (NamedF Identity a name) Source # |
newtype ParameterWrapper (deriv :: Type) cp Source #
Wrap parameter into this to locally assign a way to derive entrypoints for it.
Constructors
ParameterWrapper | |
Fields
|
Instances
Code for a contract along with compilation options for the Lorentz compiler.
It is expected that a Contract
is one packaged entity, wholly controlled by its author.
Therefore the author should be able to set all options that control contract's behavior.
This helps ensure that a given contract will be interpreted in the same way in all environments, like production and testing.
Raw ContractCode
should not be used for distribution of contracts.
Constructors
Contract | |
Fields
|
data CompilationOptions Source #
Options to control Lorentz to Michelson compilation.
Constructors
CompilationOptions | |
Fields
|
defaultCompilationOptions :: CompilationOptions Source #
Runs Michelson optimizer with default config and does not touch strings and bytes.
compileLorentz :: (inp :-> out) -> Instr (ToTs inp) (ToTs out) Source #
For use outside of Lorentz. Will use defaultCompilationOptions
.
compileLorentzWithOptions :: CompilationOptions -> (inp :-> out) -> Instr (ToTs inp) (ToTs out) Source #
Compile Lorentz code, optionally running the optimizer, string and byte transformers.
defaultContract :: ContractCode cp st -> Contract cp st Source #
Compile contract with defaultCompilationOptions
and cDisableInitialCast
set to False
.
compileLorentzContract :: forall cp st. (NiceParameterFull cp, NiceStorage st) => Contract cp st -> Contract (ToT cp) (ToT st) Source #
Compile a whole contract to Michelson.
Note that compiled contract can be ill-typed in terms of Michelson code
when some of the compilation options are used (e.g. when ccoDisableInitialCast
is True
, resulted contract can be ill-typed).
However, compilation with defaultContractCompilationOptions
should be valid.
interpretLorentzInstr :: (IsoValuesStack inp, IsoValuesStack out) => ContractEnv -> (inp :-> out) -> Rec Identity inp -> Either MichelsonFailed (Rec Identity out) Source #
Interpret a Lorentz instruction, for test purposes. Note that this does not run the optimizer.
interpretLorentzLambda :: (IsoValue inp, IsoValue out) => ContractEnv -> Lambda inp out -> inp -> Either MichelsonFailed out Source #
Like interpretLorentzInstr
, but works on lambda rather than
arbitrary instruction.
analyzeLorentz :: (inp :-> out) -> AnalyzerRes Source #
Lorentz version of analyzer.
printLorentzValue :: forall v. NicePrintedValue v => Bool -> v -> LText Source #
Pretty-print a Haskell value as Michelson one.
printLorentzContract :: forall cp st. (NiceParameterFull cp, NiceStorage st) => Bool -> Contract cp st -> LText Source #
Pretty-print a Lorentz contract into Michelson code.
class LorentzFunctor (c :: Type -> Type) where Source #
Instances
LorentzFunctor Maybe Source # | |
Defined in Lorentz.Instr |
type ConstraintDIPNLorentz (n :: Peano) (inp :: [Type]) (out :: [Type]) (s :: [Type]) (s' :: [Type]) = (ConstraintDIPN n (ToTs inp) (ToTs out) (ToTs s) (ToTs s'), ConstraintDIPN' Type n inp out s s') Source #
type ConstraintDUGLorentz (n :: Peano) (inp :: [Type]) (out :: [Type]) (a :: Type) = (ConstraintDUG n (ToTs inp) (ToTs out) (ToT a), ConstraintDUG' Type n inp out a) Source #
type ConstraintDIGLorentz (n :: Peano) (inp :: [Type]) (out :: [Type]) (a :: Type) = (ConstraintDIG n (ToTs inp) (ToTs out) (ToT a), ConstraintDIG' Type n inp out a) Source #
justComment :: Text -> s :-> s Source #
dropN :: forall (n :: Nat) (s :: [Type]). (SingI (ToPeano n), KnownPeano (ToPeano n), RequireLongerOrSameLength (ToTs s) (ToPeano n), Drop (ToPeano n) (ToTs s) ~ ToTs (Drop (ToPeano n) s)) => s :-> Drop (ToPeano n) s Source #
Drop top n
elements from the stack.
digPeano :: forall (n :: Peano) inp out a. ConstraintDIGLorentz n inp out a => inp :-> out Source #
Version of dig
which uses Peano number.
It is inteded for internal usage in Lorentz.
dig :: forall (n :: Nat) inp out a. ConstraintDIGLorentz (ToPeano n) inp out a => inp :-> out Source #
dugPeano :: forall (n :: Peano) inp out a. ConstraintDUGLorentz n inp out a => inp :-> out Source #
Version of dug
which uses Peano number.
It is inteded for internal usage in Lorentz.
dug :: forall (n :: Nat) inp out a. ConstraintDUGLorentz (ToPeano n) inp out a => inp :-> out Source #
emptyMap :: (NiceComparable k, KnownValue v) => s :-> (Map k v & s) Source #
emptyBigMap :: (NiceComparable k, KnownValue v) => s :-> (BigMap k v & s) Source #
map :: (MapOpHs c, IsoMapOpRes c b, KnownValue b, HasCallStack) => ((MapOpInpHs c & s) :-> (b & s)) -> (c & s) :-> (MapOpResHs c b & s) Source #
iter :: (IterOpHs c, HasCallStack) => ((IterOpElHs c & s) :-> s) -> (c & s) :-> s Source #
get :: (GetOpHs c, KnownValue (GetOpValHs c)) => (GetOpKeyHs c & (c & s)) :-> (Maybe (GetOpValHs c) & s) Source #
execute :: forall i o s. Each [KnownList, ZipInstr] [i, o] => ((i :-> o) ': (i ++ s)) :-> (o ++ s) Source #
Similar to exec
but works for lambdas with arbitrary size of input
and output.
Note that this instruction has its arguments flipped, lambda goes first. This seems to be the only reasonable way to achieve good inference.
apply :: forall a b c s. (NiceConstant a, KnownValue b) => (a & (Lambda (a, b) c & s)) :-> (Lambda b c & s) Source #
dipNPeano :: forall (n :: Peano) (inp :: [Type]) (out :: [Type]) (s :: [Type]) (s' :: [Type]). ConstraintDIPNLorentz n inp out s s' => (s :-> s') -> inp :-> out Source #
Version of dipN
which uses Peano number.
It is inteded for internal usage in Lorentz.
dipN :: forall (n :: Nat) (inp :: [Type]) (out :: [Type]) (s :: [Type]) (s' :: [Type]). ConstraintDIPNLorentz (ToPeano n) inp out s s' => (s :-> s') -> inp :-> out Source #
pack :: forall a s. NicePackedValue a => (a & s) :-> (ByteString & s) Source #
unpack :: forall a s. NiceUnpackedValue a => (ByteString & s) :-> (Maybe a & s) Source #
abs :: UnaryArithOpHs Abs n => (n & s) :-> (UnaryArithResHs Abs n & s) Source #
neg :: UnaryArithOpHs Neg n => (n & s) :-> (UnaryArithResHs Neg n & s) Source #
not :: UnaryArithOpHs Not n => (n & s) :-> (UnaryArithResHs Not n & s) Source #
eq0 :: UnaryArithOpHs Eq' n => (n & s) :-> (UnaryArithResHs Eq' n & s) Source #
neq0 :: UnaryArithOpHs Neq n => (n & s) :-> (UnaryArithResHs Neq n & s) Source #
lt0 :: UnaryArithOpHs Lt n => (n & s) :-> (UnaryArithResHs Lt n & s) Source #
gt0 :: UnaryArithOpHs Gt n => (n & s) :-> (UnaryArithResHs Gt n & s) Source #
le0 :: UnaryArithOpHs Le n => (n & s) :-> (UnaryArithResHs Le n & s) Source #
ge0 :: UnaryArithOpHs Ge n => (n & s) :-> (UnaryArithResHs Ge n & s) Source #
self :: forall p s. (NiceParameterFull p, ForbidExplicitDefaultEntrypoint p) => s :-> (ContractRef p & s) Source #
Get a reference to the current contract.
Note that, similar to CONTRACT
instruction, in Michelson SELF
instruction
can accept an entrypoint as field annotation, and without annotation specified
it creates a contract
value which calls the default entrypoint.
This particular function carries the behaviour of SELF
before introduction
of lightweight entrypoints feature.
Thus the contract must not have explicit "default" entrypoint for this to
work.
If you are going to call a specific entrypoint of the contract, see selfCalling
.
selfCalling :: forall p mname s. NiceParameterFull p => EntrypointRef mname -> s :-> (ContractRef (GetEntrypointArgCustom p mname) & s) Source #
Make a reference to the current contract, maybe a specific entrypoint.
Note that, since information about parameter of the current contract is not
carried around, in this function you need to specify parameter type p
explicitly.
contract :: forall p addr s. (NiceParameterFull p, ForbidExplicitDefaultEntrypoint p, ToTAddress_ p addr) => (addr & s) :-> (Maybe (ContractRef p) & s) Source #
Get a reference to a contract by its address.
This instruction carries the behaviour of CONTRACT
before introduction
of lightweight entrypoints feature.
The contract must not have explicit "default" entrypoint for this to work.
If you are going to call a specific entrypoint of the contract, see contractCalling
.
contractCalling :: forall cp epRef epArg addr s. (HasEntrypointArg cp epRef epArg, ToTAddress_ cp addr) => epRef -> (addr & s) :-> (Maybe (ContractRef epArg) & s) Source #
Make a reference to a contract, maybe a specific entrypoint.
When calling this function, make sure that parameter type is known.
It's recommended that you supply TAddress
with a concrete parameter as the
stack argument.
contractCallingUnsafe :: forall arg s. NiceParameter arg => EpName -> (Address & s) :-> (Maybe (ContractRef arg) & s) Source #
Specialized version of contractCalling
for the case when you do
not have compile-time evidence of appropriate HasEntrypointArg
.
For instance, if you have untyped EpName
you can not have this
evidence (the value is only available in runtime).
If you have typed EntrypointRef
, use eprName
to construct EpName
.
runFutureContract :: forall p s. NiceParameter p => (FutureContract p & s) :-> (Maybe (ContractRef p) & s) Source #
Version of contract
instruction which may accept address with already
specified entrypoint name.
Also you cannot specify entrypoint name here because this could result in conflict.
epAddressToContract :: forall p s. NiceParameter p => (EpAddress & s) :-> (Maybe (ContractRef p) & s) Source #
Similar to runFutureContract
, works with EpAddress
.
Validity of such operation cannot be ensured at compile time.
transferTokens :: forall p s. NiceParameter p => (p & (Mutez & (ContractRef p & s))) :-> (Operation & s) Source #
createContract :: forall p g s. (NiceStorage g, NiceParameterFull p) => Contract p g -> (Maybe KeyHash & (Mutez & (g & s))) :-> (Operation & (Address & s)) Source #
implicitAccount :: (KeyHash & s) :-> (ContractRef () & s) Source #
sha256 :: (ByteString & s) :-> (ByteString & s) Source #
sha512 :: (ByteString & s) :-> (ByteString & s) Source #
blake2B :: (ByteString & s) :-> (ByteString & s) Source #
framed :: forall s i o. (KnownList i, KnownList o) => (i :-> o) -> (i ++ s) :-> (o ++ s) Source #
Execute given instruction on truncated stack.
This instruction requires you to specify the piece of stack to truncate as type argument.
failingWhenPresent :: forall c k s v st e. (MemOpHs c, k ~ MemOpKeyHs c, KnownValue e, st ~ (k & (v & (c & s)))) => (forall s0. (k ': s0) :-> (e ': s0)) -> st :-> st Source #
Helper instruction.
Checks whether given key present in the storage and fails if it is. This instruction leaves stack intact.
updateNew :: forall c k s e. (UpdOpHs c, MemOpHs c, k ~ UpdOpKeyHs c, k ~ MemOpKeyHs c, KnownValue e) => (forall s0. (k ': s0) :-> (e ': s0)) -> (k & (UpdOpParamsHs c & (c & s))) :-> (c & s) Source #
Like update
, but throw an error on attempt to overwrite existing entry.
dupT :: forall a st. DupT st a st => st :-> (a ': st) Source #
Duplicate an element of stack referring it by type.
If stack contains multiple entries of this type, compile error is raised.
dipT :: forall a inp dinp dout out. DipT inp a inp dinp dout out => (dinp :-> dout) -> inp :-> out Source #
Dip repeatedly until element of the given type is on top of the stack.
If stack contains multiple entries of this type, compile error is raised.
dropT :: forall a inp dinp dout out. (DipT inp a inp dinp dout out, dinp ~ (a ': dout)) => inp :-> out Source #
Remove element with the given type from the stack.
data DEntrypointExample Source #
Modify the example value of an entrypoint
Constructors
forall t.ParameterScope t => DEntrypointExample (Value t) |
Instances
DocItem DEntrypointExample Source # | |
Defined in Lorentz.Doc Associated Types type DocItemPlacement DEntrypointExample :: DocItemPlacementKind # type DocItemReferenced DEntrypointExample :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DEntrypointExample -> DocItemRef (DocItemPlacement DEntrypointExample) (DocItemReferenced DEntrypointExample) # docItemToMarkdown :: HeaderLevel -> DEntrypointExample -> Markdown # docItemToToc :: HeaderLevel -> DEntrypointExample -> Markdown # docItemDependencies :: DEntrypointExample -> [SomeDocDefinitionItem] # docItemsOrder :: [DEntrypointExample] -> [DEntrypointExample] # | |
type DocItemPlacement DEntrypointExample Source # | |
Defined in Lorentz.Doc | |
type DocItemReferenced DEntrypointExample Source # | |
Defined in Lorentz.Doc |
docGroup :: DocGrouping -> (inp :-> out) -> inp :-> out Source #
Group documentation built in the given piece of code into block dedicated to one thing, e.g. to one entrypoint.
docStorage :: forall storage s. TypeHasDoc storage => s :-> s Source #
Insert documentation of the contract storage type. The type should be passed using type applications.
contractName :: Text -> (inp :-> out) -> inp :-> out Source #
Give a name to given contract. Apply it to the whole contract code.
buildLorentzDoc :: (inp :-> out) -> ContractDoc Source #
contractGeneral :: (inp :-> out) -> inp :-> out Source #
Takes an instruction that inserts documentation items with
general information about the contract. Inserts it into general
section. See DGeneralInfoSection
.
contractGeneralDefault :: s :-> s Source #
Inserts general information about the contract using the default format.
Currently we only include git revision. It is unknown in the library code and is supposed to be updated in an executable.
buildLorentzDocWithGitRev :: DGitRevision -> (inp :-> out) -> ContractDoc Source #
renderLorentzDoc :: (inp :-> out) -> LText Source #
renderLorentzDocWithGitRev :: DGitRevision -> (inp :-> out) -> LText Source #
cutLorentzNonDoc :: (inp :-> out) -> s :-> s Source #
Leave only instructions related to documentation.
This function is useful when your method executes a lambda coming from outside, but you know its properties and want to propagate its documentation to your contract code.
mkDEntrypointExample :: forall a. NiceParameter a => a -> DEntrypointExample Source #
Documentation for custom errors.
Mentions that entrypoint throws given error.
Constructors
DThrows :: ErrorHasDoc e => Proxy e -> DThrows |
Instances
Eq DThrows Source # | |
DocItem DThrows Source # | |
Defined in Lorentz.Errors Associated Types type DocItemPlacement DThrows :: DocItemPlacementKind # type DocItemReferenced DThrows :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DThrows -> DocItemRef (DocItemPlacement DThrows) (DocItemReferenced DThrows) # docItemToMarkdown :: HeaderLevel -> DThrows -> Markdown # docItemToToc :: HeaderLevel -> DThrows -> Markdown # docItemDependencies :: DThrows -> [SomeDocDefinitionItem] # docItemsOrder :: [DThrows] -> [DThrows] # | |
type DocItemPlacement DThrows Source # | |
Defined in Lorentz.Errors | |
type DocItemReferenced DThrows Source # | |
Defined in Lorentz.Errors |
Mentions that contract uses given error.
Constructors
DError :: ErrorHasDoc e => Proxy e -> DError |
Instances
Eq DError Source # | |
Ord DError Source # | |
DocItem DError Source # | |
Defined in Lorentz.Errors Associated Types type DocItemPlacement DError :: DocItemPlacementKind # type DocItemReferenced DError :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DError -> DocItemRef (DocItemPlacement DError) (DocItemReferenced DError) # docItemToMarkdown :: HeaderLevel -> DError -> Markdown # docItemToToc :: HeaderLevel -> DError -> Markdown # docItemDependencies :: DError -> [SomeDocDefinitionItem] # docItemsOrder :: [DError] -> [DError] # | |
type DocItemPlacement DError Source # | |
Defined in Lorentz.Errors | |
type DocItemReferenced DError Source # | |
Defined in Lorentz.Errors |
class (KnownSymbol tag, TypeHasDoc (ErrorArg tag), IsError (CustomError tag)) => CustomErrorHasDoc tag where Source #
Minimal complete definition
Methods
customErrDocMdCause :: Markdown Source #
What should happen for this error to be raised.
customErrDocMdCauseInEntrypoint :: Markdown Source #
Brief version of customErrDocMdCause
.
This will appear along with the error when mentioned in entrypoint description.
By default, the first sentence of the full description is used.
customErrClass :: ErrorClass Source #
Error class.
By default this returns "unknown error" class; though you should provide explicit implementation in order to avoid a warning.
customErrArgumentSemantics :: Maybe Markdown Source #
Clarification of error argument meaning.
Provide when it's not obvious, e.g. argument is not named with :!
.
NOTE: This should not be an entire sentence, rather just the semantic backbone.
Bad:
* Error argument stands for the previous value of approval.
Good:
* the previous value of approval
* pair, first argument of which is one thing, and the second is another
Instances
CustomErrorHasDoc "emptySupplied" Source # | |
Defined in Lorentz.Empty | |
CustomErrorHasDoc "senderIsNotAdmin" Source # | |
CustomErrorHasDoc "uparamArgumentUnpackFailed" Source # | |
Defined in Lorentz.UParam | |
CustomErrorHasDoc "uparamNoSuchEntrypoint" Source # | |
Defined in Lorentz.UParam |
data ErrorClass Source #
Error class on how the error should be handled by the client.
Constructors
ErrClassActionException | Normal expected error. Examples: "insufficient balance", "wallet does not exist". |
ErrClassBadArgument | Invalid argument passed to entrypoint.
Examples: your entrypoint accepts an enum represented as |
ErrClassContractInternal | Unexpected error. Most likely it means that there is a bug in the contract or the contract has been deployed incorrectly. |
ErrClassUnknown | It's possible to leave error class unspecified. |
Instances
Read ErrorClass Source # | |
Defined in Lorentz.Errors Methods readsPrec :: Int -> ReadS ErrorClass # readList :: ReadS [ErrorClass] # readPrec :: ReadPrec ErrorClass # readListPrec :: ReadPrec [ErrorClass] # | |
Lift ErrorClass Source # | |
Defined in Lorentz.Errors Methods lift :: ErrorClass -> Q Exp # | |
Buildable ErrorClass Source # | |
Defined in Lorentz.Errors Methods build :: ErrorClass -> Builder # |
type RequireNoArgError tag msg = (TypeErrorUnless (ErrorArg tag == ()) msg, msg ~ ('Text "Expected no-arg error, but given error requires argument of type " :<>: 'ShowType (ErrorArg tag))) Source #
data CustomError (tag :: Symbol) Source #
Material custom error.
Use this in pattern matches against error (e.g. in tests).
Constructors
CustomError | |
Instances
type family ErrorArg (tag :: Symbol) :: Type Source #
Declares a custom error, defining error name - error argument
relation.
If your error is supposed to carry no argument, then provide ()
.
Note that this relation is defined globally rather than on per-contract basis, so define errors accordingly. If your error has argument specific to your contract, call it such that error name reflects its belonging to this contract.
This is the basic [error format].
Instances
type ErrorArg "emptySupplied" Source # | Someone constructed |
Defined in Lorentz.Empty type ErrorArg "emptySupplied" = () | |
type ErrorArg "senderIsNotAdmin" Source # | Contract initiator should be contract admin in order to perform this operation. |
Defined in Lorentz.Errors.Common type ErrorArg "senderIsNotAdmin" = () | |
type ErrorArg "uparamArgumentUnpackFailed" Source # | |
Defined in Lorentz.UParam type ErrorArg "uparamArgumentUnpackFailed" = () | |
type ErrorArg "uparamNoSuchEntrypoint" Source # | |
Defined in Lorentz.UParam |
Type wrapper for an IsError
.
data UnspecifiedError Source #
Use this type as replacement for ()
when you really want to leave
error cause unspecified.
Constructors
UnspecifiedError |
Instances
class Typeable e => ErrorHasDoc (e :: Type) where Source #
Minimal complete definition
errorDocName, errorDocMdCause, errorDocHaskellRep, errorDocDependencies
Associated Types
type ErrorRequirements e :: Constraint Source #
Constraints which we require in a particular instance. You are not oblidged to often instantiate this correctly, it is only useful for some utilities.
type ErrorRequirements e = () Source #
Methods
errorDocName :: Text Source #
Name of error as it appears in the corresponding section title.
errorDocMdCause :: Markdown Source #
What should happen for this error to be raised.
errorDocMdCauseInEntrypoint :: Markdown Source #
Brief version of errorDocMdCause
.
This will appear along with the error when mentioned in entrypoint description. By default, the first sentence of the full description is used.
errorDocHaskellRep :: Markdown Source #
How this error is represented in Haskell.
errorDocClass :: ErrorClass Source #
Error class.
errorDocDependencies :: [SomeDocDefinitionItem] Source #
Which definitions documentation for this error mentions.
errorDocRequirements :: Dict (ErrorRequirements e) Source #
Captured constraints which we require in a particular instance.
This is a way to encode a bidirectional instance in the nowaday Haskell,
for class MyConstraint => ErrorHasDoc MyType
instance it lets deducing
MyConstraint
by ErrorHasDoc MyType
.
You are not oblidged to always instantiate, it is only useful for some utilities which otherwise would not compile.
default errorDocRequirements :: ErrorRequirements e => Dict (ErrorRequirements e) Source #
Instances
class (Typeable e, ErrorHasDoc e) => IsError e where Source #
Haskell type representing error.
Methods
errorToVal :: e -> (forall t. ErrorScope t => Value t -> r) -> r Source #
Converts a Haskell error into Value
representation.
errorFromVal :: KnownT t => Value t -> Either Text e Source #
Converts a Value
into Haskell error.
Instances
(TypeError ('Text "Use representative error messages") :: Constraint) => IsError () Source # | |
Defined in Lorentz.Errors Methods errorToVal :: () -> (forall (t :: T). ErrorScope t => Value t -> r) -> r Source # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text () Source # | |
IsError MText Source # | Use this for internal errors only. Normal error scenarios should use the mechanism of custom errors, see below. |
Defined in Lorentz.Errors Methods errorToVal :: MText -> (forall (t :: T). ErrorScope t => Value t -> r) -> r Source # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text MText Source # | |
IsError UnspecifiedError Source # | |
Defined in Lorentz.Errors Methods errorToVal :: UnspecifiedError -> (forall (t :: T). ErrorScope t => Value t -> r) -> r Source # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text UnspecifiedError Source # | |
(CustomErrorHasDoc tag, KnownError (ErrorArg tag), IsoValue (ErrorArg tag)) => IsError (CustomError tag) Source # | |
Defined in Lorentz.Errors Methods errorToVal :: CustomError tag -> (forall (t :: T). ErrorScope t => Value t -> r) -> r Source # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text (CustomError tag) Source # | |
(Typeable r, NiceConstant r, ErrorHasDoc (VoidResult r)) => IsError (VoidResult r) Source # | |
Defined in Lorentz.Macro Methods errorToVal :: VoidResult r -> (forall (t :: T). ErrorScope t => Value t -> r0) -> r0 Source # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text (VoidResult r) Source # | |
(Typeable arg, IsError (CustomError tag), TypeErrorUnless (arg == ()) notVoidError, arg ~ ErrorArg tag, notVoidError ~ ('Text "This error requires argument of type " :<>: 'ShowType (ErrorArg tag))) => IsError (arg -> CustomError tag) Source # | If |
Defined in Lorentz.Errors Methods errorToVal :: (arg -> CustomError tag) -> (forall (t :: T). ErrorScope t => Value t -> r) -> r Source # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text (arg -> CustomError tag) Source # |
type ErrorScope t = (Typeable t, ConstantScope t) Source #
isoErrorToVal :: (KnownError e, IsoValue e) => e -> (forall t. ErrorScope t => Value t -> r) -> r Source #
Implementation of errorToVal
via IsoValue
.
isoErrorFromVal :: (Typeable t, Typeable (ToT e), IsoValue e) => Value t -> Either Text e Source #
Implementation of errorFromVal
via IsoValue
.
failUnexpected :: MText -> s :-> t Source #
Fail, providing a reference to the place in the code where this function is called.
Like error
in Haskell code, this instruction is for internal errors only.
customErrorDocHaskellRepGeneral :: (SingI (ToT (ErrorArg tag)), IsError (CustomError tag), TypeHasDoc (ErrorArg tag), CustomErrorHasDoc tag) => Text -> Proxy tag -> Markdown Source #
Description of error representation in Haskell.
errorTagToMText :: Label tag -> MText Source #
Demote error tag to term level.
errorTagToText :: forall tag. KnownSymbol tag => Text Source #
failCustom :: forall tag err s any. (err ~ ErrorArg tag, CustomErrorHasDoc tag, KnownError err) => Label tag -> (err ': s) :-> any Source #
Fail with given custom error.
failCustom_ :: forall tag s any notVoidErrorMsg. (RequireNoArgError tag notVoidErrorMsg, CustomErrorHasDoc tag) => Label tag -> s :-> any Source #
Specialization of failCustom
for no-arg errors.
typeDocMdDescriptionReferToError :: forall e. IsError e => Markdown Source #
Implementation of typeDocMdDescription
(of TypeHasDoc
typeclass)
for Haskell types which sole purpose is to be error.
entrypointDoc :: QuasiQuoter Source #
QuasiQuote that helps generating ParameterHasEntrypoints
instance.
Usage:
[entrypointDoc| Parameter <parameter-type> <optional-root-annotation> |] [entrypointDoc| Parameter plain |] [entrypointDoc| Parameter plain "root"|]
See this tutorial which includes this quasiquote.
errorDoc :: QuasiQuoter Source #
QuasiQuote that helps generating CustomErrorHasDoc
instance.
Usage:
[errorDoc| <error-name> <error-type> <error-description> |] [errorDoc| "errorName" exception "Error description" |]
See this tutorial which includes this quasiquote.
typeDoc :: QuasiQuoter Source #
QuasiQuote that helps generating TypeHasDoc
instance.
Usage:
[typeDoc| <type> <description> |] [typeDoc| Storage "This is storage description" |]
See this tutorial which includes this quasiquote.
type ErrorTagExclusions = HashSet MText Source #
Tags excluded from map.
type ErrorTagMap = Bimap Natural MText Source #
This is a bidirectional map with correspondence between numeric and textual error tags.
gatherErrorTags :: (inp :-> out) -> HashSet MText Source #
Find all textual error tags that are used in typical
FAILWITH
patterns within given instruction.
Map them to natural numbers.
addNewErrorTags :: ErrorTagMap -> HashSet MText -> ErrorTagMap Source #
Add more error tags to an existing ErrorTagMap
. It is useful when
your contract consists of multiple parts (e. g. in case of contract
upgrade), you have existing map for some part and want to add tags
from another part to it.
You can pass empty map as existing one if you just want to build
ErrorTagMap
from a set of textual tags. See buildErrorTagMap
.
buildErrorTagMap :: HashSet MText -> ErrorTagMap Source #
Build ErrorTagMap
from a set of textual tags.
excludeErrorTags :: HasCallStack => ErrorTagExclusions -> ErrorTagMap -> ErrorTagMap Source #
Remove some error tags from map. This way you say to remain these string tags intact, while others will be converted to numbers when this map is applied.
Note that later you have to apply this map using
applyErrorTagMapWithExclusions
, otherwise an error would be raised.
applyErrorTagMap :: HasCallStack => ErrorTagMap -> (inp :-> out) -> inp :-> out Source #
For each typical FAILWITH
that uses a string to represent error
tag this function changes error tag to be a number using the
supplied conversion map.
It assumes that supplied map contains all such strings
(and will error out if it does not).
It will always be the case if you gather all error tags using
gatherErrorTags
and build ErrorTagMap
from them using addNewErrorTags
.
applyErrorTagMapWithExclusions :: HasCallStack => ErrorTagMap -> ErrorTagExclusions -> (inp :-> out) -> inp :-> out Source #
Similar to applyErrorTagMap
, but for case when you have excluded some
tags from map via excludeErrorTags
.
Needed, because both excludeErrorTags
and this function do not tolerate
unknown errors in contract code (for your safety).
useNumericErrors :: HasCallStack => (inp :-> out) -> (inp :-> out, ErrorTagMap) Source #
This function implements the simplest scenario of using this module's functionality: 1. Gather all error tags from a single instruction. 2. Turn them into error conversion map. 3. Apply this conversion.
errorFromValNumeric :: (KnownT t, IsError e) => ErrorTagMap -> Value t -> Either Text e Source #
If you apply numeric error representation in your contract, errorFromVal
will stop working because it doesn't know about this
transformation.
This function takes this transformation into account.
If a number is used as a tag, but it is not found in the passed
map, we conservatively preserve that number (because this whole
approach is rather a heuristic).
errorToValNumeric :: IsError e => ErrorTagMap -> e -> (forall t. ErrorScope t => Value t -> r) -> r Source #
If you apply numeric error representation in your contract, errorToVal
will stop working because it doesn't know about this
transformation.
This function takes this transformation into account.
If a string is used as a tag, but it is not found in the passed
map, we conservatively preserve that string (because this whole
approach is rather a heuristic).
Replacement for uninhabited type.
Instances
Generic Empty Source # | |
TypeHasDoc Empty Source # | |
Defined in Lorentz.Empty Associated Types type TypeDocFieldDescriptions Empty :: FieldDescriptions # Methods typeDocName :: Proxy Empty -> Text # typeDocMdDescription :: Markdown # typeDocMdReference :: Proxy Empty -> WithinParens -> Markdown # typeDocDependencies :: Proxy Empty -> [SomeDocDefinitionItem] # typeDocHaskellRep :: TypeDocHaskellRep Empty # typeDocMichelsonRep :: TypeDocMichelsonRep Empty # | |
IsoValue Empty Source # | |
HasAnnotation Empty Source # | |
Defined in Lorentz.Empty Methods getAnnotation :: FollowEntrypointFlag -> Notes (ToT Empty) Source # | |
type Rep Empty Source # | |
Defined in Lorentz.Empty | |
type TypeDocFieldDescriptions Empty Source # | |
Defined in Lorentz.Empty | |
type ToT Empty Source # | |
Defined in Lorentz.Empty |
type Coercible_ a b = (MichelsonCoercible a b, CanCastTo a b, CanCastTo b a) Source #
Coercions between a
to b
are permitted and safe.
type Castable_ a b = (MichelsonCoercible a b, CanCastTo a b) Source #
Coercion from a
to b
is permitted and safe.
class CanCastTo a b where Source #
Explicitly allowed coercions.
a
proclaims that CanCastTo
ba
can be casted to b
without violating
any invariants of b
.
This relation is reflexive; it may be symmetric or not.
It tends to be composable: casting complex types usually requires permission
to cast their respective parts; for such types consider using castDummyG
as implementation of the method of this typeclass.
For cases when a cast from a
to b
requires some validation, consider
rather making a dedicated function which performs the necessary checks and
then calls forcedCoerce
.
Minimal complete definition
Nothing
Methods
castDummy :: Proxy a -> Proxy b -> () Source #
An optional method which helps passing -Wredundant-constraints check. Also, you can set specific implementation for it with specific sanity checks.
Instances
type MichelsonCoercible a b = ToT a ~ ToT b Source #
Whether two types have the same Michelson representation.
forcedCoerce :: Coercible a b => a -> b Source #
Coercion for Haskell world.
We discourage using this function on Lorentz types, consider using coerce
instead.
One of the reasons forthat is that in Lorentz it's common to declare types as
newtypes consisting of existing primitives, and forcedCoerce
tends to ignore
all phantom type variables of newtypes thus violating their invariants.
forcedCoerce_ :: MichelsonCoercible a b => (a & s) :-> (b & s) Source #
Convert between values of types that have the same representation.
This function is not safe in a sense that this allows breaking invariants of
casted type (example: UStore
) or may stop compile on code changes (example:
coercion of pair to a datatype with two fields will break if new field is
added).
Still, produced Michelson code will always be valid.
Prefer using one of more specific functions from this module.
gForcedCoerce_ :: MichelsonCoercible (t a) (t b) => (t a ': s) :-> (t b ': s) Source #
fakeCoerce :: s1 :-> s2 Source #
Convert between two stacks via failing.
fakeCoercing :: (s1 :-> s2) -> s1' :-> s2' Source #
coerceWrap :: forall a s. Wrappable a => (Unwrappable a ': s) :-> (a ': s) Source #
Specialized version of coerce_
to wrap into a haskell newtype.
coerceUnwrap :: forall a s. Wrappable a => (a ': s) :-> (Unwrappable a ': s) Source #
Specialized version of coerce_
to unwrap a haskell newtype.
toNamed :: Label name -> (a ': s) :-> (NamedF Identity a name ': s) Source #
Lift given value to a named value.
checkedCoerce :: forall a b. (CanCastTo a b, Coercible a b) => a -> b Source #
Coercion in Haskell world which respects CanCastTo
.
checkedCoerce_ :: forall a b s. Castable_ a b => (a ': s) :-> (b ': s) Source #
Coerce between types which have an explicit permission for that in the
face of CanCastTo
constraint.
checkedCoercing_ :: forall a b s. Coercible_ a b => ((b ': s) :-> (b ': s)) -> (a ': s) :-> (a ': s) Source #
Pretends that the top item of the stack was coerced.
allowCheckedCoerceTo :: forall b a. Dict (CanCastTo a b) Source #
Locally provide given CanCastTo
instance.
allowCheckedCoerce :: forall a b. Dict (CanCastTo a b, CanCastTo b a) Source #
Locally provide bidirectional CanCastTo
instance.
castDummyG :: (Generic a, Generic b, GCanCastTo (Rep a) (Rep b)) => Proxy a -> Proxy b -> () Source #
Implementation of castDummy
for types composed from smaller types.
It helps to ensure that all necessary constraints are requested in instance
head.
type PickMarkedFields marker template = GPickMarkedFields marker (Rep template) Source #
Collect all fields with the given marker.
type GetUStoreFieldMarker store name = FSMarker (GetUStore name store) Source #
Get kind of field.
type GetUStoreField store name = FSValue (GetUStore name store) Source #
Get type of plain field. This ignores marker with field type.
type GetUStoreValue store name = MSValue (GetUStore name store) Source #
Get type of submap value.
type GetUStoreKey store name = MSKey (GetUStore name store) Source #
Get type of submap key.
class KnownUStoreMarker (marker :: UStoreMarkerType) where Source #
Allows to specify format of key under which fields of this type are stored. Useful to avoid collisions.
Minimal complete definition
Nothing
Associated Types
type ShowUStoreField marker v :: ErrorMessage Source #
Display type-level information about UStore field with given marker and field value type. Used for error messages.
Methods
mkFieldMarkerUKey :: MText -> ByteString Source #
By field name derive key under which field should be stored.
default mkFieldMarkerUKey :: MText -> ByteString Source #
Instances
KnownUStoreMarker UMarkerPlainField Source # | |
Defined in Lorentz.UStore.Types Associated Types type ShowUStoreField UMarkerPlainField v :: ErrorMessage Source # Methods mkFieldMarkerUKey :: MText -> ByteString Source # |
type UStoreField = UStoreFieldExt UMarkerPlainField Source #
Just a plain field used as data.
type UStoreMarkerType = UStoreMarker -> Type Source #
Specific kind used to designate markers for UStoreFieldExt
.
We suggest that fields may serve different purposes and so annotated with special markers accordingly, which influences translation to Michelson. See example below.
This Haskell kind is implemented like that because we want markers to differ from all
other types in kind; herewith UStoreMarkerType
is still an open kind
(has potentially infinite number of inhabitants).
newtype UStoreFieldExt (m :: UStoreMarkerType) (v :: Type) Source #
Describes plain field in the storage.
Constructors
UStoreField | |
Fields
|
Instances
Eq v => Eq (UStoreFieldExt m v) Source # | |
Defined in Lorentz.UStore.Types Methods (==) :: UStoreFieldExt m v -> UStoreFieldExt m v -> Bool # (/=) :: UStoreFieldExt m v -> UStoreFieldExt m v -> Bool # | |
Show v => Show (UStoreFieldExt m v) Source # | |
Defined in Lorentz.UStore.Types Methods showsPrec :: Int -> UStoreFieldExt m v -> ShowS # show :: UStoreFieldExt m v -> String # showList :: [UStoreFieldExt m v] -> ShowS # | |
Arbitrary v => Arbitrary (UStoreFieldExt m v) Source # | |
Defined in Lorentz.UStore.Types Methods arbitrary :: Gen (UStoreFieldExt m v) # shrink :: UStoreFieldExt m v -> [UStoreFieldExt m v] # |
Describes one virtual big map in the storage.
Constructors
UStoreSubMap | |
Fields
|
data UStore (a :: Type) Source #
Gathers multple fields and BigMap
s under one object.
Type argument of this datatype stands for a "store template" -
a datatype with one constructor and multiple fields, each containing
an object of type UStoreField
or |~>
and corresponding to single
virtual field or BigMap
respectively.
It's also possible to parameterize it with a larger type which is
a product of types satisfying the above property.
Instances
type UStoreTraversable way a = (Generic a, GUStoreTraversable way (Rep a), UStoreTraversalWay way) Source #
Constraint for UStore traversal.
class KnownUStoreMarker marker => UStoreMarkerHasDoc (marker :: UStoreMarkerType) where Source #
Instantiated for documented UStore markers.
Methods
ustoreMarkerKeyEncoding :: Text -> Text Source #
Specifies key encoding.
You accept description of field name, and should return how is it encoded
as key of big_map bytes bytes
.
Instances
UStoreMarkerHasDoc UMarkerPlainField Source # | |
Defined in Lorentz.UStore.Doc Methods ustoreMarkerKeyEncoding :: Text -> Text Source # |
class Typeable template => UStoreTemplateHasDoc template where Source #
Information for UStore template required for documentation.
You only need to instantiate this for templates used directly in UStore, nested subtemplates do not need this instance.
Minimal complete definition
Methods
ustoreTemplateDocName :: Text Source #
UStore template name as it appears in documentation.
Should be only 1 word.
default ustoreTemplateDocName :: (Generic template, KnownSymbol (GenericTypeName template)) => Text Source #
ustoreTemplateDocDescription :: Markdown Source #
Description of template.
ustoreTemplateDocContents :: Markdown Source #
Description of template entries.
default ustoreTemplateDocContents :: UStoreTraversable DocumentTW template => Markdown Source #
ustoreTemplateDocDependencies :: [SomeTypeWithDoc] Source #
default ustoreTemplateDocDependencies :: UStoreTraversable DocumentTW template => [SomeTypeWithDoc] Source #
Instances
newtype MigrationScript (oldStore :: Type) (newStore :: Type) Source #
Code of migration for UStore
.
Invariant: preferably should fit into op size / gas limits (quite obvious). Often this stands for exactly one stage of migration (one Tezos transaction).
Constructors
MigrationScript | |
Fields |
Instances
data UStoreMigration (oldTempl :: Type) (newTempl :: Type) Source #
Keeps information about migration between UStore
s with two given
templates.
Instances
MapLorentzInstr (UStoreMigration os ns) Source # | |
Defined in Lorentz.UStore.Migration.Base Methods mapLorentzInstr :: (forall (i :: [Type]) (o :: [Type]). (i :-> o) -> i :-> o) -> UStoreMigration os ns -> UStoreMigration os ns Source # |
migrationToLambda :: UStoreMigration oldTemplate newTemplate -> Lambda (UStore oldTemplate) (UStore newTemplate) Source #
Turn Migration
into a whole piece of code for transforming storage.
This is not want you'd want to use for contract deployment because of gas and operation size limits that Tezos applies to transactions.
mkUStoreMigration :: Lambda (MUStore oldTempl newTempl (BuildDiff oldTempl newTempl) '[]) (MUStore oldTempl newTempl '[] _1) -> UStoreMigration oldTempl newTempl Source #
Safe way to create migration scripts for UStore
.
You have to supply a code which would transform MUStore
,
coverring required diff step-by-step.
All basic instructions work, also use migrate*
functions
from this module to operate with MUStore
.
This method produces a whole migration, it cannot be splitted in batches.
In case if your migration is too big to be applied within a single
transaction, use mkUStoreBatchedMigration
.
migrationToScriptI :: UStoreMigration os ns -> Identity (MigrationScript os ns) Source #
Get migration script in case of simple (non-batched) migration.
migrationToScript :: UStoreMigration os ns -> MigrationScript os ns Source #
Get migration script in case of simple (non-batched) migration.
liftUStore :: (Generic template, RequireAllUniqueFields template) => Label name -> (UStore (GetFieldType template name) ': s) :-> (UStore template ': s) Source #
Lift an UStore
to another UStore
which contains all the entries
of the former under given field.
This function is not intended for use in migrations, only in normal entry points.
Note that this function ensures that template of resulting store
does not contain inner nested templates with duplicated fields,
otherwise UStore
invariants could get broken.
unliftUStore :: Generic template => Label name -> (UStore template ': s) :-> (UStore (GetFieldType template name) ': s) Source #
Unlift an UStore
to a smaller UStore
which is part of the former.
This function is not intended for use in migrations, only in normal entry points.
Surprisingly, despite smaller UStore
may have extra entries,
this function is safe when used in contract code.
Truly, all getters and setters are still safe to use.
Also, there is no way for the resulting small UStore
to leak outside
of the contract since the only place where big_map
can appear
is contract storage, so this small UStore
can be either dropped
or lifted back via liftUStore
to appear as part of the new contract's state.
When this function is run as part of standalone instructions sequence,
not as part of contract code (e.g. in tests), you may get an UStore
with entries not inherent to it.
newtype VoidResult r Source #
Newtype over void result type used in tests to distinguish successful void result from other errors.
Usage example: lExpectFailWith (== VoidResult roleMaster)`
This error is special - it can contain arguments of different types depending on entrypoint which raises it.
Constructors
VoidResult | |
Fields
|
Instances
data Void_ (a :: Type) (b :: Type) Source #
void
type synonym as described in A1.
Constructors
Void_ | |
Fields
|
Instances
data View (a :: Type) (r :: Type) Source #
view
type synonym as described in A1.
Constructors
View | |
Fields
|
Instances
class UpdateN (n :: Peano) (s :: [Type]) (a :: Type) (b :: Type) mid tail where Source #
Methods
updateNImpl :: ('[a, b] :-> '[b]) -> (a ': s) :-> s Source #
Instances
s ~ (x ': (b ': tail)) => UpdateN ('S ('S 'Z)) s a b (mid :: k) (tail :: [Type]) Source # | |
Defined in Lorentz.Macro Methods updateNImpl :: ('[a, b] :-> '[b]) -> (a ': s) :-> s Source # | |
s ~ (b ': tail) => UpdateN ('S 'Z) s a b (mid :: k) (tail :: [Type]) Source # | |
Defined in Lorentz.Macro Methods updateNImpl :: ('[a, b] :-> '[b]) -> (a ': s) :-> s Source # | |
ConstraintUpdateNLorentz ('S ('S n)) s a b mid tail => UpdateN ('S ('S ('S n))) s a b (mid :: [Type]) (tail :: [Type]) Source # | |
Defined in Lorentz.Macro Methods updateNImpl :: ('[a, b] :-> '[b]) -> (a ': s) :-> s Source # |
type ConstraintUpdateNLorentz (n :: Peano) (s :: [Type]) (a :: Type) (b :: Type) (mid :: [Type]) (tail :: [Type]) = (UpdateNConstraint' T n (ToTs s) (ToT a) (ToT b) (ToTs mid) (ToTs tail), UpdateNConstraint' Type n s a b mid tail) Source #
Constraint for updateN that combines kind-agnostic constraint for Lorentz (Haskell) types and for our typed Michelson.
class ReplaceN (n :: Peano) (s :: [Type]) (a :: Type) mid tail where Source #
Methods
replaceNImpl :: (a ': s) :-> s Source #
Instances
s ~ (a ': xs) => ReplaceN ('S 'Z) s a (mid :: k1) (tail :: k2) Source # | |
Defined in Lorentz.Macro Methods replaceNImpl :: (a ': s) :-> s Source # | |
ConstraintReplaceNLorentz ('S n) s a mid tail => ReplaceN ('S ('S n)) s a (mid :: [Type]) (tail :: [Type]) Source # | |
Defined in Lorentz.Macro Methods replaceNImpl :: (a ': s) :-> s Source # |
type ConstraintReplaceNLorentz (n :: Peano) (s :: [Type]) (a :: Type) (mid :: [Type]) (tail :: [Type]) = (ReplaceNConstraint' T n (ToTs s) (ToT a) (ToTs mid) (ToTs tail), ReplaceNConstraint' Type n s a mid tail) Source #
Constraint for replaceN that combines kind-agnostic constraint for Lorentz (Haskell) types and for our typed Michelson.
mapInsert :: (MapInstrs map, NiceComparable k) => (k ': (v ': (map k v ': s))) :-> (map k v ': s) Source #
Insert given element into map.
mapInsertNew :: (MapInstrs map, NiceComparable k, KnownValue e) => (forall s0. (k ': s0) :-> (e ': s0)) -> (k ': (v ': (map k v ': s))) :-> (map k v ': s) Source #
Insert given element into map, ensuring that it does not overwrite any existing entry.
As first argument accepts container name (for error message).
deleteMap :: forall k v s. (MapInstrs map, NiceComparable k, KnownValue v) => (k ': (map k v ': s)) :-> (map k v ': s) Source #
Delete element from the map.
class DuupX (n :: Peano) (s :: [Type]) (a :: Type) s1 tail where Source #
Instances
s ~ (a ': xs) => DuupX ('S 'Z) s a (s1 :: k1) (tail :: k2) Source # | |
Defined in Lorentz.Macro | |
DuupX ('S ('S 'Z)) (b ': (a ': xs)) a (s1 :: k1) (tail :: k2) Source # | |
Defined in Lorentz.Macro | |
ConstraintDuupXLorentz ('S ('S n)) s a s1 tail => DuupX ('S ('S ('S n))) s a (s1 :: [Type]) (tail :: [Type]) Source # | |
Defined in Lorentz.Macro |
type ConstraintDuupXLorentz (n :: Peano) (s :: [Type]) (a :: Type) (s1 :: [Type]) (tail :: [Type]) = (DuupXConstraint' T n (ToTs s) (ToT a) (ToTs s1) (ToTs tail), DuupXConstraint' Type n s a s1 tail) Source #
Constraint for duupX that combines kind-agnostic constraint for Lorentz (Haskell) types and for our typed Michelson.
Warning: fail_
remains in code
Analog of the FAIL macro in Michelson. Its usage is discouraged because it doesn't carry any information about failure.
dropX :: forall (n :: Nat) a inp out s s'. (ConstraintDIPNLorentz (ToPeano n) inp out s s', s ~ (a ': s')) => inp :-> out Source #
Custom Lorentz macro that drops element with given index (starting from 0) from the stack.
cloneX :: forall (n :: Nat) a s. CloneX (ToPeano n) a s => (a & s) :-> CloneXT (ToPeano n) a s Source #
Duplicate the top of the stack n
times.
For example, `cloneX @3` has type `a & s :-> a & a & a & a & s`.
duupX :: forall (n :: Nat) a (s :: [Type]) (s1 :: [Type]) (tail :: [Type]). (ConstraintDuupXLorentz (ToPeano (n - 1)) s a s1 tail, DuupX (ToPeano n) s a s1 tail) => s :-> (a ': s) Source #
DUU+P
macro. For example, `duupX @3` is DUUUP
, it puts
the 3-rd (starting from 1) element to the top of the stack.
Note that it is implemented differently for `n ≤ 2` and for `n > 2`.
In the latter case it is implemented using dipN
, dig
and dup
.
In the former case it uses specialized versions.
There is also a minor difference with the implementation of `DUU*P` in
Michelson.
They implement DUUUUP
as `DIP 3 { DUP }; DIG 4`.
We implement it as `DIP 3 { DUP }; DIG 3`. These are equivalent.
Our version is supposedly cheaper, at least it should be packed
more efficiently due to the way numbers are packed.
framedN :: forall n nNat s i i' o o'. (nNat ~ ToPeano n, i' ~ Take nNat i, s ~ Drop nNat i, i ~ (i' ++ s), o ~ (o' ++ s), KnownList i', KnownList o') => (i' :-> o') -> i :-> o Source #
Version of framed
which accepts number of elements on input stack
which should be preserved.
You can treat this macro as calling a Michelson function with given number of arguments.
setInsert :: NiceComparable e => (e & (Set e & s)) :-> (Set e & s) Source #
Insert given element into set.
This is a separate function from updateMap
because stacks they operate with
differ in length.
setInsertNew :: (NiceComparable e, KnownValue err) => (forall s0. (e ': s0) :-> (err ': s0)) -> (e & (Set e & s)) :-> (Set e & s) Source #
Insert given element into set, ensuring that it does not overwrite any existing entry.
As first argument accepts container name.
setDelete :: NiceComparable e => (e & (Set e & s)) :-> (Set e & s) Source #
Delete given element from the set.
replaceN :: forall (n :: Nat) a (s :: [Type]) (s1 :: [Type]) (tail :: [Type]). (ConstraintReplaceNLorentz (ToPeano (n - 1)) s a s1 tail, ReplaceN (ToPeano n) s a s1 tail) => (a ': s) :-> s Source #
Replace nth element (0-indexed) with the one on the top of the stack.
For example, `replaceN 3` replaces the 3rd element with the 0th one.
`replaceN
0` is not a valid operation (and it is not implemented).
`replaceN 1` is equivalent to `swap # drop` (and is the only one implemented
like this).
In all other cases `replaceN
n` will drop the nth element (`dipN n drop`)
and then put the 0th one in its place (`dug
(n-1)`).
updateN :: forall (n :: Nat) a b (s :: [Type]) (mid :: [Type]) (tail :: [Type]). (ConstraintUpdateNLorentz (ToPeano (n - 1)) s a b mid tail, UpdateN (ToPeano n) s a b mid tail) => ('[a, b] :-> '[b]) -> (a ': s) :-> s Source #
Replaces the nth element (0-indexed) with the result of the given "updating"
instruction (binary with the return type equal to the second argument) applied
to the 0th element and the nth element itself.
For example, `updateN 3 cons` replaces the 3rd element with the result of
0 instr` is not a valid operation (and it is not implemented).
`updateN cons
applied to the topmost element and the 3rd one.
`updateN 1 instr` is equivalent to
2 instr` is equivalent to `swap # dip instr` (and so is implemented).
In all other cases `updateN instr
(and so is implemented).
`updateN n instr` will put the topmost element right above
the nth one (`dug
(n-1)`) and then apply the function to them in place
(`dipN @(n-1) instr`).
buildViewTuple :: (WellTypedIsoValue r, TupleF a) => View a r -> Builder Source #
mkView :: ToContractRef r contract => a -> contract -> View a r Source #
Polymorphic version of View
constructor.
unwrapView :: (View a r ': s) :-> ((a, ContractRef r) ': s) Source #
view_ :: NiceParameter r => (forall s0. (a & (storage & s0)) :-> (r ': s0)) -> (View a r & (storage & s)) :-> ((List Operation, storage) & s) Source #
void_ :: forall a b s s' anything. (IsError (VoidResult b), KnownValue b) => ((a & s) :-> (b & s')) -> (Void_ a b & s) :-> anything Source #
pushContractRef :: NiceParameter arg => (forall s0. (FutureContract arg ': s) :-> s0) -> ContractRef arg -> s :-> (ContractRef arg ': s) Source #
Push a value of contract
type.
Doing this via push
instruction is not possible, so we need to perform
extra actions here.
Aside from contract
value itself you will need to specify which error to
throw in case this value is not valid.
type HasUStoreForAllIn store constrained = (Generic store, GHasStoreForAllIn constrained (Rep store)) Source #
Write down all sensisble constraints which given store
satisfies
and apply them to constrained
.
This store should have |~>
and UStoreField
fields in its immediate fields,
no deep inspection is performed.
type HasUField name ty store = (FieldAccessC store name, GetUStoreField store name ~ ty) Source #
This constraint can be used if a function needs to work with big store, but needs to know only about some field of it.
type HasUStore name key value store = (KeyAccessC store name, ValueAccessC store name, GetUStoreKey store name ~ key, GetUStoreValue store name ~ value) Source #
This constraint can be used if a function needs to work with big store, but needs to know only about some submap(s) of it.
It can use all UStore operations for a particular name, key and value without knowing whole template.
ustoreMem :: forall store name s. KeyAccessC store name => Label name -> (GetUStoreKey store name ': (UStore store ': s)) :-> (Bool ': s) Source #
ustoreGet :: forall store name s. (KeyAccessC store name, ValueAccessC store name) => Label name -> (GetUStoreKey store name ': (UStore store ': s)) :-> (Maybe (GetUStoreValue store name) ': s) Source #
ustoreUpdate :: forall store name s. (KeyAccessC store name, ValueAccessC store name) => Label name -> (GetUStoreKey store name ': (Maybe (GetUStoreValue store name) ': (UStore store ': s))) :-> (UStore store ': s) Source #
ustoreInsert :: forall store name s. (KeyAccessC store name, ValueAccessC store name) => Label name -> (GetUStoreKey store name ': (GetUStoreValue store name ': (UStore store ': s))) :-> (UStore store ': s) Source #
ustoreInsertNew :: forall store name s. (KeyAccessC store name, ValueAccessC store name) => Label name -> (forall s0 any. (GetUStoreKey store name ': s0) :-> any) -> (GetUStoreKey store name ': (GetUStoreValue store name ': (UStore store ': s))) :-> (UStore store ': s) Source #
Insert a key-value pair, but fail if it will overwrite some existing entry.
ustoreDelete :: forall store name s. KeyAccessC store name => Label name -> (GetUStoreKey store name ': (UStore store ': s)) :-> (UStore store ': s) Source #
ustoreToField :: forall store name s. FieldAccessC store name => Label name -> (UStore store ': s) :-> (GetUStoreField store name ': s) Source #
ustoreGetField :: forall store name s. FieldAccessC store name => Label name -> (UStore store ': s) :-> (GetUStoreField store name ': (UStore store ': s)) Source #
ustoreSetField :: forall store name s. FieldAccessC store name => Label name -> (GetUStoreField store name ': (UStore store ': s)) :-> (UStore store ': s) Source #
Like setField
, but for UStore
.
migrateGetField :: forall field oldTempl newTempl diff touched fieldTy s. (HasUField field fieldTy oldTempl, RequireUntouched field (field `IsElem` touched)) => Label field -> (MUStore oldTempl newTempl diff touched ': s) :-> (fieldTy ': (MUStore oldTempl newTempl diff touched ': s)) Source #
Get a field present in old version of UStore
.
migrateAddField :: forall field oldTempl newTempl diff touched fieldTy newDiff marker s. ('(UStoreFieldExt marker fieldTy, newDiff) ~ CoverDiff 'DcAdd field diff, HasUField field fieldTy newTempl) => Label field -> (fieldTy ': (MUStore oldTempl newTempl diff touched ': s)) :-> (MUStore oldTempl newTempl newDiff (field ': touched) ': s) Source #
Add a field which was not present before. This covers one addition from the diff and any removals of field with given name.
This function cannot overwrite existing field with the same name, if this
is necessary use migrateOverwriteField
which would declare removal
explicitly.
migrateRemoveField :: forall field oldTempl newTempl diff touched fieldTy newDiff marker s. ('(UStoreFieldExt marker fieldTy, newDiff) ~ CoverDiff 'DcRemove field diff, HasUField field fieldTy oldTempl) => Label field -> (MUStore oldTempl newTempl diff touched ': s) :-> (MUStore oldTempl newTempl newDiff (field ': touched) ': s) Source #
Remove a field which should not be present in new version of storage. This covers one removal from the diff.
In fact, this action could be performed automatically, but since removal is a destructive operation, being explicit about it seems like a good thing.
migrateExtractField :: forall field oldTempl newTempl diff touched fieldTy newDiff marker s. ('(UStoreFieldExt marker fieldTy, newDiff) ~ CoverDiff 'DcRemove field diff, HasUField field fieldTy oldTempl, RequireUntouched field (field `IsElem` touched)) => Label field -> (MUStore oldTempl newTempl diff touched ': s) :-> (fieldTy ': (MUStore oldTempl newTempl newDiff (field ': touched) ': s)) Source #
Get and remove a field from old version of UStore
.
You probably want to use this more often than plain migrateRemoveField
.
migrateOverwriteField :: forall field oldTempl newTempl diff touched fieldTy oldFieldTy marker oldMarker newDiff newDiff0 s. ('(UStoreFieldExt oldMarker oldFieldTy, newDiff0) ~ CoverDiff 'DcRemove field diff, '(UStoreFieldExt marker fieldTy, newDiff) ~ CoverDiff 'DcAdd field newDiff0, HasUField field fieldTy newTempl) => Label field -> (fieldTy ': (MUStore oldTempl newTempl diff touched ': s)) :-> (MUStore oldTempl newTempl newDiff (field ': touched) ': s) Source #
Remove field and write new one in place of it.
This is semantically equivalent to
dip (migrateRemoveField label) >> migrateAddField label
,
but is cheaper.
migrateModifyField :: forall field oldTempl newTempl diff touched fieldTy s. (HasUField field fieldTy oldTempl, HasUField field fieldTy newTempl) => Label field -> (fieldTy ': (MUStore oldTempl newTempl diff touched ': s)) :-> (MUStore oldTempl newTempl diff touched ': s) Source #
Modify field which should stay in new version of storage. This does not affect remaining diff.
mustoreToOld :: RequireBeInitial touched => (MUStore oldTemplate newTemplate remDiff touched ': s) :-> (UStore oldTemplate ': s) Source #
Get the old version of storage.
This can be applied only in the beginning of migration.
In fact this function is not very useful, all required operations should
be available for MUStore
, but leaving it here just in case.
data FillUStoreTW Source #
Declares handlers for UStore filling via lambda.
Instances
data DecomposeUStoreTW Source #
Declares handlers for UStore conversion to template.
Instances
data MkUStoreTW Source #
Declares handlers for UStore creation from template.
Instances
mkUStore :: UStoreTraversable MkUStoreTW template => template -> UStore template Source #
Make UStore
from separate big_map
s and fields.
ustoreDecompose :: forall template. UStoreTraversable DecomposeUStoreTW template => UStore template -> Either Text (UStoreContent, template) Source #
Decompose UStore
into separate big_map
s and fields.
Since this function needs to UNPACK
content of UStore
to actual
keys and values, you have to provide UnpackEnv
.
Along with resulting value, you get a list of UStore
entries which
were not recognized as belonging to any submap or field according to
UStore
's template - this should be empty unless UStore
invariants
were violated.
ustoreDecomposeFull :: forall template. UStoreTraversable DecomposeUStoreTW template => UStore template -> Either Text template Source #
Like ustoreDecompose
, but requires all entries from UStore
to be
recognized.
fillUStore :: UStoreTraversable FillUStoreTW template => template -> UStoreMigration () template Source #
Make migration script which initializes UStore
from scratch.
data Condition arg argl argr outb out where Source #
Predicate for if ... then .. else ...
construction,
defines a kind of operation applied to the top elements of the current stack.
Type arguments mean:
1. Input of if
2. Left branch input
3. Right branch input
4. Output of branches
5. Output of if
Constructors
Holds :: Condition (Bool ': s) s s o o | |
IsSome :: Condition (Maybe a ': s) (a ': s) s o o | |
IsNone :: Condition (Maybe a ': s) s (a ': s) o o | |
IsLeft :: Condition (Either l r ': s) (l ': s) (r ': s) o o | |
IsRight :: Condition (Either l r ': s) (r ': s) (l ': s) o o | |
IsCons :: Condition ([a] ': s) (a ': ([a] ': s)) s o o | |
IsNil :: Condition ([a] ': s) s (a ': ([a] ': s)) o o | |
IsZero :: (UnaryArithOpHs Eq' a, UnaryArithResHs Eq' a ~ Bool) => Condition (a ': s) s s o o | |
IsNotZero :: (UnaryArithOpHs Eq' a, UnaryArithResHs Eq' a ~ Bool) => Condition (a ': s) s s o o | |
IsEq :: NiceComparable a => Condition (a ': (a ': s)) s s o o | |
IsNeq :: NiceComparable a => Condition (a ': (a ': s)) s s o o | |
IsLt :: NiceComparable a => Condition (a ': (a ': s)) s s o o | |
IsGt :: NiceComparable a => Condition (a ': (a ': s)) s s o o | |
IsLe :: NiceComparable a => Condition (a ': (a ': s)) s s o o | |
IsGe :: NiceComparable a => Condition (a ': (a ': s)) s s o o | |
NamedBinCondition :: Condition (a ': (a ': s)) s s o o -> Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o | Explicitly named binary condition, to ensure proper order of stack arguments. |
PreserveArgsBinCondition :: (forall st o. Condition (a ': (b ': st)) st st o o) -> Condition (a ': (b ': s)) (a ': (b ': s)) (a ': (b ': s)) (a ': (b ': s)) s | Provide the compared arguments to |
ifThenElse :: Condition arg argl argr outb out -> (argl :-> outb) -> (argr :-> outb) -> arg :-> out Source #
Defines semantics of if ... then ... else ...
construction.
(<.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o infix 4 Source #
Named version of IsLt
.
In this and similar operators you provide names of accepted stack operands as a safety measure of that they go in the expected order.
(>.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o infix 4 Source #
Named version of IsGt
.
(<=.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o infix 4 Source #
Named version of IsLe
.
(>=.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o infix 4 Source #
Named version of IsGe
.
(==.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o infix 4 Source #
Named version of IsEq
.
(/=.) :: NiceComparable a => Label n1 -> Label n2 -> Condition ((n1 :! a) ': ((n2 :! a) ': s)) s s o o infix 4 Source #
Named version of IsNeq
.
keepIfArgs :: (forall st o. Condition (a ': (b ': st)) st st o o) -> Condition (a ': (b ': s)) (a ': (b ': s)) (a ': (b ': s)) (a ': (b ': s)) s Source #
Condition modifier, makes stack operands of binary comparison to be
available within if
branches.
data NumericErrorWrapper (numTag :: Nat) (err :: Type) Source #
Some error with a numeric tag attached.
Instances
(ErrorHasDoc err, KnownNat numTag, ErrorHasNumericDoc err) => ErrorHasDoc (NumericErrorWrapper numTag err) Source # | |
Defined in Lorentz.Errors.Numeric.Doc Associated Types type ErrorRequirements (NumericErrorWrapper numTag err) Source # Methods errorDocName :: Text Source # errorDocMdCause :: Markdown Source # errorDocMdCauseInEntrypoint :: Markdown Source # errorDocHaskellRep :: Markdown Source # errorDocClass :: ErrorClass Source # errorDocDependencies :: [SomeDocDefinitionItem] Source # errorDocRequirements :: Dict (ErrorRequirements (NumericErrorWrapper numTag err)) Source # | |
type ErrorRequirements (NumericErrorWrapper numTag err) Source # | |
Defined in Lorentz.Errors.Numeric.Doc |
data NumericErrorDocHandler Source #
Handler which changes documentation for one particular error type.
data NumericErrorDocHandlerError Source #
Errors for NumericErrorDocHandler
data DDescribeErrorTagMap Source #
Adds a section which explains error tag mapping.
Constructors
DDescribeErrorTagMap | |
Fields
|
Instances
applyErrorTagToErrorsDoc :: HasCallStack => ErrorTagMap -> (inp :-> out) -> inp :-> out Source #
Modify documentation generated for given code so that all CustomError
mention not their textual error tag rather respective numeric one from the
given map.
If some documented error is not present in the map, it remains unmodified.
This function may fail with error
if contract uses some uncommon errors,
see applyErrorTagToErrorsDocWith
for details.
applyErrorTagToErrorsDocWith :: HasCallStack => [NumericErrorDocHandler] -> ErrorTagMap -> (inp :-> out) -> inp :-> out Source #
Extended version of applyErrorTagToErrorsDoc
which accepts error
handlers.
In most cases that function should be enough for your purposes, but it uses a fixed set of base handlers which may be not enough in case when you define your own errors. In this case define and pass all the necessary handlers to this function.
It fails with error
if some of the errors used in the contract cannot be
handled with given handlers.
customErrorDocHandler :: NumericErrorDocHandler Source #
Handler for all CustomError
s.
voidResultDocHandler :: NumericErrorDocHandler Source #
Handler for VoidResult
.
baseErrorDocHandlers :: [NumericErrorDocHandler] Source #
Handlers for most common errors defined in Lorentz.
type CaseTC dt out inp clauses = (InstrCaseC dt, RMap (CaseClauses dt), RecFromTuple clauses, clauses ~ Rec (CaseClauseL inp out) (CaseClauses dt)) Source #
class CaseArrow name body clause | clause -> name, clause -> body where Source #
Provides "case" arrow which works on different wrappers for clauses.
Methods
(/->) :: Label name -> body -> clause infixr 0 Source #
Lift an instruction to case clause.
You should write out constructor name corresponding to the clause explicitly. Prefix constructor name with "c" letter, otherwise your label will not be recognized by Haskell parser. Passing constructor name can be circumvented but doing so is not recomended as mentioning contructor name improves readability and allows avoiding some mistakes.
Instances
(name ~ AppendSymbol "c" ctor, body ~ (AppendCtorField x inp :-> out)) => CaseArrow name body (CaseClauseL inp out ('CaseClauseParam ctor x)) Source # | |
Defined in Lorentz.ADT Methods (/->) :: Label name -> body -> CaseClauseL inp out ('CaseClauseParam ctor x) Source # |
data CaseClauseL (inp :: [Type]) (out :: [Type]) (param :: CaseClauseParam) where Source #
Lorentz analogy of CaseClause
, it works on plain Type
types.
Constructors
CaseClauseL :: (AppendCtorField x inp :-> out) -> CaseClauseL inp out ('CaseClauseParam ctor x) |
Instances
(name ~ AppendSymbol "c" ctor, body ~ (AppendCtorField x inp :-> out)) => CaseArrow name body (CaseClauseL inp out ('CaseClauseParam ctor x)) Source # | |
Defined in Lorentz.ADT Methods (/->) :: Label name -> body -> CaseClauseL inp out ('CaseClauseParam ctor x) Source # |
type family HasFieldsOfType (dt :: Type) (fs :: [NamedField]) :: Constraint where ... Source #
Shortcut for multiple HasFieldOfType
constraints.
Equations
HasFieldsOfType _ '[] = () | |
HasFieldsOfType dt ((n := ty) ': fs) = (HasFieldOfType dt n ty, HasFieldsOfType dt fs) |
type (:=) n ty = 'NamedField n ty infixr 0 Source #
type HasFieldOfType dt fname fieldTy = (HasField dt fname, GetFieldType dt fname ~ fieldTy) Source #
Like HasField
, but allows constrainting field type.
type HasField dt fname = (InstrGetFieldC dt fname, InstrSetFieldC dt fname) Source #
Allows field access and modification.
toField :: forall dt name st. InstrGetFieldC dt name => Label name -> (dt & st) :-> (GetFieldType dt name & st) Source #
Extract a field of a datatype replacing the value of this datatype with the extracted field.
For this and the following functions you have to specify field name
which is either record name or name attached with (:!)
operator.
toFieldNamed :: forall dt name st. InstrGetFieldC dt name => Label name -> (dt & st) :-> ((name :! GetFieldType dt name) & st) Source #
Like toField
, but leaves field named.
getField :: forall dt name st. InstrGetFieldC dt name => Label name -> (dt & st) :-> (GetFieldType dt name & (dt ': st)) Source #
Extract a field of a datatype, leaving the original datatype on stack.
getFieldNamed :: forall dt name st. InstrGetFieldC dt name => Label name -> (dt & st) :-> ((name :! GetFieldType dt name) & (dt ': st)) Source #
Like getField
, but leaves field named.
setField :: forall dt name st. InstrSetFieldC dt name => Label name -> (GetFieldType dt name ': (dt ': st)) :-> (dt ': st) Source #
Set a field of a datatype.
modifyField :: forall dt name st. (InstrGetFieldC dt name, InstrSetFieldC dt name) => Label name -> (forall st0. (GetFieldType dt name ': st0) :-> (GetFieldType dt name ': st0)) -> (dt & st) :-> (dt & st) Source #
Apply given modifier to a datatype field.
construct :: forall dt st. (InstrConstructC dt, RMap (ConstructorFieldTypes dt)) => Rec (FieldConstructor st) (ConstructorFieldTypes dt) -> st :-> (dt & st) Source #
Make up a datatype. You provide a pack of individual fields constructors.
Each element of the accepted record should be an instruction wrapped with
fieldCtor
function. This instruction will have access to the stack at
the moment of calling construct
.
Instructions have to output fields of the built datatype, one per instruction;
instructions order is expected to correspond to the order of fields in the
datatype.
constructT :: forall dt fctors st. (InstrConstructC dt, RMap (ConstructorFieldTypes dt), fctors ~ Rec (FieldConstructor st) (ConstructorFieldTypes dt), RecFromTuple fctors) => IsoRecTuple fctors -> st :-> (dt & st) Source #
Version of construct
which accepts tuple of field constructors.
constructStack :: forall dt fields st. (InstrConstructC dt, ToTs fields ~ ToTs (ConstructorFieldTypes dt), KnownList fields) => (fields ++ st) :-> (dt & st) Source #
Construct an object from fields on the stack.
deconstruct :: forall dt fields st. (InstrDeconstructC dt, KnownList fields, ToTs fields ~ ToTs (ConstructorFieldTypes dt)) => (dt & st) :-> (fields ++ st) Source #
Decompose a complex object into its fields
fieldCtor :: HasCallStack => (st :-> (f & st)) -> FieldConstructor st f Source #
Lift an instruction to field constructor.
wrap_ :: forall dt name st. InstrWrapC dt name => Label name -> AppendCtorField (GetCtorField dt name) st :-> (dt & st) Source #
Wrap entry in constructor. Useful for sum types.
wrapOne :: forall dt name st. InstrWrapOneC dt name => Label name -> (CtorOnlyField name dt ': st) :-> (dt & st) Source #
Wrap entry in single-field constructor. Useful for sum types.
case_ :: forall dt out inp. (InstrCaseC dt, RMap (CaseClauses dt)) => Rec (CaseClauseL inp out) (CaseClauses dt) -> (dt & inp) :-> out Source #
caseT :: forall dt out inp clauses. CaseTC dt out inp clauses => IsoRecTuple clauses -> (dt & inp) :-> out Source #
Like case_
, accepts a tuple of clauses, which may be more convenient.
If user is experiencing problems with wierd errors about tuples while using
this function, he should take look at Instances
and ensure
that his tuple isn't bigger than generated instances, if so, he should probably
extend number of generated instances.
unwrapUnsafe_ :: forall dt name st. InstrUnwrapC dt name => Label name -> (dt & st) :-> (CtorOnlyField name dt ': st) Source #
Unwrap a constructor with the given name. Useful for sum types.
type family StorageContains store (content :: [NamedField]) :: Constraint where ... Source #
Concise way to write down constraints with expected content of a storage.
Use it like follows:
type StorageConstraint store = StorageContains store [ "fieldInt" := Int , "fieldNat" := Nat , "epsToNat" := Int ::-> Nat , "balances" := Address ~> Int ]
Equations
StorageContains _ '[] = () | |
StorageContains store ((n := (k ~> v)) ': ct) = (StoreHasSubmap store n k v, StorageContains store ct) | |
StorageContains store ((n := (ep ::-> es)) ': ct) = (StoreHasEntrypoint store n ep es, StorageContains store ct) | |
StorageContains store ((n := ty) ': ct) = (StoreHasField store n ty, StorageContains store ct) |
data param ::-> store infix 9 Source #
Indicates a stored entrypoint with the given param
and store
types.
class StoreHasEntrypoint store epName epParam epStore | store epName -> epParam epStore where Source #
Provides operations on stored entrypoints.
store
is the storage containing both the entrypoint epName
(note: it has
to be in a BigMap
to take advantage of lazy evaluation) and the epStore
field this operates on.
Methods
storeEpOps :: StoreEntrypointOps store epName epParam epStore Source #
data StoreEntrypointOps store epName epParam epStore Source #
Datatype containing the full implementation of StoreHasEntrypoint
typeclass.
We use this grouping because in most cases the implementation will be chosen
among the default ones, and initializing all methods at once is simpler
and more consistent.
(One can say that we are trying to emulate the DerivingVia
extension.)
Constructors
StoreEntrypointOps | |
Fields
|
type EntrypointsField param store = BigMap MText (EntrypointLambda param store) Source #
Type synonym of a BigMap
mapping MText
(entrypoint names) to
EntrypointLambda
.
This is useful when defining instances of StoreHasEntrypoint
as a storage
field containing one or more entrypoints (lambdas) of the same type.
type EntrypointLambda param store = Lambda (param, store) ([Operation], store) Source #
Type synonym for a Lambda
that can be used as an entrypoint
class StoreHasSubmap store mname key value | store mname -> key value where Source #
Provides operations on submaps of storage.
Methods
storeSubmapOps :: StoreSubmapOps store mname key value Source #
Instances
HasUStore mname key value templ => StoreHasSubmap (UStore templ) mname key value Source # | |
Defined in Lorentz.UStore.Instances Methods storeSubmapOps :: StoreSubmapOps (UStore templ) mname key value Source # | |
(key ~ key', value ~ value', NiceComparable key) => StoreHasSubmap (Map key' value') name key value Source # |
|
Defined in Lorentz.StoreClass Methods storeSubmapOps :: StoreSubmapOps (Map key' value') name key value Source # | |
(key ~ key', value ~ value', NiceComparable key) => StoreHasSubmap (BigMap key' value') name key value Source # |
|
Defined in Lorentz.StoreClass Methods storeSubmapOps :: StoreSubmapOps (BigMap key' value') name key value Source # |
data StoreSubmapOps store mname key value Source #
Datatype containing the full implementation of StoreHasSubmap
typeclass.
We use this grouping because in most cases the implementation will be chosen
among the default ones, and initializing all methods at once is simpler
and more consistent.
(One can say that we are trying to emulate the DerivingVia
extension.)
Constructors
StoreSubmapOps | |
Fields
|
class StoreHasField store fname ftype | store fname -> ftype where Source #
Provides operations on fields for storage.
Methods
storeFieldOps :: StoreFieldOps store fname ftype Source #
Instances
HasUField fname ftype templ => StoreHasField (UStore templ) fname ftype Source # | |
Defined in Lorentz.UStore.Instances Methods storeFieldOps :: StoreFieldOps (UStore templ) fname ftype Source # |
data StoreFieldOps store fname ftype Source #
Datatype containing the full implementation of StoreHasField
typeclass.
We use this grouping because in most cases the implementation will be chosen
among the default ones, and initializing all methods at once is simpler
and more consistent.
(One can say that we are trying to emulate the DerivingVia
extension.)
Constructors
StoreFieldOps | |
Fields
|
stToField :: StoreHasField store fname ftype => Label fname -> (store ': s) :-> (ftype ': s) Source #
Pick storage field.
stGetField :: StoreHasField store fname ftype => Label fname -> (store ': s) :-> (ftype ': (store ': s)) Source #
Get storage field, preserving the storage itself on stack.
stSetField :: StoreHasField store fname ftype => Label fname -> (ftype ': (store ': s)) :-> (store ': s) Source #
Update storage field.
stMem :: StoreHasSubmap store mname key value => Label mname -> (key ': (store ': s)) :-> (Bool ': s) Source #
Check value presence in storage.
stGet :: (StoreHasSubmap store mname key value, KnownValue value) => Label mname -> (key ': (store ': s)) :-> (Maybe value ': s) Source #
Get value in storage.
stUpdate :: StoreHasSubmap store mname key value => Label mname -> (key ': (Maybe value ': (store ': s))) :-> (store ': s) Source #
Update a value in storage.
stDelete :: forall store mname key value s. (StoreHasSubmap store mname key value, KnownValue value) => Label mname -> (key ': (store ': s)) :-> (store ': s) Source #
Delete a value in storage.
stInsert :: StoreHasSubmap store mname key value => Label mname -> (key ': (value ': (store ': s))) :-> (store ': s) Source #
Add a value in storage.
stInsertNew :: StoreHasSubmap store mname key value => Label mname -> (forall s0 any. (key ': s0) :-> any) -> (key ': (value ': (store ': s))) :-> (store ': s) Source #
Add a value in storage, but fail if it will overwrite some existing entry.
stEntrypoint :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (epParam ': (store ': s)) :-> (([Operation], store) ': s) Source #
Extracts and executes the epName
entrypoint lambda from storage, returing
the updated full storage (store
) and the produced Operation
s.
stToEpLambda :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': s) Source #
Pick stored entrypoint lambda.
stGetEpLambda :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': (store ': s)) Source #
Get stored entrypoint lambda, preserving the storage itself on the stack.
stSetEpLambda :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (EntrypointLambda epParam epStore ': (store ': s)) :-> (store ': s) Source #
Stores the entrypoint lambda in the storage. Fails if already set.
stToEpStore :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (epStore ': s) Source #
Pick the sub-storage that the entrypoint operates on.
stGetEpStore :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (epStore ': (store ': s)) Source #
Get the sub-storage that the entrypoint operates on, preserving the storage itself on the stack.
stSetEpStore :: StoreHasEntrypoint store epName epParam epStore => Label epName -> (epStore ': (store ': s)) :-> (store ': s) Source #
Update the sub-storage that the entrypoint operates on.
storeFieldOpsADT :: HasFieldOfType dt fname ftype => StoreFieldOps dt fname ftype Source #
Implementation of StoreHasField
for case of datatype
keeping a pack of fields.
storeEntrypointOpsADT :: (HasFieldOfType store epmName (EntrypointsField epParam epStore), HasFieldOfType store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore Source #
Implementation of StoreHasEntrypoint
for a datatype keeping a pack of
fields, among which one has contains the entrypoint and another is what such
entrypoint operates on.
storeEntrypointOpsFields :: (StoreHasField store epmName (EntrypointsField epParam epStore), StoreHasField store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore Source #
Implementation of StoreHasEntrypoint
for a datatype that has a StoreHasField
for an EntrypointsField
that contains the entrypoint and a StoreHasField
for the field such entrypoint operates on.
storeEntrypointOpsSubmapField :: (StoreHasSubmap store epmName MText (EntrypointLambda epParam epStore), StoreHasField store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore Source #
Implementation of StoreHasEntrypoint
for a datatype that has a StoreHasSubmap
that contains the entrypoint and a StoreHasField
for the field such
entrypoint operates on.
storeFieldOpsDeeper :: (HasFieldOfType storage fieldsPartName fields, StoreHasField fields fname ftype) => Label fieldsPartName -> StoreFieldOps storage fname ftype Source #
Implementation of StoreHasField
for a data type which has an
instance of StoreHasField
inside.
For instance, it can be used for top-level storage.
storeSubmapOpsDeeper :: (HasFieldOfType storage bigMapPartName fields, StoreHasSubmap fields mname key value) => Label bigMapPartName -> StoreSubmapOps storage mname key value Source #
Implementation of StoreHasSubmap
for a data type which has an
instance of StoreHasSubmap
inside.
For instance, it can be used for top-level storage.
storeEntrypointOpsDeeper :: (HasFieldOfType store nameInStore substore, StoreHasEntrypoint substore epName epParam epStore) => Label nameInStore -> StoreEntrypointOps store epName epParam epStore Source #
Implementation of StoreHasEntrypoint
for a data type which has an
instance of StoreHasEntrypoint
inside.
For instance, it can be used for top-level storage.
storeSubmapOpsReferTo :: Label name -> StoreSubmapOps storage name key value -> StoreSubmapOps storage desiredName key value Source #
Pretend that given StoreSubmapOps
implementation is made up
for submap with name desiredName
, not its actual name.
Logic of the implementation remains the same.
Use case: imagine that your code requires access to submap named X
,
but in your storage that submap is called Y
.
Then you implement the instance which makes X
refer to Y
:
instance StoreHasSubmap Store X Key Value where storeSubmapOps = storeSubmapOpsReferTo #Y storeSubmapOpsForY
storeFieldOpsReferTo :: Label name -> StoreFieldOps storage name field -> StoreFieldOps storage desiredName field Source #
Pretend that given StoreFieldOps
implementation is made up
for field with name desiredName
, not its actual name.
Logic of the implementation remains the same.
See also storeSubmapOpsReferTo
.
storeEntrypointOpsReferTo :: Label epName -> StoreEntrypointOps store epName epParam epStore -> StoreEntrypointOps store desiredName epParam epStore Source #
Pretend that given StoreEntrypointOps
implementation is made up
for entrypoint with name desiredName
, not its actual name.
Logic of the implementation remains the same.
See also storeSubmapOpsReferTo
.
composeStoreFieldOps :: Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreFieldOps substore nameInSubstore field -> StoreFieldOps store nameInSubstore field Source #
Chain two implementations of field operations.
Suits for a case when your store does not contain its fields directly rather has a nested structure.
composeStoreSubmapOps :: Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreSubmapOps substore mname key value -> StoreSubmapOps store mname key value Source #
Chain implementations of field and submap operations.
composeStoreEntrypointOps :: Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreEntrypointOps substore epName epParam epStore -> StoreEntrypointOps store epName epParam epStore Source #
mkStoreEp :: Label epName -> EntrypointLambda epParam epStore -> EntrypointsField epParam epStore Source #
Utility to create EntrypointsField
s from an entrypoint name (epName
) and
an EntrypointLambda
implementation. Note that you need to merge multiple of
these (with <>
) if your field contains more than one entrypoint lambda.
type family RequireFlatEpDerivation cp deriv :: Constraint where ... Source #
Equations
RequireFlatEpDerivation _ EpdNone = () | |
RequireFlatEpDerivation _ EpdPlain = () | |
RequireFlatEpDerivation cp deriv = TypeError (('Text "Parameter is not flat" :$$: (('Text "For parameter `" :<>: 'ShowType cp) :<>: 'Text "`")) :$$: (('Text "With entrypoints derivation way `" :<>: 'ShowType deriv) :<>: 'Text "`")) |
type family RequireFlatParamEps cp :: Constraint where ... Source #
Equations
RequireFlatParamEps cp = (RequireFlatEpDerivation cp (GetParameterEpDerivation cp), RequireSumType cp) |
class EntryArrow kind name body where Source #
Provides arror for convenient entrypoint documentation
Methods
(#->) :: (Label name, Proxy kind) -> body -> body Source #
Lift entrypoint implementation.
Entrypoint names should go with "e" prefix.
Instances
(name ~ AppendSymbol "e" epName, body ~ ((param & s) :-> out), KnownSymbol epName, DocItem (DEntrypoint kind), TypeHasDoc param, HasAnnotation param, KnownValue param) => EntryArrow (kind :: Type) name body Source # | |
type DocumentEntrypoints kind a = (Generic a, GDocumentEntrypoints kind (Rep a)) Source #
Constraint for documentEntrypoints
.
class KnownSymbol con => DeriveCtorFieldDoc con (cf :: CtorField) where Source #
Pick a type documentation from CtorField
.
Methods
Instances
KnownSymbol con => DeriveCtorFieldDoc con 'NoFields Source # | |
Defined in Lorentz.Entrypoints.Doc Methods | |
(TypeHasDoc ty, HasAnnotation ty, KnownValue ty, KnownSymbol con) => DeriveCtorFieldDoc con ('OneField ty) Source # | |
Defined in Lorentz.Entrypoints.Doc Methods |
data DEntrypointArg Source #
Describes argument of an entrypoint.
Constructors
DEntrypointArg | |
Fields
|
Instances
DocItem DEntrypointArg Source # | |
Defined in Lorentz.Entrypoints.Doc Associated Types type DocItemPlacement DEntrypointArg :: DocItemPlacementKind # type DocItemReferenced DEntrypointArg :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DEntrypointArg -> DocItemRef (DocItemPlacement DEntrypointArg) (DocItemReferenced DEntrypointArg) # docItemToMarkdown :: HeaderLevel -> DEntrypointArg -> Markdown # docItemToToc :: HeaderLevel -> DEntrypointArg -> Markdown # docItemDependencies :: DEntrypointArg -> [SomeDocDefinitionItem] # docItemsOrder :: [DEntrypointArg] -> [DEntrypointArg] # | |
type DocItemPlacement DEntrypointArg Source # | |
Defined in Lorentz.Entrypoints.Doc | |
type DocItemReferenced DEntrypointArg Source # | |
Defined in Lorentz.Entrypoints.Doc |
data ParamBuildingStep Source #
Describes a parameter building step.
This can be wrapping into (Haskell) constructor, or a more complex transformation.
Constructors
PbsWrapIn Text ParamBuildingDesc | Wraps something into constructor with given name.
Constructor should be the one which corresponds to an entrypoint
defined via field annotation, for more complex cases use |
PbsCallEntrypoint EpName | Directly call an entrypoint marked with a field annotation. |
PbsCustom ParamBuildingDesc | Other action. |
PbsUncallable [ParamBuildingStep] | This entrypoint cannot be called, which is possible when an explicit
default entrypoint is present. This is not a true entrypoint but just some
intermediate node in It contains dummy |
Instances
Eq ParamBuildingStep Source # | |
Defined in Lorentz.Entrypoints.Doc Methods (==) :: ParamBuildingStep -> ParamBuildingStep -> Bool # (/=) :: ParamBuildingStep -> ParamBuildingStep -> Bool # | |
Show ParamBuildingStep Source # | |
Defined in Lorentz.Entrypoints.Doc Methods showsPrec :: Int -> ParamBuildingStep -> ShowS # show :: ParamBuildingStep -> String # showList :: [ParamBuildingStep] -> ShowS # | |
Buildable ParamBuildingStep Source # | |
Defined in Lorentz.Entrypoints.Doc Methods build :: ParamBuildingStep -> Builder # |
data ParamBuildingDesc Source #
Constructors
ParamBuildingDesc | |
Fields
|
Instances
Eq ParamBuildingDesc Source # | |
Defined in Lorentz.Entrypoints.Doc Methods (==) :: ParamBuildingDesc -> ParamBuildingDesc -> Bool # (/=) :: ParamBuildingDesc -> ParamBuildingDesc -> Bool # | |
Show ParamBuildingDesc Source # | |
Defined in Lorentz.Entrypoints.Doc Methods showsPrec :: Int -> ParamBuildingDesc -> ShowS # show :: ParamBuildingDesc -> String # showList :: [ParamBuildingDesc] -> ShowS # |
newtype ParamBuilder Source #
When describing the way of parameter construction - piece of incremental builder for this description.
Constructors
ParamBuilder | |
Fields
|
Instances
Eq ParamBuilder Source # | |
Defined in Lorentz.Entrypoints.Doc | |
Show ParamBuilder Source # | |
Defined in Lorentz.Entrypoints.Doc Methods showsPrec :: Int -> ParamBuilder -> ShowS # show :: ParamBuilder -> String # showList :: [ParamBuilder] -> ShowS # | |
Buildable ParamBuilder Source # | |
Defined in Lorentz.Entrypoints.Doc Methods build :: ParamBuilder -> Builder # |
data DEntrypointReference Source #
Constructors
DEntrypointReference Text Anchor |
Instances
DocItem DEntrypointReference Source # | |
Defined in Lorentz.Entrypoints.Doc Associated Types type DocItemPlacement DEntrypointReference :: DocItemPlacementKind # type DocItemReferenced DEntrypointReference :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DEntrypointReference -> DocItemRef (DocItemPlacement DEntrypointReference) (DocItemReferenced DEntrypointReference) # docItemToMarkdown :: HeaderLevel -> DEntrypointReference -> Markdown # docItemToToc :: HeaderLevel -> DEntrypointReference -> Markdown # docItemDependencies :: DEntrypointReference -> [SomeDocDefinitionItem] # docItemsOrder :: [DEntrypointReference] -> [DEntrypointReference] # | |
type DocItemPlacement DEntrypointReference Source # | |
Defined in Lorentz.Entrypoints.Doc | |
type DocItemReferenced DEntrypointReference Source # | |
Defined in Lorentz.Entrypoints.Doc |
data PlainEntrypointsKind Source #
Default value for DEntrypoint
type argument.
Instances
data DEntrypoint (kind :: Type) Source #
Gathers information about single entrypoint.
We assume that entry points might be of different kinds,
which is designated by phantom type parameter.
For instance, you may want to have several groups of entry points
corresponding to various parts of a contract - specifying different kind
type argument for each of those groups will allow you defining different
DocItem
instances with appropriate custom descriptions for them.
Constructors
DEntrypoint | |
Instances
diEntrypointToMarkdown :: HeaderLevel -> DEntrypoint level -> Markdown Source #
Default implementation of docItemToMarkdown
for entry points.
mkPbsWrapIn :: Text -> ParamBuilder -> ParamBuildingStep Source #
Make a ParamBuildingStep
that tells about wrapping an argument into
a constructor with given name and uses given ParamBuilder
as description of
Michelson part.
constructDEpArg :: forall arg. (TypeHasDoc arg, HasAnnotation arg, KnownValue arg) => DEntrypointArg Source #
mkDEpUType :: forall t. (KnownValue t, HasAnnotation t) => Type Source #
mkDEntrypointArgSimple :: forall t. (KnownValue t, HasAnnotation t, TypeHasDoc t) => DEntrypointArg Source #
clarifyParamBuildingSteps :: ParamBuildingStep -> (inp :-> out) -> inp :-> out Source #
Go over contract code and update every occurrence of DEntrypointArg
documentation item, adding the given step to its "how to build parameter"
description.
entryCase_ :: forall dt entrypointKind out inp. (InstrCaseC dt, RMap (CaseClauses dt), DocumentEntrypoints entrypointKind dt) => Proxy entrypointKind -> Rec (CaseClauseL inp out) (CaseClauses dt) -> (dt & inp) :-> out Source #
Like case_
, to be used for pattern-matching on a parameter
or its part.
Modifies documentation accordingly. Including description of
entrypoints' arguments, thus for them you will need to supply
TypeHasDoc
instance.
entryCase :: forall dt entrypointKind out inp clauses. (CaseTC dt out inp clauses, DocumentEntrypoints entrypointKind dt) => Proxy entrypointKind -> IsoRecTuple clauses -> (dt & inp) :-> out Source #
Version of entryCase_
for tuples.
documentEntrypoint :: forall kind epName param s out. (KnownSymbol epName, DocItem (DEntrypoint kind), TypeHasDoc param, HasAnnotation param, KnownValue param) => ((param & s) :-> out) -> (param & s) :-> out Source #
Wrapper for documenting single entrypoint which parameter isn't going to be unwrapped from some datatype.
entryCase
unwraps a datatype, however, sometimes we want to
have entrypoint parameter to be not wrapped into some datatype.
finalizeParamCallingDoc :: forall cp inp out. (NiceParameterFull cp, RequireSumType cp, HasCallStack) => ((cp ': inp) :-> out) -> (cp ': inp) :-> out Source #
Modify param building steps with respect to entrypoints that given parameter declares.
Each contract with entrypoints should eventually call this function, otherwise, in case if contract uses built-in entrypoints feature, the resulting parameter building steps in the generated documentation will not consider entrypoints and thus may be incorrect.
Calling this twice over the same code is also prohibited.
areFinalizedParamBuildingSteps :: [ParamBuildingStep] -> Bool Source #
Whether finalizeParamCallingDoc
has already been applied to these steps.
entryCaseSimple_ :: forall cp out inp. (InstrCaseC cp, RMap (CaseClauses cp), DocumentEntrypoints PlainEntrypointsKind cp, NiceParameterFull cp, RequireFlatParamEps cp) => Rec (CaseClauseL inp out) (CaseClauses cp) -> (cp & inp) :-> out Source #
entryCaseSimple :: forall cp out inp clauses. (CaseTC cp out inp clauses, DocumentEntrypoints PlainEntrypointsKind cp, NiceParameterFull cp, RequireFlatParamEps cp) => IsoRecTuple clauses -> (cp & inp) :-> out Source #
Version of entryCase
for contracts with flat parameter, use it when you
need only one entryCase
all over the contract implementation.
This method calls finalizeParamCallingDoc
inside.
type UParamLinearized p = GUParamLinearized (Rep p) Source #
Entry points template derived from given ADT sum.
type UParamLinearize p = (Generic p, GUParamLinearize (Rep p)) Source #
Constraint required by uparamFromAdt
.
class CaseUParam (entries :: [EntrypointKind]) Source #
Make up a "case" over entry points.
Minimal complete definition
caseUParamUnsafe
Instances
CaseUParam ('[] :: [EntrypointKind]) Source # | |
Defined in Lorentz.UParam Methods caseUParamUnsafe :: forall (inp :: [Type]) (out :: [Type]). Rec (CaseClauseU inp out) '[] -> UParamFallback inp out -> (UParam '[] ': inp) :-> out | |
(KnownSymbol name, CaseUParam entries, NiceUnpackedValue arg) => CaseUParam ((name ?: arg) ': entries) Source # | |
Defined in Lorentz.UParam Methods caseUParamUnsafe :: forall (inp :: [Type]) (out :: [Type]). Rec (CaseClauseU inp out) ((name ?: arg) ': entries) -> UParamFallback inp out -> (UParam ((name ?: arg) ': entries) ': inp) :-> out |
type UParamFallback inp out = ((MText, ByteString) ': inp) :-> out Source #
An action invoked when user-provided entrypoint is not found.
type EntrypointsImpl inp out entries = Rec (CaseClauseU inp out) entries Source #
Implementations of some entry points.
Note that this thing inherits properties of Rec
, e.g. you can
Data.Vinyl.Core.rappend
implementations for two entrypoint sets
when assembling scattered parts of a contract.
data EntrypointLookupError Source #
Constructors
NoSuchEntrypoint MText | |
ArgumentUnpackFailed |
Instances
class UnpackUParam (c :: Type -> Constraint) entries where Source #
This class is needed to implement unpackUParam
.
Methods
unpackUParam :: UParam entries -> Either EntrypointLookupError (MText, ConstrainedSome c) Source #
Turn UParam
into a Haskell value.
Since we don't know its type in compile time, we have to erase it using
ConstrainedSome
. The user of this function can require arbitrary
constraint to hold (depending on how they want to use the result).
Instances
UnpackUParam c ('[] :: [EntrypointKind]) Source # | |
Defined in Lorentz.UParam Methods unpackUParam :: UParam '[] -> Either EntrypointLookupError (MText, ConstrainedSome c) Source # | |
(KnownSymbol name, UnpackUParam c entries, NiceUnpackedValue arg, c arg) => UnpackUParam c ((name ?: arg) ': entries) Source # | |
Defined in Lorentz.UParam Methods unpackUParam :: UParam ((name ?: arg) ': entries) -> Either EntrypointLookupError (MText, ConstrainedSome c) Source # |
data ConstrainedSome (c :: Type -> Constraint) where Source #
This type can store any value that satisfies a certain constraint.
Constructors
ConstrainedSome :: c a => a -> ConstrainedSome c |
Instances
Show (ConstrainedSome Show) Source # | |
Defined in Lorentz.UParam | |
Buildable (ConstrainedSome Buildable) Source # | |
Defined in Lorentz.UParam Methods build :: ConstrainedSome Buildable -> Builder # |
type family RequireUniqueEntrypoints (entries :: [EntrypointKind]) :: Constraint where ... Source #
Ensure that given entry points do no contain duplicated names.
Equations
RequireUniqueEntrypoints entries = RequireAllUnique "entrypoint" (Eval (Map Fst entries)) |
type family LookupEntrypoint (name :: Symbol) (entries :: [EntrypointKind]) :: Type where ... Source #
Get type of entrypoint argument by its name.
Equations
LookupEntrypoint name ('(name, a) ': _) = a | |
LookupEntrypoint name (_ ': entries) = LookupEntrypoint name entries | |
LookupEntrypoint name '[] = TypeError (('Text "Entry point " :<>: 'ShowType name) :<>: 'Text " in not in the entry points list") |
type UParam_ = UParam SomeInterface Source #
Homomorphic version of UParam
, forgets the exact interface.
type SomeInterface = '['("SomeEntrypoints", Void)] Source #
Pseudo value for UParam
type variable.
newtype UParam (entries :: [EntrypointKind]) Source #
Encapsulates parameter for one of entry points. It keeps entrypoint name and corresponding argument serialized.
In Haskell world, we keep an invariant of that contained value relates
to one of entry points from entries
list.
Constructors
UParamUnsafe (MText, ByteString) |
Instances
type (?:) (n :: Symbol) (a :: k) = '(n, a) Source #
A convenient alias for type-level name-something pair.
type EntrypointKind = (Symbol, Type) Source #
An entrypoint is described by two types: its name and type of argument.
mkUParam :: (NicePackedValue a, LookupEntrypoint name entries ~ a, RequireUniqueEntrypoints entries) => Label name -> a -> UParam entries Source #
Construct a UParam
safely.
unwrapUParam :: (UParam entries ': s) :-> ((MText, ByteString) ': s) Source #
Helper instruction which extracts content of UParam
.
uparamFallbackFail :: UParamFallback inp out Source #
Default implementation for UParamFallback
, simply reports an error.
caseUParam :: (CaseUParam entries, RequireUniqueEntrypoints entries) => Rec (CaseClauseU inp out) entries -> UParamFallback inp out -> (UParam entries ': inp) :-> out Source #
Pattern-match on given UParam entries
.
You have to provide all case branches and a fallback action on case when entrypoint is not found.
caseUParamT :: forall entries inp out clauses. (clauses ~ Rec (CaseClauseU inp out) entries, RecFromTuple clauses, CaseUParam entries) => IsoRecTuple clauses -> UParamFallback inp out -> (UParam entries ': inp) :-> out Source #
Like caseUParam
, but accepts a tuple of clauses, not a Rec
.
uparamFromAdt :: UParamLinearize up => up -> UParam (UParamLinearized up) Source #
Make up UParam
from ADT sum.
Entry points template will consist of
(constructorName, constructorFieldType)
pairs.
Each constructor is expected to have exactly one field.
pbsUParam :: forall ctorName. KnownSymbol ctorName => ParamBuildingStep Source #
Note that calling given entrypoints involves constructing UParam
.