| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Indigo.Lorentz
Description
This module is intended to be imported instead of Lorentz by Indigo modules.
The idea is to avoid repeating common hiding rules and to not export any of
Lorentz's Instructions and Macros.
Synopsis
- data Bool
- data Integer
- data Natural
- data Maybe a
- data ByteString
- data Map k a
- withDict :: HasDict c e => e -> (c => r) -> r
- data Set a
- class Default a where
- def :: a
- pbsUParam :: forall (ctorName :: Symbol). KnownSymbol ctorName => ParamBuildingStep
- uparamFromAdt :: UParamLinearize up => up -> UParam (UParamLinearized up)
- caseUParamT :: forall (entries :: [EntrypointKind]) (inp :: [Type]) (out :: [Type]) clauses. (clauses ~ Rec (CaseClauseU inp out) entries, RecFromTuple clauses, CaseUParam entries) => IsoRecTuple clauses -> UParamFallback inp out -> (UParam entries ': inp) :-> out
- caseUParam :: forall (entries :: [EntrypointKind]) (inp :: [Type]) (out :: [Type]). (CaseUParam entries, RequireUniqueEntrypoints entries) => Rec (CaseClauseU inp out) entries -> UParamFallback inp out -> (UParam entries ': inp) :-> out
- uparamFallbackFail :: forall (inp :: [Type]) (out :: [Type]). UParamFallback inp out
- unwrapUParam :: forall (entries :: [EntrypointKind]) (s :: [Type]). (UParam entries ': s) :-> ((MText, ByteString) ': s)
- mkUParam :: forall a (name :: Symbol) (entries :: [EntrypointKind]). (NicePackedValue a, LookupEntrypoint name entries ~ a, RequireUniqueEntrypoints entries) => Label name -> a -> UParam entries
- type EntrypointKind = (Symbol, Type)
- type (?:) (n :: Symbol) (a :: k) = '(n, a)
- newtype UParam (entries :: [EntrypointKind]) = UParamUnsafe (MText, ByteString)
- type SomeInterface = '['("SomeEntrypoints", Void)]
- type UParam_ = UParam SomeInterface
- type family LookupEntrypoint (name :: Symbol) (entries :: [EntrypointKind]) where ...
- type family RequireUniqueEntrypoints (entries :: [EntrypointKind]) where ...
- data ConstrainedSome (c :: Type -> Constraint) where
- ConstrainedSome :: forall (c :: Type -> Constraint) a. c a => a -> ConstrainedSome c
- class UnpackUParam (c :: Type -> Constraint) (entries :: [EntrypointKind]) where
- unpackUParam :: UParam entries -> Either EntrypointLookupError (MText, ConstrainedSome c)
- data EntrypointLookupError
- type EntrypointsImpl (inp :: [Type]) (out :: [Type]) (entries :: [EntrypointKind]) = Rec (CaseClauseU inp out) entries
- type UParamFallback (inp :: [Type]) (out :: [Type]) = ((MText, ByteString) ': inp) :-> out
- class CaseUParam (entries :: [EntrypointKind])
- type UParamLinearize p = (Generic p, GUParamLinearize (Rep p))
- type UParamLinearized p = GUParamLinearized (Rep p)
- entryCaseSimple_ :: forall cp (out :: [Type]) (inp :: [Type]). (InstrCaseC cp, RMap (CaseClauses cp), DocumentEntrypoints PlainEntrypointsKind cp, NiceParameterFull cp, RequireFlatParamEps cp) => Rec (CaseClauseL inp out) (CaseClauses cp) -> (cp ': inp) :-> out
- areFinalizedParamBuildingSteps :: [ParamBuildingStep] -> Bool
- documentEntrypoint :: forall kind (epName :: Symbol) param (s :: [Type]) (out :: [Type]). (KnownSymbol epName, DocItem (DEntrypoint kind), TypeHasDoc param, HasAnnotation param, KnownValue param) => ((param ': s) :-> out) -> (param ': s) :-> out
- clarifyParamBuildingSteps :: forall (inp :: [Type]) (out :: [Type]). ParamBuildingStep -> (inp :-> out) -> inp :-> out
- mkDEntrypointArgSimple :: (KnownValue t, HasAnnotation t, TypeHasDoc t) => DEntrypointArg
- mkDEpUType :: (KnownValue t, HasAnnotation t) => Type
- emptyDEpArg :: DEntrypointArg
- constructDEpArg :: (TypeHasDoc arg, HasAnnotation arg, KnownValue arg) => DEntrypointArg
- mkPbsWrapIn :: Text -> ParamBuilder -> ParamBuildingStep
- entrypointSection :: forall kind (i :: [Type]) (o :: [Type]). EntrypointKindHasDoc kind => Text -> Proxy kind -> (i :-> o) -> i :-> o
- diEntrypointToMarkdown :: HeaderLevel -> DEntrypoint level -> Markdown
- pattern DEntrypointDocItem :: () => DEntrypoint kind -> SomeDocItem
- data DEntrypoint kind = DEntrypoint {}
- class Typeable ep => EntrypointKindHasDoc ep where
- data PlainEntrypointsKind
- data CommonContractBehaviourKind
- data CommonEntrypointsBehaviourKind (kind :: k)
- data DEntrypointReference = DEntrypointReference Text Anchor
- newtype ParamBuilder = ParamBuilder {
- unParamBuilder :: Markdown -> Markdown
- data ParamBuildingDesc = ParamBuildingDesc {}
- data ParamBuildingStep
- data DEntrypointArg = DEntrypointArg {
- epaArg :: Maybe DType
- epaBuilding :: [ParamBuildingStep]
- epaType :: Type
- class KnownSymbol con => DeriveCtorFieldDoc (con :: Symbol) (cf :: CtorField) where
- type DocumentEntrypoints kind a = (Generic a, GDocumentEntrypoints kind (Rep a))
- class EntryArrow (kind :: k) (name :: Symbol) body where
- type family RequireFlatParamEps cp where ...
- type family RequireFlatEpDerivation (cp :: t) deriv where ...
- mkStoreEp :: forall (epName :: Symbol) epParam epStore. Label epName -> EntrypointLambda epParam epStore -> EntrypointsField epParam epStore
- zoomStoreSubmapOps :: forall store (submapName :: Symbol) (nameInSubmap :: Symbol) key value subvalue. (NiceConstant value, NiceConstant subvalue) => Label submapName -> LIso (Maybe value) value -> LIso (Maybe subvalue) subvalue -> StoreSubmapOps store submapName key value -> StoreFieldOps value nameInSubmap subvalue -> StoreSubmapOps store nameInSubmap key subvalue
- composeStoreEntrypointOps :: forall (nameInStore :: Symbol) store substore (epName :: Symbol) epParam epStore. Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreEntrypointOps substore epName epParam epStore -> StoreEntrypointOps store epName epParam epStore
- sequenceStoreSubmapOps :: forall store substore value (name :: Symbol) (subName :: Symbol) key1 key2. (NiceConstant substore, KnownValue value) => Label name -> LIso (Maybe substore) substore -> StoreSubmapOps store name key1 substore -> StoreSubmapOps substore subName key2 value -> StoreSubmapOps store subName (key1, key2) value
- composeStoreSubmapOps :: forall (nameInStore :: Symbol) store substore (mname :: Symbol) key value. Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreSubmapOps substore mname key value -> StoreSubmapOps store mname key value
- composeStoreFieldOps :: forall (nameInStore :: Symbol) store substore (nameInSubstore :: Symbol) field. Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreFieldOps substore nameInSubstore field -> StoreFieldOps store nameInSubstore field
- mapStoreSubmapOpsValue :: forall value1 value2 store (name :: Symbol) key. KnownValue value1 => LIso value1 value2 -> StoreSubmapOps store name key value1 -> StoreSubmapOps store name key value2
- mapStoreSubmapOpsKey :: forall key2 key1 store (name :: Symbol) value. Lambda key2 key1 -> StoreSubmapOps store name key1 value -> StoreSubmapOps store name key2 value
- mapStoreFieldOps :: forall field1 field2 store (name :: Symbol). LIso field1 field2 -> StoreFieldOps store name field1 -> StoreFieldOps store name field2
- storeEntrypointOpsReferTo :: forall (epName :: Symbol) store epParam epStore (desiredName :: Symbol). Label epName -> StoreEntrypointOps store epName epParam epStore -> StoreEntrypointOps store desiredName epParam epStore
- storeFieldOpsReferTo :: forall (name :: Symbol) storage field (desiredName :: Symbol). Label name -> StoreFieldOps storage name field -> StoreFieldOps storage desiredName field
- storeSubmapOpsReferTo :: forall (name :: Symbol) storage key value (desiredName :: Symbol). Label name -> StoreSubmapOps storage name key value -> StoreSubmapOps storage desiredName key value
- storeEntrypointOpsDeeper :: forall store (nameInStore :: Symbol) substore (epName :: Symbol) epParam epStore. (HasFieldOfType store nameInStore substore, StoreHasEntrypoint substore epName epParam epStore) => Label nameInStore -> StoreEntrypointOps store epName epParam epStore
- storeSubmapOpsDeeper :: forall storage (bigMapPartName :: Symbol) fields (mname :: Symbol) key value. (HasFieldOfType storage bigMapPartName fields, StoreHasSubmap fields mname key value) => Label bigMapPartName -> StoreSubmapOps storage mname key value
- storeFieldOpsDeeper :: forall storage (fieldsPartName :: Symbol) fields (fname :: Symbol) ftype. (HasFieldOfType storage fieldsPartName fields, StoreHasField fields fname ftype) => Label fieldsPartName -> StoreFieldOps storage fname ftype
- storeEntrypointOpsSubmapField :: forall store (epmName :: Symbol) epParam epStore (epsName :: Symbol) (epName :: Symbol). (StoreHasSubmap store epmName MText (EntrypointLambda epParam epStore), StoreHasField store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore
- storeEntrypointOpsFields :: forall store (epmName :: Symbol) epParam epStore (epsName :: Symbol) (epName :: Symbol). (StoreHasField store epmName (EntrypointsField epParam epStore), StoreHasField store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore
- storeEntrypointOpsADT :: forall store (epmName :: Symbol) epParam epStore (epsName :: Symbol) (epName :: Symbol). (HasFieldOfType store epmName (EntrypointsField epParam epStore), HasFieldOfType store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore
- storeFieldOpsADT :: forall dt (fname :: Symbol) ftype. HasFieldOfType dt fname ftype => StoreFieldOps dt fname ftype
- stSetEpStore :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (epStore ': (store ': s)) :-> (store ': s)
- stGetEpStore :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (epStore ': (store ': s))
- stToEpStore :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (epStore ': s)
- stSetEpLambda :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (EntrypointLambda epParam epStore ': (store ': s)) :-> (store ': s)
- stGetEpLambda :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': (store ': s))
- stToEpLambda :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': s)
- stEntrypoint :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (epParam ': (store ': s)) :-> (([Operation], store) ': s)
- stSetField :: forall store (fname :: Symbol) ftype (s :: [Type]). StoreHasField store fname ftype => Label fname -> (ftype ': (store ': s)) :-> (store ': s)
- stGetField :: forall store (fname :: Symbol) ftype (s :: [Type]). StoreHasField store fname ftype => Label fname -> (store ': s) :-> (ftype ': (store ': s))
- stToField :: forall store (fname :: Symbol) ftype (s :: [Type]). StoreHasField store fname ftype => Label fname -> (store ': s) :-> (ftype ': s)
- data StoreFieldOps store (fname :: Symbol) ftype = StoreFieldOps {
- sopToField :: forall (s :: [Type]). Label fname -> (store ': s) :-> (ftype ': s)
- sopSetField :: forall (s :: [Type]). Label fname -> (ftype ': (store ': s)) :-> (store ': s)
- class StoreHasField store (fname :: Symbol) ftype | store fname -> ftype where
- storeFieldOps :: StoreFieldOps store fname ftype
- data StoreSubmapOps store (mname :: Symbol) key value = StoreSubmapOps {
- sopMem :: forall (s :: [Type]). Label mname -> (key ': (store ': s)) :-> (Bool ': s)
- sopGet :: forall (s :: [Type]). KnownValue value => Label mname -> (key ': (store ': s)) :-> (Maybe value ': s)
- sopUpdate :: forall (s :: [Type]). Label mname -> (key ': (Maybe value ': (store ': s))) :-> (store ': s)
- sopDelete :: forall (s :: [Type]). Label mname -> (key ': (store ': s)) :-> (store ': s)
- sopInsert :: forall (s :: [Type]). Label mname -> (key ': (value ': (store ': s))) :-> (store ': s)
- class StoreHasSubmap store (mname :: Symbol) key value | store mname -> key value where
- storeSubmapOps :: StoreSubmapOps store mname key value
- type EntrypointLambda param store = Lambda (param, store) ([Operation], store)
- type EntrypointsField param store = BigMap MText (EntrypointLambda param store)
- data StoreEntrypointOps store (epName :: Symbol) epParam epStore = StoreEntrypointOps {
- sopToEpLambda :: forall (s :: [Type]). Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': s)
- sopSetEpLambda :: forall (s :: [Type]). Label epName -> (EntrypointLambda epParam epStore ': (store ': s)) :-> (store ': s)
- sopToEpStore :: forall (s :: [Type]). Label epName -> (store ': s) :-> (epStore ': s)
- sopSetEpStore :: forall (s :: [Type]). Label epName -> (epStore ': (store ': s)) :-> (store ': s)
- class StoreHasEntrypoint store (epName :: Symbol) epParam epStore | store epName -> epParam epStore where
- storeEpOps :: StoreEntrypointOps store epName epParam epStore
- data (k2 :: k) ~> (v :: k1)
- data (param :: k) ::-> (store :: k1)
- type family StorageContains store (content :: [NamedField]) where ...
- unwrapUnsafe_ :: forall dt (name :: Symbol) (st :: [Type]). InstrUnwrapC dt name => Label name -> (dt ': st) :-> (CtorOnlyField name dt ': st)
- wrapOne :: forall dt (name :: Symbol) (st :: [Type]). InstrWrapOneC dt name => Label name -> (CtorOnlyField name dt ': st) :-> (dt ': st)
- wrap_ :: forall dt (name :: Symbol) (st :: [Type]). InstrWrapC dt name => Label name -> AppendCtorField (GetCtorField dt name) st :-> (dt ': st)
- fieldCtor :: forall (st :: [Type]) f. HasCallStack => (st :-> (f ': st)) -> FieldConstructor st f
- deconstruct :: forall dt (fields :: [Type]) (st :: [Type]). (InstrDeconstructC dt, KnownList fields, ToTs fields ~ ToTs (ConstructorFieldTypes dt)) => (dt ': st) :-> (fields ++ st)
- constructStack :: forall dt (fields :: [Type]) (st :: [Type]). (InstrConstructC dt, ToTs fields ~ ToTs (ConstructorFieldTypes dt), KnownList fields) => (fields ++ st) :-> (dt ': st)
- modifyField :: forall dt (name :: Symbol) (st :: [Type]). (InstrGetFieldC dt name, InstrSetFieldC dt name) => Label name -> (forall (st0 :: [Type]). (GetFieldType dt name ': st0) :-> (GetFieldType dt name ': st0)) -> (dt ': st) :-> (dt ': st)
- getFieldNamed :: forall dt (name :: Symbol) (st :: [Type]). InstrGetFieldC dt name => Label name -> (dt ': st) :-> ((name :! GetFieldType dt name) ': (dt ': st))
- getField :: forall dt (name :: Symbol) (st :: [Type]). InstrGetFieldC dt name => Label name -> (dt ': st) :-> (GetFieldType dt name ': (dt ': st))
- toFieldNamed :: forall dt (name :: Symbol) (st :: [Type]). InstrGetFieldC dt name => Label name -> (dt ': st) :-> ((name :! GetFieldType dt name) ': st)
- toField :: forall dt (name :: Symbol) (st :: [Type]). InstrGetFieldC dt name => Label name -> (dt ': st) :-> (GetFieldType dt name ': st)
- type HasFieldOfType dt (fname :: Symbol) fieldTy = (HasField dt fname, GetFieldType dt fname ~ fieldTy)
- data NamedField = NamedField Symbol Type
- type (:=) (n :: Symbol) ty = 'NamedField n ty
- type family HasFieldsOfType dt (fs :: [NamedField]) where ...
- data CaseClauseL (inp :: [Type]) (out :: [Type]) (param :: CaseClauseParam) where
- CaseClauseL :: forall (x :: CtorField) (inp :: [Type]) (out :: [Type]) (ctor :: Symbol). (AppendCtorField x inp :-> out) -> CaseClauseL inp out ('CaseClauseParam ctor x)
- class CaseArrow (name :: Symbol) body clause | clause -> name, clause -> body where
- type CaseTC dt (out :: [Type]) (inp :: [Type]) clauses = (InstrCaseC dt, RMap (CaseClauses dt), RecFromTuple clauses, clauses ~ Rec (CaseClauseL inp out) (CaseClauses dt))
- baseErrorDocHandlers :: [NumericErrorDocHandler]
- voidResultDocHandler :: NumericErrorDocHandler
- customErrorDocHandler :: NumericErrorDocHandler
- applyErrorTagToErrorsDocWith :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => [NumericErrorDocHandler] -> ErrorTagMap -> (inp :-> out) -> inp :-> out
- applyErrorTagToErrorsDoc :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => ErrorTagMap -> (inp :-> out) -> inp :-> out
- data DDescribeErrorTagMap = DDescribeErrorTagMap {
- detmSrcLoc :: Text
- data NumericErrorDocHandlerError
- data NumericErrorDocHandler
- data NumericErrorWrapper (numTag :: Nat) err
- voidResultTag :: MText
- data View a r
- data Void_ a b
- data VoidResult r
- castDummyG :: (Generic a, Generic b, GCanCastTo (Rep a) (Rep b)) => Proxy a -> Proxy b -> ()
- allowCheckedCoerce :: forall k1 k2 (a :: k1) (b :: k2). Dict (CanCastTo a b, CanCastTo b a)
- allowCheckedCoerceTo :: forall k1 k2 (b :: k1) (a :: k2). Dict (CanCastTo a b)
- checkedCoercing_ :: forall a b (s :: [Type]). Coercible_ a b => ((b ': s) :-> (b ': s)) -> (a ': s) :-> (a ': s)
- checkedCoerce_ :: forall a b (s :: [Type]). Castable_ a b => (a ': s) :-> (b ': s)
- checkedCoerce :: (CanCastTo a b, Coercible a b) => a -> b
- fromNamed :: forall (name :: Symbol) a (s :: [Type]). Label name -> (NamedF Identity a name ': s) :-> (a ': s)
- toNamed :: forall (name :: Symbol) a (s :: [Type]). Label name -> (a ': s) :-> (NamedF Identity a name ': s)
- coerceUnwrap :: forall a (s :: [Type]). Wrappable a => (a ': s) :-> (Unwrappable a ': s)
- coerceWrap :: forall a (s :: [Type]). Wrappable a => (Unwrappable a ': s) :-> (a ': s)
- fakeCoercing :: forall (s1 :: [Type]) (s2 :: [Type]) (s1' :: [Type]) (s2' :: [Type]). (s1 :-> s2) -> s1' :-> s2'
- fakeCoerce :: forall (s1 :: [Type]) (s2 :: [Type]). s1 :-> s2
- gForcedCoerce_ :: forall k t (a :: k) (b :: k) (s :: [Type]). MichelsonCoercible (t a) (t b) => (t a ': s) :-> (t b ': s)
- forcedCoerce_ :: forall a b (s :: [Type]). MichelsonCoercible a b => (a ': s) :-> (b ': s)
- forcedCoerce :: Coercible a b => a -> b
- type MichelsonCoercible a b = ToT a ~ ToT b
- class CanCastTo (a :: k) (b :: k1) where
- type Castable_ a b = (MichelsonCoercible a b, CanCastTo a b)
- type Coercible_ a b = (MichelsonCoercible a b, CanCastTo a b, CanCastTo b a)
- errorToValNumeric :: IsError e => ErrorTagMap -> e -> (forall (t :: T). ErrorScope t => Value t -> r) -> r
- errorFromValNumeric :: forall (t :: T) e. (KnownT t, IsError e) => ErrorTagMap -> Value t -> Either Text e
- useNumericErrors :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => (inp :-> out) -> (inp :-> out, ErrorTagMap)
- applyErrorTagMapWithExclusions :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => ErrorTagMap -> ErrorTagExclusions -> (inp :-> out) -> inp :-> out
- applyErrorTagMap :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => ErrorTagMap -> (inp :-> out) -> inp :-> out
- excludeErrorTags :: HasCallStack => ErrorTagExclusions -> ErrorTagMap -> ErrorTagMap
- buildErrorTagMap :: HashSet MText -> ErrorTagMap
- addNewErrorTags :: ErrorTagMap -> HashSet MText -> ErrorTagMap
- gatherErrorTags :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> HashSet MText
- type ErrorTagMap = Bimap Natural MText
- type ErrorTagExclusions = HashSet MText
- typeDoc :: QuasiQuoter
- errorDoc :: QuasiQuoter
- entrypointDoc :: QuasiQuoter
- typeDocMdDescriptionReferToError :: IsError e => Markdown
- isInternalErrorClass :: ErrorClass -> Bool
- errorTagToText :: forall (tag :: Symbol). KnownSymbol tag => Text
- errorTagToMText :: forall (tag :: Symbol). Label tag -> MText
- customErrorDocHaskellRepGeneral :: forall (tag :: Symbol). (SingI (ToT (ErrorArg tag)), IsError (CustomError tag), TypeHasDoc (ErrorArg tag), CustomErrorHasDoc tag) => Text -> Proxy tag -> Markdown
- failUnexpected :: forall (s :: [Type]) (t :: [Type]). MText -> s :-> t
- failUsing :: forall e (s :: [Type]) (t :: [Type]). IsError e => e -> s :-> t
- isoErrorFromVal :: forall (t :: T) e. (Typeable t, Typeable (ToT e), IsoValue e) => Value t -> Either Text e
- isoErrorToVal :: (KnownError e, IsoValue e) => e -> (forall (t :: T). ErrorScope t => Value t -> r) -> r
- type ErrorScope (t :: T) = (Typeable t, ConstantScope t)
- class (Typeable e, ErrorHasDoc e) => IsError e where
- errorToVal :: e -> (forall (t :: T). ErrorScope t => Value t -> r) -> r
- errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text e
- type family ErrorRequirements e
- class Typeable e => ErrorHasDoc e where
- data UnspecifiedError = UnspecifiedError
- data SomeError = (IsError e, Eq e) => SomeError e
- type family ErrorArg (tag :: Symbol)
- data CustomError (tag :: Symbol) = CustomError {}
- type RequireNoArgError (tag :: Symbol) (msg :: ErrorMessage) = (TypeErrorUnless (ErrorArg tag == ()) msg, msg ~ ('Text "Expected no-arg error, but given error requires argument of type " :<>: 'ShowType (ErrorArg tag)))
- data ErrorClass
- class (KnownSymbol tag, TypeHasDoc (ErrorArg tag), IsError (CustomError tag)) => CustomErrorHasDoc (tag :: Symbol) where
- data DError where
- DError :: forall e. ErrorHasDoc e => Proxy e -> DError
- data DThrows where
- DThrows :: forall e. ErrorHasDoc e => Proxy e -> DThrows
- dropT :: forall a (inp :: [Type]) (dinp :: [Type]) (dout :: [Type]) (out :: [Type]). (DipT inp a inp dinp dout out, dinp ~ (a ': dout)) => inp :-> out
- dipT :: forall a (inp :: [Type]) (dinp :: [Type]) (dout :: [Type]) (out :: [Type]). DipT inp a inp dinp dout out => (dinp :-> dout) -> inp :-> out
- dupT :: forall a (st :: [Type]). DupT st a st => st :-> (a ': st)
- class NonZero t
- expressionToScriptExpr :: Expression -> ByteString
- valueToScriptExpr :: NicePackedValue t => t -> ByteString
- lEncodeValue :: NicePrintedValue a => a -> ByteString
- lUnpackValue :: NiceUnpackedValue a => Packed a -> Either UnpackError a
- lPackValue :: NicePackedValue a => a -> Packed a
- lUnpackValueRaw :: NiceUnpackedValue a => ByteString -> Either UnpackError a
- lPackValueRaw :: NicePackedValue a => a -> ByteString
- toHashHs :: forall (alg :: HashAlgorithmKind) bs. (BytesLike bs, KnownHashAlgorithm alg) => bs -> Hash alg bs
- lSignEd22519 :: BytesLike a => SecretKey -> a -> TSignature a
- class (KnownValue bs, ToT bs ~ ToT ByteString) => BytesLike bs where
- toBytes :: bs -> ByteString
- newtype Packed a = Packed {}
- newtype TSignature a = TSignature {}
- newtype Hash (alg :: HashAlgorithmKind) a = HashUnsafe {
- unHash :: ByteString
- class Typeable alg => KnownHashAlgorithm (alg :: HashAlgorithmKind) where
- hashAlgorithmName :: Proxy alg -> Text
- computeHash :: ByteString -> ByteString
- toHash :: forall bs (s :: [Type]). BytesLike bs => (bs ': s) :-> (Hash alg bs ': s)
- data DHashAlgorithm
- data Sha256 (a :: HashAlgoTag)
- data Sha512 (a :: HashAlgoTag)
- data Blake2b (a :: HashAlgoTag)
- mkDEntrypointExample :: NiceParameter a => a -> DEntrypointExample
- cutLorentzNonDoc :: forall (inp :: [Type]) (out :: [Type]) (s :: [Type]). (inp :-> out) -> s :-> s
- renderLorentzDocWithGitRev :: forall (inp :: [Type]) (out :: [Type]). DGitRevision -> (inp :-> out) -> LText
- renderLorentzDoc :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> LText
- buildLorentzDocWithGitRev :: forall (inp :: [Type]) (out :: [Type]). DGitRevision -> (inp :-> out) -> ContractDoc
- buildLorentzDoc :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> ContractDoc
- data DEntrypointExample = ParameterScope t => DEntrypointExample (Value t)
- printLorentzContract :: (NiceParameterFull cp, NiceStorage st) => Bool -> Contract cp st -> LText
- printLorentzValue :: NicePrintedValue v => Bool -> v -> LText
- analyzeLorentz :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> AnalyzerRes
- interpretLorentzLambda :: (IsoValue inp, IsoValue out) => ContractEnv -> Lambda inp out -> inp -> Either MichelsonFailed out
- interpretLorentzInstr :: forall (inp :: [Type]) (out :: [Type]). (IsoValuesStack inp, IsoValuesStack out) => ContractEnv -> (inp :-> out) -> Rec Identity inp -> Either MichelsonFailed (Rec Identity out)
- compileLorentzContract :: (NiceParameterFull cp, NiceStorage st) => Contract cp st -> Contract (ToT cp) (ToT st)
- defaultContract :: ContractCode cp st -> Contract cp st
- compileLorentzWithOptions :: forall (inp :: [Type]) (out :: [Type]). CompilationOptions -> (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- compileLorentz :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- defaultCompilationOptions :: CompilationOptions
- data CompilationOptions = CompilationOptions {
- coOptimizerConf :: Maybe OptimizerConf
- coStringTransformer :: (Bool, MText -> MText)
- coBytesTransformer :: (Bool, ByteString -> ByteString)
- newtype ParameterWrapper deriv cp = ParameterWrapper {
- unParameterWraper :: cp
- type family Unwrappable s
- class ToT s ~ ToT (Unwrappable s) => Wrappable s where
- type Unwrappable s
- type family ArithResHs aop n m
- class (ArithOp aop (ToT n) (ToT m), NiceComparable n, NiceComparable m, ToT (ArithResHs aop n m) ~ ArithRes aop (ToT n) (ToT m)) => ArithOpHs aop n m where
- type ArithResHs aop n m
- type family UnaryArithResHs aop n
- class (UnaryArithOp aop (ToT n), NiceComparable n, ToT (UnaryArithResHs aop n) ~ UnaryArithRes aop (ToT n)) => UnaryArithOpHs aop n where
- type UnaryArithResHs aop n
- data EpdPlain
- data EpdRecursive
- data EpdDelegate
- data EpdWithRoot (r :: Symbol) (epd :: k)
- type List = []
- newtype PrintAsValue a = PrintAsValue a
- type family MemOpKeyHs c
- class (MemOp (ToT c), ToT (MemOpKeyHs c) ~ MemOpKey (ToT c)) => MemOpHs c where
- type MemOpKeyHs c
- type family IsoMapOpRes c b where ...
- type family MapOpResHs c :: Type -> Type
- type family MapOpInpHs c
- class (MapOp (ToT c), ToT (MapOpInpHs c) ~ MapOpInp (ToT c), ToT (MapOpResHs c ()) ~ MapOpRes (ToT c) (ToT ())) => MapOpHs c where
- type MapOpInpHs c
- type MapOpResHs c :: Type -> Type
- type family IterOpElHs c
- class (IterOp (ToT c), ToT (IterOpElHs c) ~ IterOpEl (ToT c)) => IterOpHs c where
- type IterOpElHs c
- class SizeOp (ToT c) => SizeOpHs c
- type family UpdOpParamsHs c
- type family UpdOpKeyHs c
- class (UpdOp (ToT c), ToT (UpdOpKeyHs c) ~ UpdOpKey (ToT c), ToT (UpdOpParamsHs c) ~ UpdOpParams (ToT c)) => UpdOpHs c where
- type UpdOpKeyHs c
- type UpdOpParamsHs c
- type family GetOpValHs c
- type family GetOpKeyHs c
- class (GetOp (ToT c), ToT (GetOpKeyHs c) ~ GetOpKey (ToT c), ToT (GetOpValHs c) ~ GetOpVal (ToT c)) => GetOpHs c where
- type GetOpKeyHs c
- type GetOpValHs c
- class ConcatOp (ToT c) => ConcatOpHs c
- class SliceOp (ToT c) => SliceOpHs c
- type family EModOpResHs n m
- type family EDivOpResHs n m
- 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 EModOpResHs n m
- stackType :: forall (s :: [Type]). s :-> s
- testAssert :: forall (out :: [Type]) (inp :: [Type]). (Typeable (ToTs out), HasCallStack) => Text -> PrintComment (ToTs inp) -> (inp :-> (Bool ': out)) -> inp :-> inp
- printComment :: forall (s :: [Type]). PrintComment (ToTs s) -> s :-> s
- stackRef :: forall (gn :: Nat) (st :: [T]) (n :: Peano). (n ~ ToPeano gn, SingI n, KnownPeano n, RequireLongerThan st n) => PrintComment st
- convertContractRef :: forall cp contract2 contract1. (ToContractRef cp contract1, FromContractRef cp contract2) => contract1 -> contract2
- callingDefTAddress :: NiceParameterFull cp => TAddress cp -> ContractRef (GetDefaultEntrypointArg cp)
- callingTAddress :: forall cp (mname :: Maybe Symbol). NiceParameterFull cp => TAddress cp -> EntrypointRef mname -> ContractRef (GetEntrypointArgCustom cp mname)
- newtype TAddress (p :: k) = TAddress {}
- newtype FutureContract arg = FutureContract {
- unFutureContract :: ContractRef arg
- class ToAddress a where
- class ToTAddress cp a where
- toTAddress :: a -> TAddress cp
- class ToContractRef cp contract where
- toContractRef :: contract -> ContractRef cp
- class FromContractRef cp contract where
- fromContractRef :: ContractRef cp -> contract
- type Entrypoint param store = '[param, store] :-> ContractOut store
- type Entrypoint_ store = '[store] :-> ContractOut store
- optimizeLorentz :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> inp :-> out
- optimizeLorentzWithConf :: forall (inp :: [Type]) (out :: [Type]). OptimizerConf -> (inp :-> out) -> inp :-> out
- transformBytesLorentz :: forall (inp :: [Type]) (out :: [Type]). Bool -> (ByteString -> ByteString) -> (inp :-> out) -> inp :-> out
- transformStringsLorentz :: forall (inp :: [Type]) (out :: [Type]). Bool -> (MText -> MText) -> (inp :-> out) -> inp :-> out
- parseLorentzValue :: KnownValue v => Text -> Either ParseLorentzError v
- (#) :: forall (a :: [Type]) (b :: [Type]) (c :: [Type]). (a :-> b) -> (b :-> c) -> a :-> c
- iWithVarAnnotations :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => [Text] -> (inp :-> out) -> inp :-> out
- iForceNotFail :: forall (i :: [Type]) (o :: [Type]). (i :-> o) -> i :-> o
- iMapAnyCode :: forall (i1 :: [Type]) (i2 :: [Type]) (o :: [Type]). (forall (o' :: [T]). Instr (ToTs i1) o' -> Instr (ToTs i2) o') -> (i1 :-> o) -> i2 :-> o
- iNonFailingCode :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- iAnyCode :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- iGenericIf :: forall (a :: [Type]) (b :: [Type]) (c :: [Type]) (s :: [Type]). (forall (s' :: [T]). Instr (ToTs a) s' -> Instr (ToTs b) s' -> Instr (ToTs c) s') -> (a :-> s) -> (b :-> s) -> c :-> s
- pattern I :: Instr (ToTs inp) (ToTs out) -> inp :-> out
- pattern FI :: (forall (out' :: [T]). Instr (ToTs inp) out') -> inp :-> out
- newtype (inp :: [Type]) :-> (out :: [Type]) = LorentzInstr {
- unLorentzInstr :: RemFail Instr (ToTs inp) (ToTs out)
- type (%>) = (:->)
- type ContractOut st = '[([Operation], st)]
- type ContractCode cp st = '[(cp, st)] :-> ContractOut st
- data SomeContractCode where
- SomeContractCode :: forall cp st. (NiceParameterFull cp, NiceStorage st) => ContractCode cp st -> SomeContractCode
- type (&) a (b :: [Type]) = a ': b
- type Lambda i o = '[i] :-> '[o]
- class MapLorentzInstr instr where
- mapLorentzInstr :: (forall (i :: [Type]) (o :: [Type]). (i :-> o) -> i :-> o) -> instr -> instr
- type NiceParameterFull cp = (Typeable cp, ParameterDeclaresEntrypoints cp)
- parameterEntrypointCallCustom :: forall cp (mname :: Maybe Symbol). ParameterDeclaresEntrypoints cp => EntrypointRef mname -> EntrypointCall cp (GetEntrypointArgCustom cp mname)
- eprName :: forall (mname :: Maybe Symbol). EntrypointRef mname -> EpName
- sepcCallRootChecked :: (NiceParameter cp, ForbidExplicitDefaultEntrypoint cp) => SomeEntrypointCall cp
- parameterEntrypointCallDefault :: ParameterDeclaresEntrypoints cp => EntrypointCall cp (GetDefaultEntrypointArg cp)
- parameterEntrypointCall :: forall cp (name :: Symbol). ParameterDeclaresEntrypoints cp => Label name -> EntrypointCall cp (GetEntrypointArg cp name)
- parameterEntrypointsToNotes :: ParameterDeclaresEntrypoints cp => ParamNotes (ToT cp)
- type family EpdLookupEntrypoint (deriv :: k) cp :: Symbol -> Exp (Maybe Type)
- type family EpdAllEntrypoints (deriv :: k) cp :: [(Symbol, Type)]
- class EntrypointsDerivation (deriv :: k) cp where
- type EpdAllEntrypoints (deriv :: k) cp :: [(Symbol, Type)]
- type EpdLookupEntrypoint (deriv :: k) cp :: Symbol -> Exp (Maybe Type)
- epdNotes :: (Notes (ToT cp), RootAnn)
- epdCall :: forall (name :: Symbol). ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint deriv cp name))
- epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints deriv cp)
- type RequireAllUniqueEntrypoints cp = RequireAllUniqueEntrypoints' (ParameterEntrypointsDerivation cp) cp
- type family ParameterEntrypointsDerivation cp
- class (EntrypointsDerivation (ParameterEntrypointsDerivation cp) cp, RequireAllUniqueEntrypoints cp) => ParameterHasEntrypoints cp where
- type ParameterEntrypointsDerivation cp
- type ParameterDeclaresEntrypoints cp = (If (CanHaveEntrypoints cp) (ParameterHasEntrypoints cp) (), NiceParameter cp, EntrypointsDerivation (GetParameterEpDerivation cp) cp)
- type family AllParameterEntrypoints cp :: [(Symbol, Type)] where ...
- type family LookupParameterEntrypoint cp :: Symbol -> Exp (Maybe Type) where ...
- type GetEntrypointArg cp (name :: Symbol) = Eval (LiftM2 (FromMaybe :: Type -> Maybe Type -> Type -> Type) (TError (('Text "Entrypoint not found: " :<>: 'ShowType name) :$$: (('Text "In contract parameter `" :<>: 'ShowType cp) :<>: 'Text "`")) :: Type -> Type) (LookupParameterEntrypoint cp name))
- type GetDefaultEntrypointArg cp = Eval (LiftM2 (FromMaybe :: Type -> Maybe Type -> Type -> Type) (Pure cp) (LookupParameterEntrypoint cp DefaultEpName))
- type ForbidExplicitDefaultEntrypoint cp = Eval (LiftM3 (UnMaybe :: Exp Constraint -> (Type -> Exp Constraint) -> Maybe Type -> Constraint -> Type) (Pure (Pure ())) (TError ('Text "Parameter used here must have no explicit \"default\" entrypoint" :$$: (('Text "In parameter type `" :<>: 'ShowType cp) :<>: 'Text "`")) :: (Type -> Exp Constraint) -> Type) (LookupParameterEntrypoint cp DefaultEpName))
- type NoExplicitDefaultEntrypoint cp = Eval (LookupParameterEntrypoint cp DefaultEpName) ~ ('Nothing :: Maybe Type)
- data EntrypointRef (mname :: Maybe Symbol) where
- CallDefault :: EntrypointRef ('Nothing :: Maybe Symbol)
- Call :: forall (name :: Symbol). NiceEntrypointName name => EntrypointRef ('Just name)
- type family GetEntrypointArgCustom cp (mname :: Maybe Symbol) where ...
- class HasEntrypointArg (cp :: k) name arg where
- useHasEntrypointArg :: name -> (Dict (ParameterScope (ToT arg)), EpName)
- type HasDefEntrypointArg (cp :: k) defEpName defArg = (defEpName ~ EntrypointRef ('Nothing :: Maybe Symbol), HasEntrypointArg cp defEpName defArg)
- newtype TrustEpName = TrustEpName EpName
- type HasEntrypointOfType param (con :: Symbol) exp = (GetEntrypointArgCustom param ('Just con) ~ exp, ParameterDeclaresEntrypoints param)
- type (:>) (n :: Symbol) ty = 'NamedEp n ty
- type family ParameterContainsEntrypoints param (fields :: [NamedEp]) where ...
- data EpdNone
- newtype ShouldHaveEntrypoints a = ShouldHaveEntrypoints {
- unHasEntrypoints :: a
- nicePrintedValueEvi :: NicePrintedValue a :- PrintedValScope (ToT a)
- niceUnpackedValueEvi :: NiceUnpackedValue a :- UnpackedValScope (ToT a)
- nicePackedValueEvi :: NicePackedValue a :- PackedValScope (ToT a)
- niceConstantEvi :: NiceConstant a :- ConstantScope (ToT a)
- niceStorageEvi :: NiceStorage a :- StorageScope (ToT a)
- niceParameterEvi :: NiceParameter a :- ParameterScope (ToT a)
- class (IsoValue a, Typeable a) => KnownValue a
- class (IsoValue a, ForbidOp (ToT a)) => NoOperation a
- class (IsoValue a, ForbidContract (ToT a)) => NoContractType a
- class (IsoValue a, ForbidBigMap (ToT a)) => NoBigMap a
- class (IsoValue a, HasNoNestedBigMaps (ToT a)) => CanHaveBigMap a
- type NiceParameter a = (KnownValue a, ProperParameterBetterErrors (ToT a))
- type NiceStorage a = (HasAnnotation a, KnownValue a, ProperStorageBetterErrors (ToT a))
- type NiceConstant a = (KnownValue a, ProperConstantBetterErrors (ToT a))
- type NicePackedValue a = (KnownValue a, ProperPackedValBetterErrors (ToT a))
- type NiceUnpackedValue a = (KnownValue a, ProperUnpackedValBetterErrors (ToT a))
- type NiceFullPackedValue a = (NicePackedValue a, NiceUnpackedValue a)
- type NicePrintedValue a = (KnownValue a, ProperPrintedValBetterErrors (ToT a))
- type NiceComparable n = (KnownValue n, Comparable (ToT n))
- class HasAnnotation a
- data Rec (a :: u -> Type) (b :: [u]) where
- arg :: forall (name :: Symbol) a. Name name -> (name :! a) -> a
- argF :: forall (name :: Symbol) f a. Name name -> NamedF f a name -> f a
- argDef :: forall (name :: Symbol) a. Name name -> a -> (name :? a) -> a
- type (:!) (name :: Symbol) a = NamedF Identity a name
- type (:?) (name :: Symbol) a = NamedF Maybe a name
- withDepths :: [CstrDepth] -> GenericStrategy
- rightBalanced :: GenericStrategy
- leftBalanced :: GenericStrategy
- rightComb :: GenericStrategy
- leftComb :: GenericStrategy
- cstr :: forall (n :: Nat). KnownNat n => [Natural] -> CstrDepth
- fld :: forall (n :: Nat). KnownNat n => Natural
- customGeneric :: String -> GenericStrategy -> Q [Dec]
- type Markdown = Builder
- data Label (name :: Symbol) where
- Label :: forall (name :: Symbol). KnownSymbol name => Label name
- data EpName
- pattern DefEpName :: EpName
- data MText
- mt :: QuasiQuoter
- data KeyHash
- data Signature
- data PublicKey
- data ChainId
- data Timestamp
- data Mutez
- toMutez :: Word32 -> Mutez
- zeroMutez :: Mutez
- oneMutez :: Mutez
- timestampFromSeconds :: Integer -> Timestamp
- timestampFromUTCTime :: UTCTime -> Timestamp
- timestampQuote :: QuasiQuoter
- data Address
- mkUType :: forall (x :: T). SingI x => Notes x -> Type
- data EpAddress = EpAddress {}
- data ContractDoc = ContractDoc {}
- newtype SubDoc = SubDoc DocBlock
- data DocSection = DocItem d => DocSection (NonEmpty $ DocElem d)
- data DocElem d = DocElem {}
- data SomeDocDefinitionItem where
- SomeDocDefinitionItem :: forall d. (DocItem d, DocItemPlacement d ~ 'DocItemInDefinitions) => d -> SomeDocDefinitionItem
- data SomeDocItem where
- SomeDocItem :: forall d. DocItem d => d -> SomeDocItem
- data DocSectionNameStyle
- data DocItemRef (p :: DocItemPlacementKind) (r :: DocItemReferencedKind) where
- data DocItemPlacementKind
- newtype DocItemPos = DocItemPos (Natural, Text)
- newtype DocItemId = DocItemId Text
- 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
- mdTocFromRef :: (DocItem d, DocItemReferenced d ~ 'True) => HeaderLevel -> Markdown -> d -> Markdown
- docItemPosition :: DocItem d => DocItemPos
- docDefinitionRef :: (DocItem d, DocItemPlacement d ~ 'DocItemInDefinitions) => Markdown -> d -> Markdown
- docItemSectionRef :: DocItem di => Maybe Markdown
- subDocToMarkdown :: HeaderLevel -> SubDoc -> Markdown
- data DAnchor = DAnchor Anchor
- data DComment = DComment Text
- newtype GitRepoSettings = GitRepoSettings {
- grsMkGitRevision :: Text -> Text
- data DGitRevision
- = DGitRevisionKnown DGitRevisionInfo
- | DGitRevisionUnknown
- data DDescription = DDescription Markdown
- type DocGrouping = SubDoc -> SomeDocItem
- contractDocToMarkdown :: ContractDoc -> LText
- morleyRepoSettings :: GitRepoSettings
- mkDGitRevision :: ExpQ
- type Operation = Operation' Instr
- type Value = Value' Instr
- newtype BigMap k v = BigMap {}
- data ContractRef arg = ContractRef {
- crAddress :: Address
- crEntrypoint :: SomeEntrypointCall arg
- type WellTypedIsoValue a = (WellTyped (ToT a), IsoValue a)
- type SomeEntrypointCall arg = SomeEntrypointCallT (ToT arg)
- type EntrypointCall param arg = EntrypointCallT (ToT param) (ToT arg)
- class WellTypedToT a => IsoValue a where
- type family ToT a :: T
- coerceContractRef :: ToT a ~ ToT b => ContractRef a -> ContractRef b
- type InstrConstructC dt = (GenericIsoValue dt, GInstrConstruct (Rep dt))
- type ConstructorFieldTypes dt = GFieldTypes (Rep dt)
- class IsHomomorphic (a :: k)
- class HaveCommonTypeCtor (a :: k) (b :: k1)
- data DType where
- DType :: forall a. TypeHasDoc a => Proxy a -> DType
- data SomeTypeWithDoc where
- SomeTypeWithDoc :: forall td. TypeHasDoc td => Proxy td -> SomeTypeWithDoc
- 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 family TypeDocFieldDescriptions a :: FieldDescriptions
- dTypeDep :: TypeHasDoc t => SomeDocDefinitionItem
- customTypeDocMdReference :: (Text, DType) -> [DType] -> WithinParens -> Markdown
- homomorphicTypeDocMdReference :: (Typeable t, TypeHasDoc t, IsHomomorphic t) => Proxy t -> WithinParens -> Markdown
- 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
- genericTypeDocDependencies :: (Generic a, GTypeHasDoc (Rep a)) => Proxy a -> [SomeDocDefinitionItem]
- homomorphicTypeDocHaskellRep :: (Generic a, GTypeHasDoc (Rep a)) => TypeDocHaskellRep a
- concreteTypeDocHaskellRep :: (Typeable a, GenericIsoValue a, GTypeHasDoc (Rep a), HaveCommonTypeCtor b a) => TypeDocHaskellRep b
- concreteTypeDocHaskellRepUnsafe :: (Typeable a, GenericIsoValue a, GTypeHasDoc (Rep a)) => TypeDocHaskellRep b
- haskellRepNoFields :: TypeDocHaskellRep a -> TypeDocHaskellRep a
- haskellAddNewtypeField :: Text -> TypeDocHaskellRep a -> TypeDocHaskellRep a
- haskellRepStripFieldPrefix :: HasCallStack => TypeDocHaskellRep a -> TypeDocHaskellRep a
- homomorphicTypeDocMichelsonRep :: SingI (ToT a) => TypeDocMichelsonRep a
- 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
Documentation
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 | |
| Hashable Bool | |
Defined in Data.Hashable.Class | |
| 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 | |
| Bits Bool | Interpret Since: base-4.7.0.0 |
Defined in Data.Bits Methods (.&.) :: Bool -> Bool -> Bool # (.|.) :: Bool -> Bool -> Bool # complement :: Bool -> Bool # shift :: Bool -> Int -> Bool # rotate :: Bool -> Int -> Bool # setBit :: Bool -> Int -> Bool # clearBit :: Bool -> Int -> Bool # complementBit :: Bool -> Int -> Bool # testBit :: Bool -> Int -> Bool # bitSizeMaybe :: Bool -> Maybe Int # shiftL :: Bool -> Int -> Bool # unsafeShiftL :: Bool -> Int -> Bool # shiftR :: Bool -> Int -> Bool # unsafeShiftR :: Bool -> Int -> Bool # rotateL :: Bool -> Int -> Bool # | |
| FiniteBits Bool | Since: base-4.7.0.0 |
Defined in Data.Bits Methods finiteBitSize :: Bool -> Int # countLeadingZeros :: Bool -> Int # countTrailingZeros :: Bool -> Int # | |
| NFData Bool | |
Defined in Control.DeepSeq | |
| Buildable Bool | |
Defined in Formatting.Buildable | |
| Unbox Bool | |
Defined in Data.Vector.Unboxed.Base | |
| HasAnnotation Bool | |
Defined in Lorentz.Annotation | |
| IsoValue Bool | |
| TypeHasDoc Bool | |
Defined in Michelson.Typed.Haskell.Doc Associated Types Methods typeDocName :: Proxy Bool -> Text # typeDocMdDescription :: Markdown # typeDocMdReference :: Proxy Bool -> WithinParens -> Markdown # typeDocDependencies :: Proxy Bool -> [SomeDocDefinitionItem] # | |
| 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 | |
| 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 () # | |
| UnaryArithOpHs Not Bool | |
Defined in Lorentz.Arith Associated Types type UnaryArithResHs Not Bool # | |
| 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) # | |
| ArithOpHs Or Bool Bool | |
Defined in Lorentz.Arith Associated Types type ArithResHs Or Bool Bool # | |
| ArithOpHs And Bool Bool | |
Defined in Lorentz.Arith Associated Types type ArithResHs And Bool Bool # | |
| ArithOpHs Xor Bool Bool | |
Defined in Lorentz.Arith Associated Types type ArithResHs Xor Bool Bool # | |
| () :=> (Bounded Bool) | |
| () :=> (Enum Bool) | |
| () :=> (Eq Bool) | |
| () :=> (Ord Bool) | |
| () :=> (Read Bool) | |
| () :=> (Show Bool) | |
| () :=> (Bits Bool) | |
| 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 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 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 (WhenSym0 :: TyFun Bool (f () ~> 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 # | |
| 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 ((||@#@$$) 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 (WhenSym0 :: TyFun Bool (f6989586621679754497 () ~> f6989586621679754497 ()) -> Type) | |
Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () # | |
| SuppressUnusedWarnings (UnlessSym0 :: TyFun Bool (f6989586621680980258 () ~> f6989586621680980258 ()) -> Type) | |
Defined in Data.Singletons.Prelude.Monad 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 :: () # | |
| (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 | |
| 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 | |
| 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 # | |
| 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 (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 :: () # | |
| 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 :: () # | |
| (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 (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 (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 (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 (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 :: () # | |
| 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 (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 (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 (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 (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 (Lambda_6989586621680980750Sym2 p6989586621680980745 x6989586621680980749 :: TyFun k3 (TyFun Bool (TyFun [k1] [k1] -> Type) -> Type) -> Type) | |
Defined in Data.Singletons.Prelude.Monad 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 ToT Bool | |
Defined in Michelson.Typed.Haskell.Value | |
| type TypeDocFieldDescriptions Bool | |
Defined in Michelson.Typed.Haskell.Doc | |
| type Sing | |
Defined in Data.Singletons.Prelude.Instances | |
| 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 Demote Bool | |
Defined in Data.Singletons.Prelude.Instances | |
| type UnaryArithResHs Not Bool | |
Defined in Lorentz.Arith | |
| 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 ArithResHs Or Bool Bool | |
Defined in Lorentz.Arith | |
| type ArithResHs And Bool Bool | |
Defined in Lorentz.Arith | |
| type ArithResHs Xor Bool Bool | |
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 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 (WhenSym0 :: TyFun Bool (f6989586621679754497 () ~> f6989586621679754497 ()) -> Type) (a6989586621679754882 :: 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 (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 (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_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_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_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 (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_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 (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 (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 (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 (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 :: Natural1267650600228229401496703205376
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 |
| Alternative Maybe | Since: base-2.1 |
| MonadPlus Maybe | Since: base-2.1 |
| 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 | |
| LorentzFunctor Maybe | |
Defined in Lorentz.Instr | |
| KnownNamedFunctor Maybe | |
Defined in Util.Named | |
| 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 | |
| MonadError () Maybe | Since: mtl-2.2.2 |
Defined in Control.Monad.Error.Class | |
| () :=> (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) | |
| Hashable a => Hashable (Maybe a) | |
Defined in Data.Hashable.Class | |
| 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) | |
| HasAnnotation a => HasAnnotation (Maybe a) | |
Defined in Lorentz.Annotation | |
| IsoValue a => IsoValue (Maybe a) | |
| 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) # | |
| (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)) # | |
| 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) | |
| 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) | |
| SingI a2 => SingI ('Just a2 :: Maybe a1) | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
| 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 (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 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) # | |
| 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 # | |
| SAlternative f => SingI (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) | |
Defined in Data.Singletons.Prelude.Applicative Methods sing :: Sing OptionalSym0 # | |
| 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 (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 (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 (OptionalSym0 :: TyFun (f6989586621680973094 a6989586621680973095) (f6989586621680973094 (Maybe a6989586621680973095)) -> Type) | |
Defined in Data.Singletons.Prelude.Applicative 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 :: () # | |
| (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 (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 :: () # | |
| (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 (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 :: () # | |
| 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 :: () # | |
| Wrappable (NamedF Maybe a name) | |
Defined in Lorentz.Wrappable Associated Types type Unwrappable (NamedF Maybe a name) # | |
| (HasAnnotation (Maybe a), KnownSymbol name) => HasAnnotation (NamedF Maybe a name) | |
Defined in Lorentz.Annotation Methods getAnnotation :: FollowEntrypointFlag -> Notes (ToT (NamedF Maybe a name)) # | |
| IsoValue a => IsoValue (NamedF Maybe a name) | |
| 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 ToT (Maybe a) | |
Defined in Michelson.Typed.Haskell.Value | |
| type TypeDocFieldDescriptions (Maybe a) | |
Defined in Michelson.Typed.Haskell.Doc | |
| type Sing | |
Defined in Data.Singletons.Prelude.Instances | |
| type Element (Maybe a) | |
Defined in Universum.Container.Class | |
| type Mempty | |
Defined in Data.Singletons.Prelude.Monoid | |
| type Demote (Maybe a) | |
Defined in Data.Singletons.Prelude.Instances | |
| 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 Unwrappable (NamedF Maybe a name) | |
Defined in Lorentz.Wrappable | |
| type ToT (NamedF Maybe a name) | |
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 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 |
| MapInstrs Map | |
Defined in Lorentz.Macro Methods mapUpdate :: forall k v (s :: [Type]). NiceComparable k => (k ': (Maybe v ': (Map k v ': s))) :-> (Map k v ': s) mapInsert :: forall k v (s :: [Type]). NiceComparable k => (k ': (v ': (Map k v ': s))) :-> (Map k v ': s) # mapInsertNew :: forall k e v (s :: [Type]). (NiceComparable k, KnownValue e) => (forall (s0 :: [Type]). (k ': s0) :-> (e ': s0)) -> (k ': (v ': (Map k v ': s))) :-> (Map k v ': s) # deleteMap :: forall k v (s :: [Type]). (NiceComparable k, KnownValue v) => (k ': (Map k v ': s)) :-> (Map k v ': s) # | |
| 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. |
| 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) | |
| 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) | |
| (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) | |
| NiceComparable k => MemOpHs (Map k v) | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (Map k v) # | |
| NiceComparable k => MapOpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| NiceComparable k => IterOpHs (Map k v) | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs (Map k v) # | |
| SizeOpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| NiceComparable k => UpdOpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| NiceComparable k => GetOpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| (HasAnnotation k, HasAnnotation v) => HasAnnotation (Map k v) | |
Defined in Lorentz.Annotation | |
| (Comparable (ToT k), Ord k, IsoValue k, IsoValue v) => IsoValue (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) # | |
| One (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)) # | |
| ToPairs (Map k v) | |
| (t ~ Map k' a', Ord k) => Rewrapped (Map k a) t | Use |
Defined in Control.Lens.Wrapped | |
| (key ~ key', value ~ value', NiceComparable key, KnownValue value) => StoreHasSubmap (Map key' value') name key value |
|
Defined in Lorentz.StoreClass Methods storeSubmapOps :: StoreSubmapOps (Map key' value') name key value # | |
| 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 MemOpKeyHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type MapOpResHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type MapOpInpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type IterOpElHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type UpdOpParamsHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type UpdOpKeyHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type GetOpValHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type GetOpKeyHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type ToT (Map k v) | |
| type TypeDocFieldDescriptions (Map k v) | |
Defined in Michelson.Typed.Haskell.Doc | |
| type OneItem (Map k v) | |
Defined in Universum.Container.Class | |
| type Element (Map k v) | |
Defined in Universum.Container.Class | |
| type Val (Map k v) | |
Defined in Universum.Container.Class | |
| type Key (Map k v) | |
Defined in Universum.Container.Class | |
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 ::Dictc -> (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 # | |
| 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) | |
| 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) | |
| NiceComparable e => MemOpHs (Set e) | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (Set e) # | |
| NiceComparable e => IterOpHs (Set e) | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs (Set e) # | |
| SizeOpHs (Set a) | |
Defined in Lorentz.Polymorphic | |
| NiceComparable a => UpdOpHs (Set a) | |
Defined in Lorentz.Polymorphic | |
| KnownIsoT v => HasAnnotation (Set v) | |
Defined in Lorentz.Annotation | |
| (Comparable (ToT c), Ord c, IsoValue c) => IsoValue (Set c) | |
| 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) # | |
| One (Set v) | |
| 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)) # | |
| (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) | |
| 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 MemOpKeyHs (Set e) | |
Defined in Lorentz.Polymorphic | |
| type IterOpElHs (Set e) | |
Defined in Lorentz.Polymorphic | |
| type UpdOpParamsHs (Set a) | |
Defined in Lorentz.Polymorphic | |
| type UpdOpKeyHs (Set a) | |
Defined in Lorentz.Polymorphic | |
| type ToT (Set c) | |
Defined in Michelson.Typed.Haskell.Value | |
| type TypeDocFieldDescriptions (Set a) | |
Defined in Michelson.Typed.Haskell.Doc | |
| type OneItem (Set v) | |
Defined in Universum.Container.Class | |
| type Element (Set v) | |
Defined in Universum.Container.Class | |
A class for types with a default value.
Minimal complete definition
Nothing
Instances
pbsUParam :: forall (ctorName :: Symbol). KnownSymbol ctorName => ParamBuildingStep #
Note that calling given entrypoints involves constructing UParam.
uparamFromAdt :: UParamLinearize up => up -> UParam (UParamLinearized up) #
Make up UParam from ADT sum.
Entry points template will consist of
(constructorName, constructorFieldType) pairs.
Each constructor is expected to have exactly one field.
caseUParamT :: forall (entries :: [EntrypointKind]) (inp :: [Type]) (out :: [Type]) clauses. (clauses ~ Rec (CaseClauseU inp out) entries, RecFromTuple clauses, CaseUParam entries) => IsoRecTuple clauses -> UParamFallback inp out -> (UParam entries ': inp) :-> out #
Like caseUParam, but accepts a tuple of clauses, not a Rec.
caseUParam :: forall (entries :: [EntrypointKind]) (inp :: [Type]) (out :: [Type]). (CaseUParam entries, RequireUniqueEntrypoints entries) => Rec (CaseClauseU inp out) entries -> UParamFallback inp out -> (UParam entries ': inp) :-> out #
Pattern-match on given UParam entries.
You have to provide all case branches and a fallback action on case when entrypoint is not found.
uparamFallbackFail :: forall (inp :: [Type]) (out :: [Type]). UParamFallback inp out #
Default implementation for UParamFallback, simply reports an error.
unwrapUParam :: forall (entries :: [EntrypointKind]) (s :: [Type]). (UParam entries ': s) :-> ((MText, ByteString) ': s) #
Helper instruction which extracts content of UParam.
mkUParam :: forall a (name :: Symbol) (entries :: [EntrypointKind]). (NicePackedValue a, LookupEntrypoint name entries ~ a, RequireUniqueEntrypoints entries) => Label name -> a -> UParam entries #
Construct a UParam safely.
type EntrypointKind = (Symbol, Type) #
An entrypoint is described by two types: its name and type of argument.
newtype UParam (entries :: [EntrypointKind]) #
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 SomeInterface = '['("SomeEntrypoints", Void)] #
Pseudo value for UParam type variable.
type UParam_ = UParam SomeInterface #
Homomorphic version of UParam, forgets the exact interface.
type family LookupEntrypoint (name :: Symbol) (entries :: [EntrypointKind]) where ... #
Get type of entrypoint argument by its name.
Equations
| LookupEntrypoint name ('(name, a) ': _1) = a | |
| LookupEntrypoint name (_1 ': entries) = LookupEntrypoint name entries | |
| LookupEntrypoint name ('[] :: [EntrypointKind]) = TypeError (('Text "Entry point " :<>: 'ShowType name) :<>: 'Text " in not in the entry points list") :: Type |
type family RequireUniqueEntrypoints (entries :: [EntrypointKind]) where ... #
Ensure that given entry points do no contain duplicated names.
Equations
| RequireUniqueEntrypoints entries = RequireAllUnique "entrypoint" (Eval (Map (Fst :: (Symbol, Type) -> Symbol -> Type) entries)) |
data ConstrainedSome (c :: Type -> Constraint) where #
This type can store any value that satisfies a certain constraint.
Constructors
| ConstrainedSome :: forall (c :: Type -> Constraint) a. c a => a -> ConstrainedSome c |
Instances
| Show (ConstrainedSome Show) | |
Defined in Lorentz.UParam | |
| Buildable (ConstrainedSome Buildable) | |
Defined in Lorentz.UParam Methods build :: ConstrainedSome Buildable -> Builder # | |
class UnpackUParam (c :: Type -> Constraint) (entries :: [EntrypointKind]) where #
This class is needed to implement unpackUParam.
Methods
unpackUParam :: UParam entries -> Either EntrypointLookupError (MText, ConstrainedSome c) #
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]) | |
Defined in Lorentz.UParam Methods unpackUParam :: UParam '[] -> Either EntrypointLookupError (MText, ConstrainedSome c) # | |
| (KnownSymbol name, UnpackUParam c entries, NiceUnpackedValue arg, c arg) => UnpackUParam c ((name ?: arg) ': entries) | |
Defined in Lorentz.UParam Methods unpackUParam :: UParam ((name ?: arg) ': entries) -> Either EntrypointLookupError (MText, ConstrainedSome c) # | |
data EntrypointLookupError #
Constructors
| NoSuchEntrypoint MText | |
| ArgumentUnpackFailed |
Instances
type EntrypointsImpl (inp :: [Type]) (out :: [Type]) (entries :: [EntrypointKind]) = Rec (CaseClauseU inp out) entries #
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.
type UParamFallback (inp :: [Type]) (out :: [Type]) = ((MText, ByteString) ': inp) :-> out #
An action invoked when user-provided entrypoint is not found.
class CaseUParam (entries :: [EntrypointKind]) #
Make up a "case" over entry points.
Minimal complete definition
caseUParamUnsafe
Instances
| CaseUParam ('[] :: [EntrypointKind]) | |
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) | |
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 UParamLinearize p = (Generic p, GUParamLinearize (Rep p)) #
Constraint required by uparamFromAdt.
type UParamLinearized p = GUParamLinearized (Rep p) #
Entry points template derived from given ADT sum.
entryCaseSimple_ :: forall cp (out :: [Type]) (inp :: [Type]). (InstrCaseC cp, RMap (CaseClauses cp), DocumentEntrypoints PlainEntrypointsKind cp, NiceParameterFull cp, RequireFlatParamEps cp) => Rec (CaseClauseL inp out) (CaseClauses cp) -> (cp ': inp) :-> out #
areFinalizedParamBuildingSteps :: [ParamBuildingStep] -> Bool #
Whether finalizeParamCallingDoc has already been applied to these steps.
documentEntrypoint :: forall kind (epName :: Symbol) param (s :: [Type]) (out :: [Type]). (KnownSymbol epName, DocItem (DEntrypoint kind), TypeHasDoc param, HasAnnotation param, KnownValue param) => ((param ': s) :-> out) -> (param ': s) :-> out #
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.
clarifyParamBuildingSteps :: forall (inp :: [Type]) (out :: [Type]). ParamBuildingStep -> (inp :-> out) -> inp :-> out #
Go over contract code and update every occurrence of DEntrypointArg
documentation item, adding the given step to its "how to build parameter"
description.
mkDEntrypointArgSimple :: (KnownValue t, HasAnnotation t, TypeHasDoc t) => DEntrypointArg #
mkDEpUType :: (KnownValue t, HasAnnotation t) => Type #
constructDEpArg :: (TypeHasDoc arg, HasAnnotation arg, KnownValue arg) => DEntrypointArg #
mkPbsWrapIn :: Text -> ParamBuilder -> ParamBuildingStep #
Make a ParamBuildingStep that tells about wrapping an argument into
a constructor with given name and uses given ParamBuilder as description of
Michelson part.
entrypointSection :: forall kind (i :: [Type]) (o :: [Type]). EntrypointKindHasDoc kind => Text -> Proxy kind -> (i :-> o) -> i :-> o #
Mark code as part of entrypoint with given name.
This is automatically called at most of the appropriate situations, like
entryCase calls.
diEntrypointToMarkdown :: HeaderLevel -> DEntrypoint level -> Markdown #
Default implementation of docItemToMarkdown for entrypoints.
pattern DEntrypointDocItem :: () => DEntrypoint kind -> SomeDocItem #
Pattern that checks whether given SomeDocItem hides DEntrypoint inside
(of any entrypoint kind).
In case a specific kind is necessary, use plain (cast -> Just DEntrypoint{..})
construction instead.
data DEntrypoint kind #
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
| EntrypointKindHasDoc ep => DocItem (DEntrypoint ep) | |
Defined in Lorentz.Entrypoints.Doc Associated Types type DocItemPlacement (DEntrypoint ep) :: DocItemPlacementKind # type DocItemReferenced (DEntrypoint ep) :: DocItemReferencedKind # Methods docItemPos :: Natural # docItemSectionName :: Maybe Text # docItemSectionDescription :: Maybe Markdown # docItemSectionNameStyle :: DocSectionNameStyle # docItemRef :: DEntrypoint ep -> DocItemRef (DocItemPlacement (DEntrypoint ep)) (DocItemReferenced (DEntrypoint ep)) # docItemToMarkdown :: HeaderLevel -> DEntrypoint ep -> Markdown # docItemToToc :: HeaderLevel -> DEntrypoint ep -> Markdown # docItemDependencies :: DEntrypoint ep -> [SomeDocDefinitionItem] # docItemsOrder :: [DEntrypoint ep] -> [DEntrypoint ep] # | |
| type DocItemPlacement (DEntrypoint ep) | |
Defined in Lorentz.Entrypoints.Doc | |
| type DocItemReferenced (DEntrypoint ep) | |
Defined in Lorentz.Entrypoints.Doc | |
class Typeable ep => EntrypointKindHasDoc ep where #
Describes location of entrypoints of the given kind.
All such entrypoints will be placed under the same "entrypoints" section, and this instance defines characteristics of this section.
Minimal complete definition
Methods
entrypointKindPos :: Natural #
Position of the respective entrypoints section in the doc. This shares the same positions space with all other doc items.
entrypointKindSectionName :: Text #
Name of the respective entrypoints section.
entrypointKindSectionDescription :: Maybe Markdown #
Description in the respective entrypoints section.
Instances
| EntrypointKindHasDoc PlainEntrypointsKind | |
Defined in Lorentz.Entrypoints.Doc | |
| EntrypointKindHasDoc CommonContractBehaviourKind | |
Defined in Lorentz.Entrypoints.Doc | |
| EntrypointKindHasDoc kind => EntrypointKindHasDoc (CommonEntrypointsBehaviourKind kind) | |
Defined in Lorentz.Entrypoints.Doc | |
data CommonContractBehaviourKind #
Describes the behaviour common for all entrypoints.
For instance, if your contract runs some checks before calling any
entrypoint, you probably want to wrap those checks into
entrypointSection "Prior checks" (Proxy @CommonContractBehaviourKind).
Instances
data CommonEntrypointsBehaviourKind (kind :: k) #
Describes the behaviour common for entrypoints of given kind.
This has very special use cases, like contracts with mix of upgradeable and permanent entrypoints.
Instances
| EntrypointKindHasDoc kind => EntrypointKindHasDoc (CommonEntrypointsBehaviourKind kind) | |
Defined in Lorentz.Entrypoints.Doc | |
data DEntrypointReference #
Inserts a reference to an existing entrypoint.
This helps to avoid duplication in the generated documentation, in order not to overwhelm the reader.
Constructors
| DEntrypointReference Text Anchor |
Instances
newtype ParamBuilder #
When describing the way of parameter construction - piece of incremental builder for this description.
Constructors
| ParamBuilder | |
Fields
| |
Instances
| Eq ParamBuilder | |
Defined in Lorentz.Entrypoints.Doc | |
| Show ParamBuilder | |
Defined in Lorentz.Entrypoints.Doc Methods showsPrec :: Int -> ParamBuilder -> ShowS # show :: ParamBuilder -> String # showList :: [ParamBuilder] -> ShowS # | |
| Buildable ParamBuilder | |
Defined in Lorentz.Entrypoints.Doc Methods build :: ParamBuilder -> Builder # | |
data ParamBuildingDesc #
Constructors
| ParamBuildingDesc | |
Fields
| |
Instances
| Eq ParamBuildingDesc | |
Defined in Lorentz.Entrypoints.Doc Methods (==) :: ParamBuildingDesc -> ParamBuildingDesc -> Bool # (/=) :: ParamBuildingDesc -> ParamBuildingDesc -> Bool # | |
| Show ParamBuildingDesc | |
Defined in Lorentz.Entrypoints.Doc Methods showsPrec :: Int -> ParamBuildingDesc -> ShowS # show :: ParamBuildingDesc -> String # showList :: [ParamBuildingDesc] -> ShowS # | |
data ParamBuildingStep #
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 | |
Defined in Lorentz.Entrypoints.Doc Methods (==) :: ParamBuildingStep -> ParamBuildingStep -> Bool # (/=) :: ParamBuildingStep -> ParamBuildingStep -> Bool # | |
| Show ParamBuildingStep | |
Defined in Lorentz.Entrypoints.Doc Methods showsPrec :: Int -> ParamBuildingStep -> ShowS # show :: ParamBuildingStep -> String # showList :: [ParamBuildingStep] -> ShowS # | |
| Buildable ParamBuildingStep | |
Defined in Lorentz.Entrypoints.Doc Methods build :: ParamBuildingStep -> Builder # | |
data DEntrypointArg #
Describes argument of an entrypoint.
Constructors
| DEntrypointArg | |
Fields
| |
Instances
| DocItem DEntrypointArg | |
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 | |
Defined in Lorentz.Entrypoints.Doc | |
| type DocItemReferenced DEntrypointArg | |
Defined in Lorentz.Entrypoints.Doc | |
class KnownSymbol con => DeriveCtorFieldDoc (con :: Symbol) (cf :: CtorField) where #
Pick a type documentation from CtorField.
Methods
Instances
| KnownSymbol con => DeriveCtorFieldDoc con 'NoFields | |
Defined in Lorentz.Entrypoints.Doc Methods | |
| (TypeHasDoc ty, HasAnnotation ty, KnownValue ty, KnownSymbol con) => DeriveCtorFieldDoc con ('OneField ty) | |
Defined in Lorentz.Entrypoints.Doc Methods | |
type DocumentEntrypoints kind a = (Generic a, GDocumentEntrypoints kind (Rep a)) #
Constraint for documentEntrypoints.
class EntryArrow (kind :: k) (name :: Symbol) body where #
Provides arror for convenient entrypoint documentation
Methods
(#->) :: (Label name, Proxy kind) -> body -> body #
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 | |
Defined in Lorentz.Entrypoints.Doc | |
type family RequireFlatParamEps cp where ... #
Equations
| RequireFlatParamEps cp = (RequireFlatEpDerivation cp (GetParameterEpDerivation cp), RequireSumType cp) |
type family RequireFlatEpDerivation (cp :: t) deriv where ... #
Equations
| RequireFlatEpDerivation (_1 :: t) EpdNone = () | |
| RequireFlatEpDerivation (_1 :: t) EpdPlain = () | |
| RequireFlatEpDerivation (cp :: t) deriv = TypeError (('Text "Parameter is not flat" :$$: (('Text "For parameter `" :<>: 'ShowType cp) :<>: 'Text "`")) :$$: (('Text "With entrypoints derivation way `" :<>: 'ShowType deriv) :<>: 'Text "`")) :: Constraint |
mkStoreEp :: forall (epName :: Symbol) epParam epStore. Label epName -> EntrypointLambda epParam epStore -> EntrypointsField epParam epStore #
Utility to create EntrypointsFields 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.
zoomStoreSubmapOps :: forall store (submapName :: Symbol) (nameInSubmap :: Symbol) key value subvalue. (NiceConstant value, NiceConstant subvalue) => Label submapName -> LIso (Maybe value) value -> LIso (Maybe subvalue) subvalue -> StoreSubmapOps store submapName key value -> StoreFieldOps value nameInSubmap subvalue -> StoreSubmapOps store nameInSubmap key subvalue #
Turn submap operations into operations on a part of the submap value.
Normally, if you need this set of operations, it would be better to split your submap into several separate submaps, each operating with its own part of the value. This set of operations is pretty inefficient and exists only as a temporary measure, if due to historical reasons you have to leave storage format intact.
This implementation puts no distinction between value == Nothing and
value == Just defValue cases.
Getters, when notice a value equal to the default value, report its absence.
Setters tend to remove the value from submap when possible.
LIso (Maybe value) value and LIso (Maybe subvalue) subvalue arguments
describe how to get a value if it was absent in map and how to detect when
it can be safely removed from map.
Example of use:
zoomStoreSubmapOps #mySubmap nonDefIso nonDefIso storeSubmapOps storeFieldOpsADT
composeStoreEntrypointOps :: forall (nameInStore :: Symbol) store substore (epName :: Symbol) epParam epStore. Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreEntrypointOps substore epName epParam epStore -> StoreEntrypointOps store epName epParam epStore #
sequenceStoreSubmapOps :: forall store substore value (name :: Symbol) (subName :: Symbol) key1 key2. (NiceConstant substore, KnownValue value) => Label name -> LIso (Maybe substore) substore -> StoreSubmapOps store name key1 substore -> StoreSubmapOps substore subName key2 value -> StoreSubmapOps store subName (key1, key2) value #
Chain implementations of two submap operations sets. Used to provide shortcut access to a nested submap.
This is very inefficient since on each access to substore it has to be serialized/deserialized. Use this implementation only if due to historical reasons migrating storage is difficult.
LIso (Maybe substore) substore argument describes how to get
substore value if it was absent in map and how to detect when
it can be safely removed.
Example of use:
sequenceStoreSubmapOps #mySubmap nonDefIso storeSubmapOps storeSubmapOps
composeStoreSubmapOps :: forall (nameInStore :: Symbol) store substore (mname :: Symbol) key value. Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreSubmapOps substore mname key value -> StoreSubmapOps store mname key value #
Chain implementations of field and submap operations.
composeStoreFieldOps :: forall (nameInStore :: Symbol) store substore (nameInSubstore :: Symbol) field. Label nameInStore -> StoreFieldOps store nameInStore substore -> StoreFieldOps substore nameInSubstore field -> StoreFieldOps store nameInSubstore field #
Chain two implementations of field operations.
Suits for a case when your store does not contain its fields directly rather has a nested structure.
mapStoreSubmapOpsValue :: forall value1 value2 store (name :: Symbol) key. KnownValue value1 => LIso value1 value2 -> StoreSubmapOps store name key value1 -> StoreSubmapOps store name key value2 #
Change submap operations so that they work on a modified value.
mapStoreSubmapOpsKey :: forall key2 key1 store (name :: Symbol) value. Lambda key2 key1 -> StoreSubmapOps store name key1 value -> StoreSubmapOps store name key2 value #
Change submap operations so that they work on a modified key.
mapStoreFieldOps :: forall field1 field2 store (name :: Symbol). LIso field1 field2 -> StoreFieldOps store name field1 -> StoreFieldOps store name field2 #
Change field operations so that they work on a modified field.
For instance, to go from
StoreFieldOps Storage "name" Integer
to
StoreFieldOps Storage "name" (value :! Integer)
you can use
mapStoreFieldOps (namedIso #value)
storeEntrypointOpsReferTo :: forall (epName :: Symbol) store epParam epStore (desiredName :: Symbol). Label epName -> StoreEntrypointOps store epName epParam epStore -> StoreEntrypointOps store desiredName epParam epStore #
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.
storeFieldOpsReferTo :: forall (name :: Symbol) storage field (desiredName :: Symbol). Label name -> StoreFieldOps storage name field -> StoreFieldOps storage desiredName field #
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.
storeSubmapOpsReferTo :: forall (name :: Symbol) storage key value (desiredName :: Symbol). Label name -> StoreSubmapOps storage name key value -> StoreSubmapOps storage desiredName key value #
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
storeEntrypointOpsDeeper :: forall store (nameInStore :: Symbol) substore (epName :: Symbol) epParam epStore. (HasFieldOfType store nameInStore substore, StoreHasEntrypoint substore epName epParam epStore) => Label nameInStore -> StoreEntrypointOps store epName epParam epStore #
Implementation of StoreHasEntrypoint for a data type which has an
instance of StoreHasEntrypoint inside.
For instance, it can be used for top-level storage.
storeSubmapOpsDeeper :: forall storage (bigMapPartName :: Symbol) fields (mname :: Symbol) key value. (HasFieldOfType storage bigMapPartName fields, StoreHasSubmap fields mname key value) => Label bigMapPartName -> StoreSubmapOps storage mname key value #
Implementation of StoreHasSubmap for a data type which has an
instance of StoreHasSubmap inside.
For instance, it can be used for top-level storage.
storeFieldOpsDeeper :: forall storage (fieldsPartName :: Symbol) fields (fname :: Symbol) ftype. (HasFieldOfType storage fieldsPartName fields, StoreHasField fields fname ftype) => Label fieldsPartName -> StoreFieldOps storage fname ftype #
Implementation of StoreHasField for a data type which has an
instance of StoreHasField inside.
For instance, it can be used for top-level storage.
storeEntrypointOpsSubmapField :: forall store (epmName :: Symbol) epParam epStore (epsName :: Symbol) (epName :: Symbol). (StoreHasSubmap store epmName MText (EntrypointLambda epParam epStore), StoreHasField store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore #
Implementation of StoreHasEntrypoint for a datatype that has a StoreHasSubmap
that contains the entrypoint and a StoreHasField for the field such
entrypoint operates on.
storeEntrypointOpsFields :: forall store (epmName :: Symbol) epParam epStore (epsName :: Symbol) (epName :: Symbol). (StoreHasField store epmName (EntrypointsField epParam epStore), StoreHasField store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore #
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.
storeEntrypointOpsADT :: forall store (epmName :: Symbol) epParam epStore (epsName :: Symbol) (epName :: Symbol). (HasFieldOfType store epmName (EntrypointsField epParam epStore), HasFieldOfType store epsName epStore, KnownValue epParam, KnownValue epStore) => Label epmName -> Label epsName -> StoreEntrypointOps store epName epParam epStore #
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.
storeFieldOpsADT :: forall dt (fname :: Symbol) ftype. HasFieldOfType dt fname ftype => StoreFieldOps dt fname ftype #
Implementation of StoreHasField for case of datatype
keeping a pack of fields.
stSetEpStore :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (epStore ': (store ': s)) :-> (store ': s) #
Update the sub-storage that the entrypoint operates on.
stGetEpStore :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (epStore ': (store ': s)) #
Get the sub-storage that the entrypoint operates on, preserving the storage itself on the stack.
stToEpStore :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (epStore ': s) #
Pick the sub-storage that the entrypoint operates on.
stSetEpLambda :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (EntrypointLambda epParam epStore ': (store ': s)) :-> (store ': s) #
Stores the entrypoint lambda in the storage. Fails if already set.
stGetEpLambda :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': (store ': s)) #
Get stored entrypoint lambda, preserving the storage itself on the stack.
stToEpLambda :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (store ': s) :-> (EntrypointLambda epParam epStore ': s) #
Pick stored entrypoint lambda.
stEntrypoint :: forall store (epName :: Symbol) epParam epStore (s :: [Type]). StoreHasEntrypoint store epName epParam epStore => Label epName -> (epParam ': (store ': s)) :-> (([Operation], store) ': s) #
Extracts and executes the epName entrypoint lambda from storage, returing
the updated full storage (store) and the produced Operations.
stSetField :: forall store (fname :: Symbol) ftype (s :: [Type]). StoreHasField store fname ftype => Label fname -> (ftype ': (store ': s)) :-> (store ': s) #
Update storage field.
stGetField :: forall store (fname :: Symbol) ftype (s :: [Type]). StoreHasField store fname ftype => Label fname -> (store ': s) :-> (ftype ': (store ': s)) #
Get storage field, preserving the storage itself on stack.
stToField :: forall store (fname :: Symbol) ftype (s :: [Type]). StoreHasField store fname ftype => Label fname -> (store ': s) :-> (ftype ': s) #
Pick storage field.
data StoreFieldOps store (fname :: Symbol) ftype #
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
| |
class StoreHasField store (fname :: Symbol) ftype | store fname -> ftype where #
Provides operations on fields for storage.
Methods
storeFieldOps :: StoreFieldOps store fname ftype #
data StoreSubmapOps store (mname :: Symbol) key value #
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 StoreHasSubmap store (mname :: Symbol) key value | store mname -> key value where #
Provides operations on submaps of storage.
Methods
storeSubmapOps :: StoreSubmapOps store mname key value #
Instances
| (key ~ key', value ~ value', NiceComparable key, KnownValue value) => StoreHasSubmap (Map key' value') name key value |
|
Defined in Lorentz.StoreClass Methods storeSubmapOps :: StoreSubmapOps (Map key' value') name key value # | |
| (key ~ key', value ~ value', NiceComparable key, KnownValue value) => StoreHasSubmap (BigMap key' value') name key value |
|
Defined in Lorentz.StoreClass Methods storeSubmapOps :: StoreSubmapOps (BigMap key' value') name key value # | |
type EntrypointLambda param store = Lambda (param, store) ([Operation], store) #
Type synonym for a Lambda that can be used as an entrypoint
type EntrypointsField param store = BigMap MText (EntrypointLambda param store) #
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.
data StoreEntrypointOps store (epName :: Symbol) epParam epStore #
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
| |
class StoreHasEntrypoint store (epName :: Symbol) epParam epStore | store epName -> epParam epStore where #
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 #
data (param :: k) ::-> (store :: k1) infix 9 #
Indicates a stored entrypoint with the given param and store types.
type family StorageContains store (content :: [NamedField]) where ... #
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 _1 ('[] :: [NamedField]) = () | |
| StorageContains store ((n := Identity ty) ': ct) = (StoreHasField store n ty, StorageContains store ct) | |
| 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) |
unwrapUnsafe_ :: forall dt (name :: Symbol) (st :: [Type]). InstrUnwrapC dt name => Label name -> (dt ': st) :-> (CtorOnlyField name dt ': st) #
Unwrap a constructor with the given name. Useful for sum types.
wrapOne :: forall dt (name :: Symbol) (st :: [Type]). InstrWrapOneC dt name => Label name -> (CtorOnlyField name dt ': st) :-> (dt ': st) #
Wrap entry in single-field constructor. Useful for sum types.
wrap_ :: forall dt (name :: Symbol) (st :: [Type]). InstrWrapC dt name => Label name -> AppendCtorField (GetCtorField dt name) st :-> (dt ': st) #
Wrap entry in constructor. Useful for sum types.
fieldCtor :: forall (st :: [Type]) f. HasCallStack => (st :-> (f ': st)) -> FieldConstructor st f #
Lift an instruction to field constructor.
deconstruct :: forall dt (fields :: [Type]) (st :: [Type]). (InstrDeconstructC dt, KnownList fields, ToTs fields ~ ToTs (ConstructorFieldTypes dt)) => (dt ': st) :-> (fields ++ st) #
Decompose a complex object into its fields
constructStack :: forall dt (fields :: [Type]) (st :: [Type]). (InstrConstructC dt, ToTs fields ~ ToTs (ConstructorFieldTypes dt), KnownList fields) => (fields ++ st) :-> (dt ': st) #
Construct an object from fields on the stack.
modifyField :: forall dt (name :: Symbol) (st :: [Type]). (InstrGetFieldC dt name, InstrSetFieldC dt name) => Label name -> (forall (st0 :: [Type]). (GetFieldType dt name ': st0) :-> (GetFieldType dt name ': st0)) -> (dt ': st) :-> (dt ': st) #
Apply given modifier to a datatype field.
getFieldNamed :: forall dt (name :: Symbol) (st :: [Type]). InstrGetFieldC dt name => Label name -> (dt ': st) :-> ((name :! GetFieldType dt name) ': (dt ': st)) #
Like getField, but leaves field named.
getField :: forall dt (name :: Symbol) (st :: [Type]). InstrGetFieldC dt name => Label name -> (dt ': st) :-> (GetFieldType dt name ': (dt ': st)) #
Extract a field of a datatype, leaving the original datatype on stack.
toFieldNamed :: forall dt (name :: Symbol) (st :: [Type]). InstrGetFieldC dt name => Label name -> (dt ': st) :-> ((name :! GetFieldType dt name) ': st) #
Like toField, but leaves field named.
toField :: forall dt (name :: Symbol) (st :: [Type]). InstrGetFieldC dt name => Label name -> (dt ': st) :-> (GetFieldType dt name ': st) #
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.
type HasFieldOfType dt (fname :: Symbol) fieldTy = (HasField dt fname, GetFieldType dt fname ~ fieldTy) #
Like HasField, but allows constrainting field type.
type (:=) (n :: Symbol) ty = 'NamedField n ty infixr 0 #
type family HasFieldsOfType dt (fs :: [NamedField]) where ... #
Shortcut for multiple HasFieldOfType constraints.
Equations
| HasFieldsOfType _1 ('[] :: [NamedField]) = () | |
| HasFieldsOfType dt ((n := ty) ': fs) = (HasFieldOfType dt n ty, HasFieldsOfType dt fs) |
data CaseClauseL (inp :: [Type]) (out :: [Type]) (param :: CaseClauseParam) where #
Lorentz analogy of CaseClause, it works on plain Type types.
Constructors
| CaseClauseL :: forall (x :: CtorField) (inp :: [Type]) (out :: [Type]) (ctor :: Symbol). (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)) | |
Defined in Lorentz.ADT Methods (/->) :: Label name -> body -> CaseClauseL inp out ('CaseClauseParam ctor x) # | |
class CaseArrow (name :: Symbol) body clause | clause -> name, clause -> body where #
Provides "case" arrow which works on different wrappers for clauses.
Methods
(/->) :: Label name -> body -> clause infixr 0 #
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 ~ name', body ~ ((arg ': inp) :-> out)) => CaseArrow name' body (CaseClauseU inp out '(name, arg)) | |
Defined in Lorentz.UParam | |
| (name ~ AppendSymbol "c" ctor, body ~ (AppendCtorField x inp :-> out)) => CaseArrow name body (CaseClauseL inp out ('CaseClauseParam ctor x)) | |
Defined in Lorentz.ADT Methods (/->) :: Label name -> body -> CaseClauseL inp out ('CaseClauseParam ctor x) # | |
| (name ~ AppendSymbol "c" ctor, KnownValue x) => CaseArrow name (IndigoClause x ret) (IndigoCaseClauseL ret ('CaseClauseParam ctor ('OneField x))) Source # | |
Defined in Indigo.Backend.Case Methods (/->) :: Label name -> IndigoClause x ret -> IndigoCaseClauseL ret ('CaseClauseParam ctor ('OneField x)) # | |
type CaseTC dt (out :: [Type]) (inp :: [Type]) clauses = (InstrCaseC dt, RMap (CaseClauses dt), RecFromTuple clauses, clauses ~ Rec (CaseClauseL inp out) (CaseClauses dt)) #
baseErrorDocHandlers :: [NumericErrorDocHandler] #
Handlers for most common errors defined in Lorentz.
voidResultDocHandler :: NumericErrorDocHandler #
Handler for VoidResult.
customErrorDocHandler :: NumericErrorDocHandler #
Handler for all CustomErrors.
applyErrorTagToErrorsDocWith :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => [NumericErrorDocHandler] -> ErrorTagMap -> (inp :-> out) -> inp :-> out #
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.
applyErrorTagToErrorsDoc :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => ErrorTagMap -> (inp :-> out) -> inp :-> out #
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.
data DDescribeErrorTagMap #
Adds a section which explains error tag mapping.
Constructors
| DDescribeErrorTagMap | |
Fields
| |
Instances
data NumericErrorDocHandlerError #
Errors for NumericErrorDocHandler
data NumericErrorDocHandler #
Handler which changes documentation for one particular error type.
data NumericErrorWrapper (numTag :: Nat) err #
Some error with a numeric tag attached.
Instances
| (ErrorHasDoc err, KnownNat numTag, ErrorHasNumericDoc err) => ErrorHasDoc (NumericErrorWrapper numTag err) | |
Defined in Lorentz.Errors.Numeric.Doc Associated Types type ErrorRequirements (NumericErrorWrapper numTag err) # Methods errorDocName :: Text # errorDocMdCauseInEntrypoint :: Markdown # errorDocHaskellRep :: Markdown # errorDocDependencies :: [SomeDocDefinitionItem] # errorDocRequirements :: Dict (ErrorRequirements (NumericErrorWrapper numTag err)) # | |
| type ErrorRequirements (NumericErrorWrapper numTag err) | |
Defined in Lorentz.Errors.Numeric.Doc | |
voidResultTag :: MText #
view type synonym as described in A1.
Instances
void type synonym as described in A1.
Instances
data VoidResult r #
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.
Instances
castDummyG :: (Generic a, Generic b, GCanCastTo (Rep a) (Rep b)) => Proxy a -> Proxy b -> () #
Implementation of castDummy for types composed from smaller types.
It helps to ensure that all necessary constraints are requested in instance
head.
allowCheckedCoerce :: forall k1 k2 (a :: k1) (b :: k2). Dict (CanCastTo a b, CanCastTo b a) #
Locally provide bidirectional CanCastTo instance.
allowCheckedCoerceTo :: forall k1 k2 (b :: k1) (a :: k2). Dict (CanCastTo a b) #
Locally provide given CanCastTo instance.
checkedCoercing_ :: forall a b (s :: [Type]). Coercible_ a b => ((b ': s) :-> (b ': s)) -> (a ': s) :-> (a ': s) #
Pretends that the top item of the stack was coerced.
checkedCoerce_ :: forall a b (s :: [Type]). Castable_ a b => (a ': s) :-> (b ': s) #
Coerce between types which have an explicit permission for that in the
face of CanCastTo constraint.
checkedCoerce :: (CanCastTo a b, Coercible a b) => a -> b #
Coercion in Haskell world which respects CanCastTo.
fromNamed :: forall (name :: Symbol) a (s :: [Type]). Label name -> (NamedF Identity a name ': s) :-> (a ': s) #
Unpack named value.
toNamed :: forall (name :: Symbol) a (s :: [Type]). Label name -> (a ': s) :-> (NamedF Identity a name ': s) #
Lift given value to a named value.
coerceUnwrap :: forall a (s :: [Type]). Wrappable a => (a ': s) :-> (Unwrappable a ': s) #
Specialized version of coerce_ to unwrap a haskell newtype.
coerceWrap :: forall a (s :: [Type]). Wrappable a => (Unwrappable a ': s) :-> (a ': s) #
Specialized version of coerce_ to wrap into a haskell newtype.
fakeCoercing :: forall (s1 :: [Type]) (s2 :: [Type]) (s1' :: [Type]) (s2' :: [Type]). (s1 :-> s2) -> s1' :-> s2' #
fakeCoerce :: forall (s1 :: [Type]) (s2 :: [Type]). s1 :-> s2 #
Convert between two stacks via failing.
gForcedCoerce_ :: forall k t (a :: k) (b :: k) (s :: [Type]). MichelsonCoercible (t a) (t b) => (t a ': s) :-> (t b ': s) #
forcedCoerce_ :: forall a b (s :: [Type]). MichelsonCoercible a b => (a ': s) :-> (b ': s) #
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 from morley-upgradeable), 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.
forcedCoerce :: Coercible a b => a -> b #
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.
type MichelsonCoercible a b = ToT a ~ ToT b #
Whether two types have the same Michelson representation.
class CanCastTo (a :: k) (b :: k1) where #
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 -> () #
An optional method which helps passing -Wredundant-constraints check. Also, you can set specific implementation for it with specific sanity checks.
Instances
type Castable_ a b = (MichelsonCoercible a b, CanCastTo a b) #
Coercion from a to b is permitted and safe.
type Coercible_ a b = (MichelsonCoercible a b, CanCastTo a b, CanCastTo b a) #
Coercions between a to b are permitted and safe.
errorToValNumeric :: IsError e => ErrorTagMap -> e -> (forall (t :: T). ErrorScope t => Value t -> r) -> r #
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).
errorFromValNumeric :: forall (t :: T) e. (KnownT t, IsError e) => ErrorTagMap -> Value t -> Either Text e #
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).
useNumericErrors :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => (inp :-> out) -> (inp :-> out, ErrorTagMap) #
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.
applyErrorTagMapWithExclusions :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => ErrorTagMap -> ErrorTagExclusions -> (inp :-> out) -> inp :-> out #
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).
applyErrorTagMap :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => ErrorTagMap -> (inp :-> out) -> inp :-> out #
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.
excludeErrorTags :: HasCallStack => ErrorTagExclusions -> ErrorTagMap -> ErrorTagMap #
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.
buildErrorTagMap :: HashSet MText -> ErrorTagMap #
Build ErrorTagMap from a set of textual tags.
addNewErrorTags :: ErrorTagMap -> HashSet MText -> ErrorTagMap #
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.
gatherErrorTags :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> HashSet MText #
Find all textual error tags that are used in typical
FAILWITH patterns within given instruction.
Map them to natural numbers.
type ErrorTagMap = Bimap Natural MText #
This is a bidirectional map with correspondence between numeric and textual error tags.
type ErrorTagExclusions = HashSet MText #
Tags excluded from map.
typeDoc :: QuasiQuoter #
QuasiQuote that helps generating TypeHasDoc instance.
Usage:
[typeDoc| <type> <description> |] [typeDoc| Storage "This is storage description" |]
See this tutorial which includes this quasiquote.
errorDoc :: QuasiQuoter #
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.
entrypointDoc :: QuasiQuoter #
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.
typeDocMdDescriptionReferToError :: IsError e => Markdown #
Implementation of typeDocMdDescription (of TypeHasDoc typeclass)
for Haskell types which sole purpose is to be error.
isInternalErrorClass :: ErrorClass -> Bool #
Whether given error class is about internal errors.
Internal errors are not enlisted on per-entrypoint basis, only once for the entire contract.
errorTagToText :: forall (tag :: Symbol). KnownSymbol tag => Text #
errorTagToMText :: forall (tag :: Symbol). Label tag -> MText #
Demote error tag to term level.
customErrorDocHaskellRepGeneral :: forall (tag :: Symbol). (SingI (ToT (ErrorArg tag)), IsError (CustomError tag), TypeHasDoc (ErrorArg tag), CustomErrorHasDoc tag) => Text -> Proxy tag -> Markdown #
Description of error representation in Haskell.
failUnexpected :: forall (s :: [Type]) (t :: [Type]). MText -> s :-> t #
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.
failUsing :: forall e (s :: [Type]) (t :: [Type]). IsError e => e -> s :-> t #
Fail with the given Haskell value.
isoErrorFromVal :: forall (t :: T) e. (Typeable t, Typeable (ToT e), IsoValue e) => Value t -> Either Text e #
Implementation of errorFromVal via IsoValue.
isoErrorToVal :: (KnownError e, IsoValue e) => e -> (forall (t :: T). ErrorScope t => Value t -> r) -> r #
Implementation of errorToVal via IsoValue.
type ErrorScope (t :: T) = (Typeable t, ConstantScope t) #
class (Typeable e, ErrorHasDoc e) => IsError e where #
Haskell type representing error.
Methods
errorToVal :: e -> (forall (t :: T). ErrorScope t => Value t -> r) -> r #
Converts a Haskell error into Value representation.
errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text e #
Converts a Value into Haskell error.
Instances
| (TypeError ('Text "Use representative error messages") :: Constraint) => IsError () | |
Defined in Lorentz.Errors Methods errorToVal :: () -> (forall (t :: T). ErrorScope t => Value t -> r) -> r # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text () # | |
| IsError UnspecifiedError | |
Defined in Lorentz.Errors Methods errorToVal :: UnspecifiedError -> (forall (t :: T). ErrorScope t => Value t -> r) -> r # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text UnspecifiedError # | |
| IsError MText | 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 # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text MText # | |
| (Typeable r, NiceConstant r, ErrorHasDoc (VoidResult r)) => IsError (VoidResult r) | |
Defined in Lorentz.Macro Methods errorToVal :: VoidResult r -> (forall (t :: T). ErrorScope t => Value t -> r0) -> r0 # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text (VoidResult r) # | |
| (CustomErrorHasDoc tag, KnownError (ErrorArg tag), IsoValue (ErrorArg tag)) => IsError (CustomError tag) | |
Defined in Lorentz.Errors Methods errorToVal :: CustomError tag -> (forall (t :: T). ErrorScope t => Value t -> r) -> r # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text (CustomError tag) # | |
| (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) | If |
Defined in Lorentz.Errors Methods errorToVal :: (arg -> CustomError tag) -> (forall (t :: T). ErrorScope t => Value t -> r) -> r # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text (arg -> CustomError tag) # | |
type family ErrorRequirements e #
Constraints which we require in a particular instance. You are not oblidged to often instantiate this correctly, it is only useful for some utilities.
Instances
| type ErrorRequirements () | |
Defined in Lorentz.Errors type ErrorRequirements () = () | |
| type ErrorRequirements NumericTextError | |
Defined in Lorentz.Errors.Numeric.Doc type ErrorRequirements NumericTextError = () | |
| type ErrorRequirements UnspecifiedError | |
Defined in Lorentz.Errors | |
| type ErrorRequirements MText | |
Defined in Lorentz.Errors | |
| type ErrorRequirements (VoidResult r) | |
Defined in Lorentz.Macro | |
| type ErrorRequirements (CustomError tag) | |
Defined in Lorentz.Errors | |
| type ErrorRequirements (arg -> CustomError tag) | |
Defined in Lorentz.Errors | |
| type ErrorRequirements (NumericErrorWrapper numTag err) | |
Defined in Lorentz.Errors.Numeric.Doc | |
class Typeable e => ErrorHasDoc e where #
Minimal complete definition
errorDocName, errorDocMdCause, errorDocHaskellRep, errorDocDependencies
Associated Types
type ErrorRequirements e #
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 = () #
Methods
errorDocName :: Text #
Name of error as it appears in the corresponding section title.
What should happen for this error to be raised.
errorDocMdCauseInEntrypoint :: Markdown #
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 #
How this error is represented in Haskell.
Error class.
errorDocDependencies :: [SomeDocDefinitionItem] #
Which definitions documentation for this error mentions.
errorDocRequirements :: Dict (ErrorRequirements e) #
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.
Instances
data UnspecifiedError #
Use this type as replacement for () when you really want to leave
error cause unspecified.
Constructors
| UnspecifiedError |
Instances
| Generic UnspecifiedError | |
Defined in Lorentz.Errors Associated Types type Rep UnspecifiedError :: Type -> Type # Methods from :: UnspecifiedError -> Rep UnspecifiedError x # to :: Rep UnspecifiedError x -> UnspecifiedError # | |
| IsError UnspecifiedError | |
Defined in Lorentz.Errors Methods errorToVal :: UnspecifiedError -> (forall (t :: T). ErrorScope t => Value t -> r) -> r # errorFromVal :: forall (t :: T). KnownT t => Value t -> Either Text UnspecifiedError # | |
| ErrorHasDoc UnspecifiedError | |
Defined in Lorentz.Errors Associated Types | |
| IsoValue UnspecifiedError | |
Defined in Lorentz.Errors Associated Types type ToT UnspecifiedError :: T # Methods toVal :: UnspecifiedError -> Value (ToT UnspecifiedError) # fromVal :: Value (ToT UnspecifiedError) -> UnspecifiedError # | |
| type Rep UnspecifiedError | |
| type ErrorRequirements UnspecifiedError | |
Defined in Lorentz.Errors | |
| type ToT UnspecifiedError | |
Defined in Lorentz.Errors | |
Type wrapper for an IsError.
type family ErrorArg (tag :: Symbol) #
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 "senderIsNotAdmin" | Contract initiator should be contract admin in order to perform this operation. |
Defined in Lorentz.Errors.Common type ErrorArg "senderIsNotAdmin" = () | |
| type ErrorArg "uparamArgumentUnpackFailed" | |
Defined in Lorentz.UParam type ErrorArg "uparamArgumentUnpackFailed" = () | |
| type ErrorArg "uparamNoSuchEntrypoint" | |
Defined in Lorentz.UParam | |
data CustomError (tag :: Symbol) #
Material custom error.
Use this in pattern matches against error (e.g. in tests).
Constructors
| CustomError | |
Instances
type RequireNoArgError (tag :: Symbol) (msg :: ErrorMessage) = (TypeErrorUnless (ErrorArg tag == ()) msg, msg ~ ('Text "Expected no-arg error, but given error requires argument of type " :<>: 'ShowType (ErrorArg tag))) #
data ErrorClass #
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 | |
Defined in Lorentz.Errors Methods readsPrec :: Int -> ReadS ErrorClass # readList :: ReadS [ErrorClass] # readPrec :: ReadPrec ErrorClass # readListPrec :: ReadPrec [ErrorClass] # | |
| Lift ErrorClass | |
Defined in Lorentz.Errors Methods lift :: ErrorClass -> Q Exp # | |
| Buildable ErrorClass | |
Defined in Lorentz.Errors Methods build :: ErrorClass -> Builder # | |
class (KnownSymbol tag, TypeHasDoc (ErrorArg tag), IsError (CustomError tag)) => CustomErrorHasDoc (tag :: Symbol) where #
Minimal complete definition
Methods
customErrDocMdCause :: Markdown #
What should happen for this error to be raised.
customErrDocMdCauseInEntrypoint :: Markdown #
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 #
Error class.
By default this returns "unknown error" class; though you should provide explicit implementation in order to avoid a warning.
customErrArgumentSemantics :: Maybe Markdown #
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
Mentions that contract uses given error.
Constructors
| DError :: forall e. ErrorHasDoc e => Proxy e -> DError |
Instances
| Eq DError | |
| Ord DError | |
| DocItem DError | |
Defined in Lorentz.Errors Associated Types type DocItemPlacement DError :: DocItemPlacementKind # 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 | |
Defined in Lorentz.Errors | |
| type DocItemReferenced DError | |
Defined in Lorentz.Errors | |
Documentation for custom errors.
Mentions that entrypoint throws given error.
Constructors
| DThrows :: forall e. ErrorHasDoc e => Proxy e -> DThrows |
Instances
| Eq DThrows | |
| DocItem DThrows | |
Defined in Lorentz.Errors Associated Types type DocItemPlacement DThrows :: DocItemPlacementKind # 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 | |
Defined in Lorentz.Errors | |
| type DocItemReferenced DThrows | |
Defined in Lorentz.Errors | |
dropT :: forall a (inp :: [Type]) (dinp :: [Type]) (dout :: [Type]) (out :: [Type]). (DipT inp a inp dinp dout out, dinp ~ (a ': dout)) => inp :-> out #
Remove element with the given type from the stack.
dipT :: forall a (inp :: [Type]) (dinp :: [Type]) (dout :: [Type]) (out :: [Type]). DipT inp a inp dinp dout out => (dinp :-> dout) -> inp :-> out #
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.
dupT :: forall a (st :: [Type]). DupT st a st => st :-> (a ': st) #
Duplicate an element of stack referring it by type.
If stack contains multiple entries of this type, compile error is raised.
Minimal complete definition
expressionToScriptExpr :: Expression -> ByteString #
Similar to valueToScriptExpr, but for values encoded as Expressions.
This is only used in tests.
valueToScriptExpr :: NicePackedValue t => t -> ByteString #
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.
lEncodeValue :: NicePrintedValue a => a -> ByteString #
lUnpackValue :: NiceUnpackedValue a => Packed a -> Either UnpackError a #
lPackValue :: NicePackedValue a => a -> Packed a #
lUnpackValueRaw :: NiceUnpackedValue a => ByteString -> Either UnpackError a #
lPackValueRaw :: NicePackedValue a => a -> ByteString #
toHashHs :: forall (alg :: HashAlgorithmKind) bs. (BytesLike bs, KnownHashAlgorithm alg) => bs -> Hash alg bs #
Evaluate hash in Haskell world.
lSignEd22519 :: BytesLike a => SecretKey -> a -> TSignature a #
Sign data using Ed25519 curve. TODO [#456]: handle other methods, either all at once (if viable) or each one separately
class (KnownValue bs, ToT bs ~ ToT ByteString) => BytesLike bs where #
Everything which is represented as bytes inside.
Methods
toBytes :: bs -> ByteString #
Instances
| BytesLike ByteString | |
Defined in Lorentz.Bytes Methods toBytes :: ByteString -> ByteString # | |
| Typeable a => BytesLike (Packed a) | |
Defined in Lorentz.Bytes Methods toBytes :: Packed a -> ByteString # | |
| (Typeable alg, Typeable a) => BytesLike (Hash alg a) | |
Defined in Lorentz.Bytes Methods toBytes :: Hash alg a -> ByteString # | |
Represents a ByteString resulting from packing a value of type a.
This is not guaranteed to keep some packed value, and unpack can fail.
We do so because often we need to accept values of such type from user,
and also because there is no simple way to check validity of packed data
without performing full unpack.
So this wrapper is rather a hint for users.
Constructors
| Packed | |
Fields | |
Instances
newtype TSignature a #
Represents a signature, where signed data has given type.
Since we usually sign a packed data, a common pattern for this type is
TSignature (.
If you don't want to use Packed signedData)Packed, use plain TSignature ByteString instead.
Constructors
| TSignature | |
Fields | |
Instances
newtype Hash (alg :: HashAlgorithmKind) a #
Hash of type t evaluated from data of type a.
Constructors
| HashUnsafe | |
Fields
| |
Instances
class Typeable alg => KnownHashAlgorithm (alg :: HashAlgorithmKind) where #
Hash algorithm used in Tezos.
Minimal complete definition
Methods
hashAlgorithmName :: Proxy alg -> Text #
computeHash :: ByteString -> ByteString #
toHash :: forall bs (s :: [Type]). BytesLike bs => (bs ': s) :-> (Hash alg bs ': s) #
Instances
| KnownHashAlgorithm Sha256 | |
Defined in Lorentz.Bytes Methods hashAlgorithmName :: Proxy Sha256 -> Text # computeHash :: ByteString -> ByteString # toHash :: forall bs (s :: [Type]). BytesLike bs => (bs ': s) :-> (Hash Sha256 bs ': s) # | |
| KnownHashAlgorithm Sha512 | |
Defined in Lorentz.Bytes Methods hashAlgorithmName :: Proxy Sha512 -> Text # computeHash :: ByteString -> ByteString # toHash :: forall bs (s :: [Type]). BytesLike bs => (bs ': s) :-> (Hash Sha512 bs ': s) # | |
| KnownHashAlgorithm Blake2b | |
Defined in Lorentz.Bytes Methods hashAlgorithmName :: Proxy Blake2b -> Text # computeHash :: ByteString -> ByteString # toHash :: forall bs (s :: [Type]). BytesLike bs => (bs ': s) :-> (Hash Blake2b bs ': s) # | |
data DHashAlgorithm #
Documentation item for hash algorithms.
Instances
data Sha256 (a :: HashAlgoTag) #
Instances
| KnownHashAlgorithm Sha256 | |
Defined in Lorentz.Bytes Methods hashAlgorithmName :: Proxy Sha256 -> Text # computeHash :: ByteString -> ByteString # toHash :: forall bs (s :: [Type]). BytesLike bs => (bs ': s) :-> (Hash Sha256 bs ': s) # | |
data Sha512 (a :: HashAlgoTag) #
Instances
| KnownHashAlgorithm Sha512 | |
Defined in Lorentz.Bytes Methods hashAlgorithmName :: Proxy Sha512 -> Text # computeHash :: ByteString -> ByteString # toHash :: forall bs (s :: [Type]). BytesLike bs => (bs ': s) :-> (Hash Sha512 bs ': s) # | |
data Blake2b (a :: HashAlgoTag) #
Instances
| KnownHashAlgorithm Blake2b | |
Defined in Lorentz.Bytes Methods hashAlgorithmName :: Proxy Blake2b -> Text # computeHash :: ByteString -> ByteString # toHash :: forall bs (s :: [Type]). BytesLike bs => (bs ': s) :-> (Hash Blake2b bs ': s) # | |
mkDEntrypointExample :: NiceParameter a => a -> DEntrypointExample #
cutLorentzNonDoc :: forall (inp :: [Type]) (out :: [Type]) (s :: [Type]). (inp :-> out) -> s :-> s #
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.
renderLorentzDocWithGitRev :: forall (inp :: [Type]) (out :: [Type]). DGitRevision -> (inp :-> out) -> LText #
buildLorentzDocWithGitRev :: forall (inp :: [Type]) (out :: [Type]). DGitRevision -> (inp :-> out) -> ContractDoc #
buildLorentzDoc :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> ContractDoc #
data DEntrypointExample #
Modify the example value of an entrypoint
Constructors
| ParameterScope t => DEntrypointExample (Value t) |
Instances
| DocItem DEntrypointExample | |
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 | |
Defined in Lorentz.Doc | |
| type DocItemReferenced DEntrypointExample | |
Defined in Lorentz.Doc | |
printLorentzContract :: (NiceParameterFull cp, NiceStorage st) => Bool -> Contract cp st -> LText #
Pretty-print a Lorentz contract into Michelson code.
printLorentzValue :: NicePrintedValue v => Bool -> v -> LText #
Pretty-print a Haskell value as Michelson one.
analyzeLorentz :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> AnalyzerRes #
Lorentz version of analyzer.
interpretLorentzLambda :: (IsoValue inp, IsoValue out) => ContractEnv -> Lambda inp out -> inp -> Either MichelsonFailed out #
Like interpretLorentzInstr, but works on lambda rather than
arbitrary instruction.
interpretLorentzInstr :: forall (inp :: [Type]) (out :: [Type]). (IsoValuesStack inp, IsoValuesStack out) => ContractEnv -> (inp :-> out) -> Rec Identity inp -> Either MichelsonFailed (Rec Identity out) #
Interpret a Lorentz instruction, for test purposes. Note that this does not run the optimizer.
compileLorentzContract :: (NiceParameterFull cp, NiceStorage st) => Contract cp st -> Contract (ToT cp) (ToT st) #
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.
defaultContract :: ContractCode cp st -> Contract cp st #
Compile contract with defaultCompilationOptions and cDisableInitialCast set to False.
compileLorentzWithOptions :: forall (inp :: [Type]) (out :: [Type]). CompilationOptions -> (inp :-> out) -> Instr (ToTs inp) (ToTs out) #
Compile Lorentz code, optionally running the optimizer, string and byte transformers.
compileLorentz :: forall (inp :: [Type]) (out :: [Type]). (inp :-> out) -> Instr (ToTs inp) (ToTs out) #
For use outside of Lorentz. Will use defaultCompilationOptions.
defaultCompilationOptions :: CompilationOptions #
Runs Michelson optimizer with default config and does not touch strings and bytes.
data CompilationOptions #
Options to control Lorentz to Michelson compilation.
Constructors
| CompilationOptions | |
Fields
| |
newtype ParameterWrapper deriv cp #
Wrap parameter into this to locally assign a way to derive entrypoints for it.
Constructors
| ParameterWrapper | |
Fields
| |
Instances
type family Unwrappable s #
Instances
| type Unwrappable (UParam entries) | |
Defined in Lorentz.UParam | |
| type Unwrappable (ParameterWrapper deriv cp) | |
Defined in Lorentz.Entrypoints.Manual | |
| type Unwrappable (NamedF Maybe a name) | |
Defined in Lorentz.Wrappable | |
| type Unwrappable (NamedF Identity a name) | |
Defined in Lorentz.Wrappable | |
class ToT s ~ ToT (Unwrappable s) => Wrappable s #
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.
Instances
| Wrappable (UParam entries) | |
Defined in Lorentz.UParam Associated Types type Unwrappable (UParam entries) # | |
| Wrappable (ParameterWrapper deriv cp) | |
Defined in Lorentz.Entrypoints.Manual Associated Types type Unwrappable (ParameterWrapper deriv cp) # | |
| Wrappable (NamedF Maybe a name) | |
Defined in Lorentz.Wrappable Associated Types type Unwrappable (NamedF Maybe a name) # | |
| Wrappable (NamedF Identity a name) | |
Defined in Lorentz.Wrappable Associated Types type Unwrappable (NamedF Identity a name) # | |
type family ArithResHs aop n m #
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 n m #
Lifted ArithOp.
Associated Types
type ArithResHs aop n m #
Instances
type family UnaryArithResHs aop n #
Instances
| type UnaryArithResHs Abs Integer | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Neg Integer | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Neg Natural | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Not Bool | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Not Integer | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Not Natural | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Eq' Integer | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Neq Integer | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Lt Integer | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Gt Integer | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Le Integer | |
Defined in Lorentz.Arith | |
| type UnaryArithResHs Ge Integer | |
Defined in Lorentz.Arith | |
class (UnaryArithOp aop (ToT n), NiceComparable n, ToT (UnaryArithResHs aop n) ~ UnaryArithRes aop (ToT n)) => UnaryArithOpHs aop n #
Lifted UnaryArithOp.
Associated Types
type UnaryArithResHs aop n #
Instances
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 | |
Defined in Lorentz.Entrypoints.Impl Associated Types type EpdAllEntrypoints EpdPlain cp :: [(Symbol, Type)] # type EpdLookupEntrypoint EpdPlain cp :: Symbol -> Exp (Maybe Type) # Methods epdNotes :: (Notes (ToT cp), RootAnn) # epdCall :: forall (name :: Symbol). ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint EpdPlain cp name)) # epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints EpdPlain cp) # | |
| type EpdLookupEntrypoint EpdPlain cp | |
Defined in Lorentz.Entrypoints.Impl | |
| type EpdAllEntrypoints EpdPlain cp | |
Defined in Lorentz.Entrypoints.Impl | |
data EpdRecursive #
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
data EpdDelegate #
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
data EpdWithRoot (r :: Symbol) (epd :: k) #
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 | |
Defined in Lorentz.Entrypoints.Impl Associated Types type EpdAllEntrypoints (EpdWithRoot r deriv) cp :: [(Symbol, Type)] # type EpdLookupEntrypoint (EpdWithRoot r deriv) cp :: Symbol -> Exp (Maybe Type) # Methods epdNotes :: (Notes (ToT cp), RootAnn) # epdCall :: forall (name :: Symbol). ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint (EpdWithRoot r deriv) cp name)) # epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints (EpdWithRoot r deriv) cp) # | |
| type EpdLookupEntrypoint (EpdWithRoot r deriv :: Type) cp | |
Defined in Lorentz.Entrypoints.Impl | |
| type EpdAllEntrypoints (EpdWithRoot r deriv :: Type) cp | |
Defined in Lorentz.Entrypoints.Impl type EpdAllEntrypoints (EpdWithRoot r deriv :: Type) cp = '(r, cp) ': PlainAllEntrypointsExt deriv cp | |
newtype PrintAsValue a #
Provides Buildable instance that prints Lorentz value via Michelson's
Value.
Result won't be very pretty, but this avoids requiring Show or
Buildable instances.
Constructors
| PrintAsValue a |
Instances
| NicePrintedValue a => Buildable (PrintAsValue a) | |
Defined in Lorentz.Value Methods build :: PrintAsValue a -> Builder # | |
type family MemOpKeyHs c #
Instances
| type MemOpKeyHs (Set e) | |
Defined in Lorentz.Polymorphic | |
| type MemOpKeyHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type MemOpKeyHs (BigMap k v) | |
Defined in Lorentz.Polymorphic | |
class (MemOp (ToT c), ToT (MemOpKeyHs c) ~ MemOpKey (ToT c)) => MemOpHs c #
Lifted MemOpKey.
Associated Types
type MemOpKeyHs c #
Instances
| NiceComparable e => MemOpHs (Set e) | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (Set e) # | |
| NiceComparable k => MemOpHs (Map k v) | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (Map k v) # | |
| NiceComparable k => MemOpHs (BigMap k v) | |
Defined in Lorentz.Polymorphic Associated Types type MemOpKeyHs (BigMap k v) # | |
type family IsoMapOpRes c b where ... #
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) |
type family MapOpResHs c :: Type -> Type #
Instances
| type MapOpResHs [e] | |
Defined in Lorentz.Polymorphic type MapOpResHs [e] = [] | |
| type MapOpResHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
type family MapOpInpHs c #
Instances
| type MapOpInpHs [e] | |
Defined in Lorentz.Polymorphic type MapOpInpHs [e] = e | |
| type MapOpInpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
class (MapOp (ToT c), ToT (MapOpInpHs c) ~ MapOpInp (ToT c), ToT (MapOpResHs c ()) ~ MapOpRes (ToT c) (ToT ())) => MapOpHs c #
Lifted MapOp.
Instances
| MapOpHs [e] | |
Defined in Lorentz.Polymorphic | |
| NiceComparable k => MapOpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
type family IterOpElHs c #
Instances
| type IterOpElHs [e] | |
Defined in Lorentz.Polymorphic type IterOpElHs [e] = e | |
| type IterOpElHs (Set e) | |
Defined in Lorentz.Polymorphic | |
| type IterOpElHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
class (IterOp (ToT c), ToT (IterOpElHs c) ~ IterOpEl (ToT c)) => IterOpHs c #
Lifted IterOp.
Associated Types
type IterOpElHs c #
Instances
| IterOpHs [e] | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs [e] # | |
| NiceComparable e => IterOpHs (Set e) | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs (Set e) # | |
| NiceComparable k => IterOpHs (Map k v) | |
Defined in Lorentz.Polymorphic Associated Types type IterOpElHs (Map k v) # | |
class SizeOp (ToT c) => SizeOpHs c #
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 | |
Defined in Lorentz.Polymorphic | |
| SizeOpHs MText | |
Defined in Lorentz.Polymorphic | |
| SizeOpHs [a] | |
Defined in Lorentz.Polymorphic | |
| SizeOpHs (Set a) | |
Defined in Lorentz.Polymorphic | |
| SizeOpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
type family UpdOpParamsHs c #
Instances
| type UpdOpParamsHs (Set a) | |
Defined in Lorentz.Polymorphic | |
| type UpdOpParamsHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type UpdOpParamsHs (BigMap k v) | |
Defined in Lorentz.Polymorphic | |
type family UpdOpKeyHs c #
Instances
| type UpdOpKeyHs (Set a) | |
Defined in Lorentz.Polymorphic | |
| type UpdOpKeyHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type UpdOpKeyHs (BigMap k v) | |
Defined in Lorentz.Polymorphic | |
class (UpdOp (ToT c), ToT (UpdOpKeyHs c) ~ UpdOpKey (ToT c), ToT (UpdOpParamsHs c) ~ UpdOpParams (ToT c)) => UpdOpHs c #
Lifted UpdOp.
Instances
| NiceComparable a => UpdOpHs (Set a) | |
Defined in Lorentz.Polymorphic | |
| NiceComparable k => UpdOpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| NiceComparable k => UpdOpHs (BigMap k v) | |
Defined in Lorentz.Polymorphic | |
type family GetOpValHs c #
Instances
| type GetOpValHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type GetOpValHs (BigMap k v) | |
Defined in Lorentz.Polymorphic | |
type family GetOpKeyHs c #
Instances
| type GetOpKeyHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| type GetOpKeyHs (BigMap k v) | |
Defined in Lorentz.Polymorphic | |
class (GetOp (ToT c), ToT (GetOpKeyHs c) ~ GetOpKey (ToT c), ToT (GetOpValHs c) ~ GetOpVal (ToT c)) => GetOpHs c #
Lifted GetOp.
Instances
| NiceComparable k => GetOpHs (Map k v) | |
Defined in Lorentz.Polymorphic | |
| NiceComparable k => GetOpHs (BigMap k v) | |
Defined in Lorentz.Polymorphic | |
class ConcatOp (ToT c) => ConcatOpHs c #
Lifted ConcatOp.
Instances
| ConcatOpHs ByteString | |
Defined in Lorentz.Polymorphic | |
| ConcatOpHs MText | |
Defined in Lorentz.Polymorphic | |
class SliceOp (ToT c) => SliceOpHs c #
Lifted SliceOp.
Instances
| SliceOpHs ByteString | |
Defined in Lorentz.Polymorphic | |
| SliceOpHs MText | |
Defined in Lorentz.Polymorphic | |
type family EModOpResHs n m #
Instances
| type EModOpResHs Integer Integer | |
Defined in Lorentz.Polymorphic | |
| type EModOpResHs Integer Natural | |
Defined in Lorentz.Polymorphic | |
| type EModOpResHs Natural Integer | |
Defined in Lorentz.Polymorphic | |
| type EModOpResHs Natural Natural | |
Defined in Lorentz.Polymorphic | |
| type EModOpResHs Mutez Natural | |
Defined in Lorentz.Polymorphic | |
| type EModOpResHs Mutez Mutez | |
Defined in Lorentz.Polymorphic | |
type family EDivOpResHs n m #
Instances
| type EDivOpResHs Integer Integer | |
Defined in Lorentz.Polymorphic | |
| type EDivOpResHs Integer Natural | |
Defined in Lorentz.Polymorphic | |
| type EDivOpResHs Natural Integer | |
Defined in Lorentz.Polymorphic | |
| type EDivOpResHs Natural Natural | |
Defined in Lorentz.Polymorphic | |
| type EDivOpResHs Mutez Natural | |
Defined in Lorentz.Polymorphic | |
| type EDivOpResHs Mutez Mutez | |
Defined in Lorentz.Polymorphic | |
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 #
Lifted EDivOp.
Instances
| EDivOpHs Integer Integer | |
Defined in Lorentz.Polymorphic | |
| EDivOpHs Integer Natural | |
Defined in Lorentz.Polymorphic | |
| EDivOpHs Natural Integer | |
Defined in Lorentz.Polymorphic | |
| EDivOpHs Natural Natural | |
Defined in Lorentz.Polymorphic | |
| EDivOpHs Mutez Natural | |
Defined in Lorentz.Polymorphic | |
| EDivOpHs Mutez Mutez | |
Defined in Lorentz.Polymorphic | |
stackType :: forall (s :: [Type]). s :-> s #
Fix the current type of the stack to be given one.
>>>stackType @'[Natural]>>>stackType @(Integer : Natural : s)>>>stackType @'["balance" :! Integer, "toSpend" :! Integer, BigMap Address Integer]
Note that you can omit arbitrary parts of the type.
>>>stackType @'["balance" :! Integer, "toSpend" :! _, BigMap _ _]
testAssert :: forall (out :: [Type]) (inp :: [Type]). (Typeable (ToTs out), HasCallStack) => Text -> PrintComment (ToTs inp) -> (inp :-> (Bool ': out)) -> inp :-> inp #
Test an invariant, fail if it does not hold.
This won't be included into production contract and is executed only in tests.
printComment :: forall (s :: [Type]). PrintComment (ToTs s) -> s :-> s #
Print a comment. It will be visible in tests.
>>>printComment "Hello world!">>>printComment $ "On top of the stack I see " <> stackRef @0
stackRef :: forall (gn :: Nat) (st :: [T]) (n :: Peano). (n ~ ToPeano gn, SingI n, KnownPeano n, RequireLongerThan st n) => PrintComment st #
Include a value at given position on stack into comment produced
by printComment.
>>>stackRef @0<includes the top of the stack>
convertContractRef :: forall cp contract2 contract1. (ToContractRef cp contract1, FromContractRef cp contract2) => contract1 -> contract2 #
callingDefTAddress :: NiceParameterFull cp => TAddress cp -> ContractRef (GetDefaultEntrypointArg cp) #
Specification of callTAddress to call the default entrypoint.
callingTAddress :: forall cp (mname :: Maybe Symbol). NiceParameterFull cp => TAddress cp -> EntrypointRef mname -> ContractRef (GetEntrypointArgCustom cp mname) #
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).
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
| cp ~ cp' => ToTAddress cp (TAddress cp') | |
Defined in Lorentz.Address Methods toTAddress :: TAddress cp' -> TAddress cp # | |
| (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) | |
Defined in Lorentz.Address Methods toContractRef :: TAddress cp -> ContractRef arg # | |
| CanCastTo Address (TAddress p :: Type) | |
| CanCastTo (TAddress p :: Type) Address | |
| Generic (TAddress p) | |
| ToAddress (TAddress cp) | |
Defined in Lorentz.Address | |
| HasAnnotation (TAddress p) | |
Defined in Lorentz.Address Methods getAnnotation :: FollowEntrypointFlag -> Notes (ToT (TAddress p)) # | |
| IsoValue (TAddress p) | |
| type Rep (TAddress p) | |
Defined in Lorentz.Address type Rep (TAddress p) = D1 ('MetaData "TAddress" "Lorentz.Address" "lorentz-0.8.0-2ab0fc6aba7fcc470c060ce1c9d57f36b1ebbf1b673c104de17810c8027154b6" 'True) (C1 ('MetaCons "TAddress" 'PrefixI 'True) (S1 ('MetaSel ('Just "unTAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Address))) | |
| type ToT (TAddress p) | |
Defined in Lorentz.Address | |
| type TypeDocFieldDescriptions (TAddress p) | |
Defined in Lorentz.Doc | |
newtype FutureContract arg #
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
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 | |
Defined in Lorentz.Address | |
| ToAddress EpAddress | |
Defined in Lorentz.Address | |
| ToAddress (FutureContract cp) | |
Defined in Lorentz.Address Methods toAddress :: FutureContract cp -> Address # | |
| ToAddress (ContractRef cp) | |
Defined in Lorentz.Address Methods toAddress :: ContractRef cp -> Address # | |
| ToAddress (TAddress cp) | |
Defined in Lorentz.Address | |
class ToTAddress cp a where #
Convert something referring to a contract (not specific entrypoint)
to TAddress in Haskell world.
Methods
toTAddress :: a -> TAddress cp #
Instances
| ToTAddress cp Address | |
Defined in Lorentz.Address Methods toTAddress :: Address -> TAddress cp # | |
| cp ~ cp' => ToTAddress cp (TAddress cp') | |
Defined in Lorentz.Address Methods toTAddress :: TAddress cp' -> TAddress cp # | |
class ToContractRef cp contract where #
Convert something to ContractRef in Haskell world.
Methods
toContractRef :: contract -> ContractRef cp #
Instances
| (NiceParameter cp, cp ~ cp') => ToContractRef cp (FutureContract cp') | |
Defined in Lorentz.Address Methods toContractRef :: FutureContract cp' -> ContractRef cp # | |
| cp ~ cp' => ToContractRef cp (ContractRef cp') | |
Defined in Lorentz.Address Methods toContractRef :: ContractRef cp' -> ContractRef cp # | |
| (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) | |
Defined in Lorentz.Address Methods toContractRef :: TAddress cp -> ContractRef arg # | |
class FromContractRef cp contract where #
Convert something from ContractAddr in Haskell world.
Methods
fromContractRef :: ContractRef cp -> contract #
Instances
| FromContractRef cp EpAddress | |
Defined in Lorentz.Address Methods fromContractRef :: ContractRef cp -> EpAddress # | |
| FromContractRef cp Address | |
Defined in Lorentz.Address Methods fromContractRef :: ContractRef cp -> Address # | |
| cp ~ cp' => FromContractRef cp (FutureContract cp') | |
Defined in Lorentz.Address Methods fromContractRef :: ContractRef cp -> FutureContract cp' # | |
| cp ~ cp' => FromContractRef cp (ContractRef cp') | |
Defined in Lorentz.Address Methods fromContractRef :: ContractRef cp -> ContractRef cp' # | |
type Entrypoint param store = '[param, store] :-> ContractOut store #
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.
type Entrypoint_ store = '[store] :-> ContractOut store #
Version of Entrypoint which accepts no argument.
optimizeLorentzWithConf :: forall (inp :: [Type]) (out :: [Type]). OptimizerConf -> (inp :-> out) -> inp :-> out #
transformBytesLorentz :: forall (inp :: [Type]) (out :: [Type]). Bool -> (ByteString -> ByteString) -> (inp :-> out) -> inp :-> out #
Lorentz version of transformBytes.
transformStringsLorentz :: forall (inp :: [Type]) (out :: [Type]). Bool -> (MText -> MText) -> (inp :-> out) -> inp :-> out #
Lorentz version of transformStrings.
parseLorentzValue :: KnownValue v => Text -> Either ParseLorentzError v #
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).
(#) :: forall (a :: [Type]) (b :: [Type]) (c :: [Type]). (a :-> b) -> (b :-> c) -> a :-> c infixl 8 #
iWithVarAnnotations :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => [Text] -> (inp :-> out) -> inp :-> out #
Wrap Lorentz instruction with variable annotations, annots list has to be
non-empty, otherwise this function raises an error.
iMapAnyCode :: forall (i1 :: [Type]) (i2 :: [Type]) (o :: [Type]). (forall (o' :: [T]). Instr (ToTs i1) o' -> Instr (ToTs i2) o') -> (i1 :-> o) -> i2 :-> o #
iNonFailingCode :: forall (inp :: [Type]) (out :: [Type]). HasCallStack => (inp :-> out) -> Instr (ToTs inp) (ToTs out) #
iGenericIf :: forall (a :: [Type]) (b :: [Type]) (c :: [Type]) (s :: [Type]). (forall (s' :: [T]). Instr (ToTs a) s' -> Instr (ToTs b) s' -> Instr (ToTs c) s') -> (a :-> s) -> (b :-> s) -> c :-> s #
newtype (inp :: [Type]) :-> (out :: [Type]) infixr 1 #
Alias for instruction which hides inner types representation via T.
Constructors
| LorentzInstr | |
Fields
| |
Instances
| (CanCastTo (ZippedStack i1) (ZippedStack i2), CanCastTo (ZippedStack o1) (ZippedStack o2)) => CanCastTo (i1 :-> o1 :: Type) (i2 :-> o2 :: Type) | |
| Eq (inp :-> out) | |
| Show (inp :-> out) | |
| Semigroup (s :-> s) | |
| Monoid (s :-> s) | |
| MapLorentzInstr (i :-> o) | |
Defined in Lorentz.Base | |
| type ToT (inp :-> out) | |
Defined in Lorentz.Zip | |
| type TypeDocFieldDescriptions (i :-> o) | |
Defined in Lorentz.Doc | |
Alias for :->, seems to make signatures more readable sometimes.
Let's someday decide which one of these two should remain.
type ContractOut st = '[([Operation], st)] #
type ContractCode cp st = '[(cp, st)] :-> ContractOut st #
data SomeContractCode where #
Constructors
| SomeContractCode :: forall cp st. (NiceParameterFull cp, NiceStorage st) => ContractCode cp st -> SomeContractCode |
type (&) a (b :: [Type]) = a ': b infixr 2 #
An alias for :.
We discourage its use as this hinders reading error messages (the compiler inserts unnecessary parentheses and indentation).
class MapLorentzInstr instr where #
Applicable for wrappers over Lorentz code.
Methods
mapLorentzInstr :: (forall (i :: [Type]) (o :: [Type]). (i :-> o) -> i :-> o) -> instr -> instr #
Modify all the code under given entity.
Instances
| MapLorentzInstr (i :-> o) | |
Defined in Lorentz.Base | |
type NiceParameterFull cp = (Typeable cp, ParameterDeclaresEntrypoints cp) #
Constraint applied to a whole parameter type.
parameterEntrypointCallCustom :: forall cp (mname :: Maybe Symbol). ParameterDeclaresEntrypoints cp => EntrypointRef mname -> EntrypointCall cp (GetEntrypointArgCustom cp mname) #
Universal entrypoint calling.
sepcCallRootChecked :: (NiceParameter cp, ForbidExplicitDefaultEntrypoint cp) => SomeEntrypointCall cp #
Call root entrypoint safely.
parameterEntrypointCallDefault :: ParameterDeclaresEntrypoints cp => EntrypointCall cp (GetDefaultEntrypointArg cp) #
Call the default entrypoint.
parameterEntrypointCall :: forall cp (name :: Symbol). ParameterDeclaresEntrypoints cp => Label name -> EntrypointCall cp (GetEntrypointArg cp name) #
Prepare call to given entrypoint.
This does not treat calls to default entrypoint in a special way.
To call default entrypoint properly use parameterEntrypointCallDefault.
parameterEntrypointsToNotes :: ParameterDeclaresEntrypoints cp => ParamNotes (ToT cp) #
Derive annotations for given parameter.
type family EpdLookupEntrypoint (deriv :: k) cp :: Symbol -> Exp (Maybe Type) #
Get entrypoint argument by name.
Instances
| type EpdLookupEntrypoint EpdPlain cp | |
Defined in Lorentz.Entrypoints.Impl | |
| type EpdLookupEntrypoint EpdRecursive cp | |
Defined in Lorentz.Entrypoints.Impl | |
| type EpdLookupEntrypoint EpdDelegate cp | |
Defined in Lorentz.Entrypoints.Impl | |
| type EpdLookupEntrypoint EpdNone cp | |
| type EpdLookupEntrypoint (PwDeriv deriv :: Type) (ParameterWrapper deriv cp) | |
Defined in Lorentz.Entrypoints.Manual type EpdLookupEntrypoint (PwDeriv deriv :: Type) (ParameterWrapper deriv cp) = EpdLookupEntrypoint deriv cp | |
| type EpdLookupEntrypoint (EpdWithRoot r deriv :: Type) cp | |
Defined in Lorentz.Entrypoints.Impl | |
type family EpdAllEntrypoints (deriv :: k) cp :: [(Symbol, Type)] #
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.
Instances
| type EpdAllEntrypoints EpdPlain cp | |
Defined in Lorentz.Entrypoints.Impl | |
| type EpdAllEntrypoints EpdRecursive cp | |
Defined in Lorentz.Entrypoints.Impl | |
| type EpdAllEntrypoints EpdDelegate cp | |
Defined in Lorentz.Entrypoints.Impl | |
| type EpdAllEntrypoints EpdNone cp | |
Defined in Lorentz.Entrypoints.Core | |
| type EpdAllEntrypoints (PwDeriv deriv :: Type) (ParameterWrapper deriv cp) | |
Defined in Lorentz.Entrypoints.Manual type EpdAllEntrypoints (PwDeriv deriv :: Type) (ParameterWrapper deriv cp) = EpdAllEntrypoints deriv cp | |
| type EpdAllEntrypoints (EpdWithRoot r deriv :: Type) cp | |
Defined in Lorentz.Entrypoints.Impl type EpdAllEntrypoints (EpdWithRoot r deriv :: Type) cp = '(r, cp) ': PlainAllEntrypointsExt deriv cp | |
class EntrypointsDerivation (deriv :: k) cp where #
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 :: k) cp :: [(Symbol, Type)] #
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 :: k) cp :: Symbol -> Exp (Maybe Type) #
Get entrypoint argument by name.
Methods
epdNotes :: (Notes (ToT cp), RootAnn) #
Construct parameter annotations corresponding to expected entrypoints set.
This method is implementation detail, for actual notes construction
use parameterEntrypointsToNotes.
epdCall :: forall (name :: Symbol). ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint deriv cp name)) #
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) #
Description of how each of the entrypoints is constructed.
Instances
type RequireAllUniqueEntrypoints cp = RequireAllUniqueEntrypoints' (ParameterEntrypointsDerivation cp) cp #
Ensure that all declared entrypoints are unique.
type family ParameterEntrypointsDerivation cp #
Instances
| type ParameterEntrypointsDerivation (ParameterWrapper epd cp) | |
Defined in Lorentz.Entrypoints.Manual | |
class (EntrypointsDerivation (ParameterEntrypointsDerivation cp) cp, RequireAllUniqueEntrypoints cp) => ParameterHasEntrypoints cp #
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 #
Instances
| (NiceParameter cp, EntrypointsDerivation epd cp, RequireAllUniqueEntrypoints' epd cp) => ParameterHasEntrypoints (ParameterWrapper epd cp) | |
Defined in Lorentz.Entrypoints.Manual Associated Types type ParameterEntrypointsDerivation (ParameterWrapper epd cp) # | |
type ParameterDeclaresEntrypoints cp = (If (CanHaveEntrypoints cp) (ParameterHasEntrypoints cp) (), NiceParameter cp, EntrypointsDerivation (GetParameterEpDerivation cp) cp) #
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.
type family AllParameterEntrypoints cp :: [(Symbol, Type)] where ... #
Get all entrypoints declared for parameter.
Equations
| AllParameterEntrypoints cp = EpdAllEntrypoints (GetParameterEpDerivation cp) cp |
type family LookupParameterEntrypoint cp :: Symbol -> Exp (Maybe Type) where ... #
Lookup for entrypoint type by name.
Does not treat default entrypoints in a special way.
Equations
| LookupParameterEntrypoint cp = EpdLookupEntrypoint (GetParameterEpDerivation cp) cp |
type GetEntrypointArg cp (name :: Symbol) = Eval (LiftM2 (FromMaybe :: Type -> Maybe Type -> Type -> Type) (TError (('Text "Entrypoint not found: " :<>: 'ShowType name) :$$: (('Text "In contract parameter `" :<>: 'ShowType cp) :<>: 'Text "`")) :: Type -> Type) (LookupParameterEntrypoint cp name)) #
Get type of entrypoint with given name, fail if not found.
type GetDefaultEntrypointArg cp = Eval (LiftM2 (FromMaybe :: Type -> Maybe Type -> Type -> Type) (Pure cp) (LookupParameterEntrypoint cp DefaultEpName)) #
Get type of entrypoint with given name, fail if not found.
type ForbidExplicitDefaultEntrypoint cp = Eval (LiftM3 (UnMaybe :: Exp Constraint -> (Type -> Exp Constraint) -> Maybe Type -> Constraint -> Type) (Pure (Pure ())) (TError ('Text "Parameter used here must have no explicit \"default\" entrypoint" :$$: (('Text "In parameter type `" :<>: 'ShowType cp) :<>: 'Text "`")) :: (Type -> Exp Constraint) -> Type) (LookupParameterEntrypoint cp DefaultEpName)) #
Ensure that there is no explicit "default" entrypoint.
type NoExplicitDefaultEntrypoint cp = Eval (LookupParameterEntrypoint cp DefaultEpName) ~ ('Nothing :: Maybe Type) #
Similar to ForbidExplicitDefaultEntrypoint, but in a version which
the compiler can work with (and which produces errors confusing for users :/)
data EntrypointRef (mname :: Maybe Symbol) where #
Which entrypoint to call.
We intentionally distinguish default and non-default cases because this makes API more details-agnostic.
Constructors
| CallDefault :: EntrypointRef ('Nothing :: Maybe Symbol) | Call the default entrypoint, or root if no explicit default is assigned. |
| Call :: forall (name :: Symbol). 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 | |
Defined in Lorentz.Entrypoints.Core Methods useHasEntrypointArg :: EntrypointRef mname -> (Dict (ParameterScope (ToT arg)), EpName) # | |
type family GetEntrypointArgCustom cp (mname :: Maybe Symbol) where ... #
Universal entrypoint lookup.
Equations
| GetEntrypointArgCustom cp ('Nothing :: Maybe Symbol) = GetDefaultEntrypointArg cp | |
| GetEntrypointArgCustom cp ('Just name) = GetEntrypointArg cp name |
class HasEntrypointArg (cp :: k) name arg where #
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) #
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 | |
Defined in Lorentz.Entrypoints.Core Methods useHasEntrypointArg :: TrustEpName -> (Dict (ParameterScope (ToT arg)), EpName) # | |
| (GetEntrypointArgCustom cp mname ~ arg, ParameterDeclaresEntrypoints cp) => HasEntrypointArg (cp :: Type) (EntrypointRef mname) arg | |
Defined in Lorentz.Entrypoints.Core Methods useHasEntrypointArg :: EntrypointRef mname -> (Dict (ParameterScope (ToT arg)), EpName) # | |
type HasDefEntrypointArg (cp :: k) defEpName defArg = (defEpName ~ EntrypointRef ('Nothing :: Maybe Symbol), HasEntrypointArg cp defEpName defArg) #
HasEntrypointArg constraint specialized to default entrypoint.
newtype TrustEpName #
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 | |
Defined in Lorentz.Entrypoints.Core Methods useHasEntrypointArg :: TrustEpName -> (Dict (ParameterScope (ToT arg)), EpName) # | |
type HasEntrypointOfType param (con :: Symbol) exp = (GetEntrypointArgCustom param ('Just con) ~ exp, ParameterDeclaresEntrypoints param) #
Checks that the given parameter consists of some specific entrypoint. Similar as
HasEntrypointArg but ensures that the argument matches the following datatype.
type family ParameterContainsEntrypoints param (fields :: [NamedEp]) where ... #
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 _1 ('[] :: [NamedEp]) = () | |
| ParameterContainsEntrypoints param ((n :> ty) ': rest) = (HasEntrypointOfType param n ty, ParameterContainsEntrypoints param rest) |
No entrypoints declared, parameter type will serve as argument type of the only existing entrypoint (default one).
Instances
| HasAnnotation cp => EntrypointsDerivation EpdNone cp | |
Defined in Lorentz.Entrypoints.Core Associated Types type EpdAllEntrypoints EpdNone cp :: [(Symbol, Type)] # type EpdLookupEntrypoint EpdNone cp :: Symbol -> Exp (Maybe Type) # Methods epdNotes :: (Notes (ToT cp), RootAnn) # epdCall :: forall (name :: Symbol). ParameterScope (ToT cp) => Label name -> EpConstructionRes (ToT cp) (Eval (EpdLookupEntrypoint EpdNone cp name)) # epdDescs :: Rec EpCallingDesc (EpdAllEntrypoints EpdNone cp) # | |
| type EpdLookupEntrypoint EpdNone cp | |
| type EpdAllEntrypoints EpdNone cp | |
Defined in Lorentz.Entrypoints.Core | |
newtype ShouldHaveEntrypoints a #
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
nicePrintedValueEvi :: NicePrintedValue a :- PrintedValScope (ToT a) #
nicePackedValueEvi :: NicePackedValue a :- PackedValScope (ToT a) #
niceConstantEvi :: NiceConstant a :- ConstantScope (ToT a) #
niceStorageEvi :: NiceStorage a :- StorageScope (ToT a) #
niceParameterEvi :: NiceParameter a :- ParameterScope (ToT a) #
class (IsoValue a, Typeable a) => KnownValue a #
Gathers constraints, commonly required for values.
Instances
| (IsoValue a, Typeable a) => KnownValue a | |
Defined in Lorentz.Constraints.Scopes | |
class (IsoValue a, ForbidOp (ToT a)) => NoOperation a #
Ensure given type does not contain "operation".
Instances
| (IsoValue a, ForbidOp (ToT a)) => NoOperation a | |
Defined in Lorentz.Constraints.Scopes | |
class (IsoValue a, ForbidContract (ToT a)) => NoContractType a #
Instances
| (IsoValue a, ForbidContract (ToT a)) => NoContractType a | |
Defined in Lorentz.Constraints.Scopes | |
class (IsoValue a, ForbidBigMap (ToT a)) => NoBigMap a #
Instances
| (IsoValue a, ForbidBigMap (ToT a)) => NoBigMap a | |
Defined in Lorentz.Constraints.Scopes | |
class (IsoValue a, HasNoNestedBigMaps (ToT a)) => CanHaveBigMap a #
Instances
| (IsoValue a, HasNoNestedBigMaps (ToT a)) => CanHaveBigMap a | |
Defined in Lorentz.Constraints.Scopes | |
type NiceParameter a = (KnownValue a, ProperParameterBetterErrors (ToT a)) #
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.
type NiceStorage a = (HasAnnotation a, KnownValue a, ProperStorageBetterErrors (ToT a)) #
type NiceConstant a = (KnownValue a, ProperConstantBetterErrors (ToT a)) #
type NicePackedValue a = (KnownValue a, ProperPackedValBetterErrors (ToT a)) #
type NiceUnpackedValue a = (KnownValue a, ProperUnpackedValBetterErrors (ToT a)) #
type NiceFullPackedValue a = (NicePackedValue a, NiceUnpackedValue a) #
type NicePrintedValue a = (KnownValue a, ProperPrintedValBetterErrors (ToT a)) #
type NiceComparable n = (KnownValue n, Comparable (ToT n)) #
class HasAnnotation a #
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.
Instances
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]) | |
Defined in Util.TypeTuple.Instances | |
| type IsoRecTuple (Rec f '[x1, x2, x3, x4, x5]) | |
Defined in Util.TypeTuple.Instances | |
| type IsoRecTuple (Rec f '[x1, x2, x3, x4]) | |
Defined in Util.TypeTuple.Instances | |
| type IsoRecTuple (Rec f '[x1, x2, x3]) | |
Defined in Util.TypeTuple.Instances | |
| type IsoRecTuple (Rec f '[x1, x2]) | |
Defined in Util.TypeTuple.Instances | |
| type IsoRecTuple (Rec f '[x]) | |
Defined in Util.TypeTuple.Instances | |
| type IsoRecTuple (Rec f ('[] :: [u])) | |
Defined in Util.TypeTuple.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.
withDepths :: [CstrDepth] -> GenericStrategy #
In this strategy the desired depths of contructors (in the type tree) and fields (in each constructor's tree) are provided manually and simply checked against the number of actual constructors and fields.
rightBalanced :: GenericStrategy #
Strategy to make right-balanced instances (both in constructors and fields).
leftBalanced :: GenericStrategy #
Strategy to make left-balanced instances (both in constructors and fields).
rightComb :: GenericStrategy #
Strategy to make fully right-leaning instances (both in constructors and fields).
Strategy to make fully left-leaning instances (both in constructors and fields).
cstr :: forall (n :: Nat). KnownNat n => [Natural] -> CstrDepth #
Helper for making a constructor depth.
Note that this is only intended to be more readable than directly using a
tuple with withDepths and for the ability to be used in places where
RebindableSyntax overrides the number literal resolution.
fld :: forall (n :: Nat). KnownNat n => Natural #
Helper for making a field depth.
Note that this is only intended to be more readable than directly using a
tuple with withDepths and for the ability to be used in places where
RebindableSyntax overrides the number literal resolution.
customGeneric :: String -> GenericStrategy -> Q [Dec] #
A piece of markdown document.
This is opposed to Text type, which in turn is not supposed to contain
markup elements.
data Label (name :: Symbol) where #
Proxy for a label type that includes the KnownSymbol constraint
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 | |
Entrypoint name.
There are two properties we care about:
- Special treatment of the
defaultentrypoint name.defaultis prohibited in theCONTRACTinstruction and in values ofaddressandcontracttypes. However, it is not prohibited in theSELFinstruction. Hence, the value insideEpNamecan be"default", so that we can distinguishSELFandSELF %default. It is important to distinguish them because their binary representation that is inserted into blockchain is different. For example, typecheckingSELF %defaultconsumes more gas thanSELF. In this module, we provide several smart constructors with different handling ofdefault, please use the appropriate one for your use case. - The set of permitted characters. Intuitively, an entrypoint name should
be valid only if it is a valid annotation (because entrypoints are defined
using field annotations). However, it is not enforced in Tezos.
It is not clear whether this behavior is intended. There is an upstream
issue which received
buglabel, so probably it is considered a bug. Currently we treat it as a bug and deviate from upstream implementation by probiting entrypoint names that are not valid annotations. If Tezos developers fix it soon, we will be happy. If they don't, we should (maybe temporarily) remove this limitation from our code. There is an issue in our repo as well.
Instances
| Eq EpName | |
| Ord EpName | |
| Show EpName | |
| Generic 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 type Rep EpName = D1 ('MetaData "EpName" "Michelson.Untyped.Entrypoints" "morley-1.10.0-68af1e740b777276c0faa8c9eb816cced5d661fe5bc7156ec578a8981070eca6" 'True) (C1 ('MetaCons "EpNameUnsafe" 'PrefixI 'True) (S1 ('MetaSel ('Just "unEpName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))) | |
This is a bidirectional pattern that can be used for two purposes:
- Construct an
EpNamereferring to the default entrypoint. - Use it in pattern-matching or in equality comparison to check whether
EpNamerefers to the default entrypoint. This is trickier because there are two possibleEpNamevalues referring to the default entrypoints.DefEpNamewill match only the most common one (no entrypoint). However, there is a special case:SELFinstruction can have explicit%defaultreference. For this reason, it is recommended to useisDefEpNameinstead. Pattern-matching onDefEpNameis still permitted for backwards compatibility and for the cases when you are sure thatEpNamedoes not come from theSELFinstruction.
Michelson string value.
This is basically a mere text with limits imposed by the language: https://tezos.gitlab.io/whitedoc/michelson.html#constants Although, this document seems to be not fully correct, and thus we applied constraints deduced empirically.
You construct an item of this type using one of the following ways:
- With QuasyQuotes when need to create a string literal.
>>>[mt|Some text|]MTextUnsafe { unMText = "Some text" }
- With
mkMTextwhen constructing from a runtime text value. - With
mkMTextUnsafeorMTextUnsafewhen absolutelly sure that given string does not violate invariants. - With
mkMTextCutwhen not sure about text contents and want to make it compliant with Michelson constraints.
Instances
mt :: QuasiQuoter #
QuasyQuoter for constructing Michelson strings.
Validity of result will be checked at compile time. Note:
- slash must be escaped
- newline character must appear as 'n'
- use quotes as is
- other special characters are not allowed.
Blake2b_160 hash of a public key.
Instances
Cryptographic signatures used by Tezos.
Constructors correspond to PublicKey constructors.
Tezos distinguishes signatures for different curves. For instance, ed25519 signatures and secp256k1 signatures are printed differently (have different prefix). However, signatures are packed without information about the curve. For this purpose there is a generic signature which only stores bytes and doesn't carry information about the curve. Apparently unpacking from bytes always produces such signature. Unpacking from string produces a signature with curve information.
Instances
Public cryptographic key used by Tezos. There are three cryptographic curves each represented by its own constructor.
Instances
Identifier of a network (babylonnet, mainnet, test network or other). Evaluated as hash of the genesis block.
The only operation supported for this type is packing. Use case: multisig contract, for instance, now includes chain ID into signed data "in order to add extra replay protection between the main chain and the test chain".
Instances
Time in the real world. Use the functions below to convert it to/from Unix time in seconds.
Instances
Mutez is a wrapper over integer data type. 1 mutez is 1 token (μTz).
Instances
Safely create Mutez.
This is recommended way to create Mutez from a numeric literal;
you can't construct all valid Mutez values using this function
but for small values it works neat.
Warnings displayed when trying to construct invalid Natural or Word
literal are hardcoded for these types in GHC implementation, so we can only
exploit these existing rules.
timestampQuote :: QuasiQuoter #
Quote a value of type Timestamp in yyyy-mm-ddThh:mm:ss[.sss]Z format.
>>>formatTimestamp [timestampQuote| 2019-02-21T16:54:12.2344523Z |]"2019-02-21T16:54:12Z"
Inspired by 'time-quote' library.
Data type corresponding to address structure in Tezos.
Instances
Address with optional entrypoint name attached to it. TODO: come up with better name?
Constructors
| EpAddress | |
Fields
| |
Instances
data ContractDoc #
Keeps documentation gathered for some piece of contract code.
Used for building documentation of a contract.
Constructors
| ContractDoc | |
Fields
| |
Instances
| Semigroup ContractDoc | Contract documentation assembly primarily relies on this instance. |
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 # | |
A part of documentation to be grouped. Essentially incapsulates DocBlock.
Instances
| Show DocGrouping | |
Defined in Michelson.Doc Methods showsPrec :: Int -> DocGrouping -> ShowS # show :: DocGrouping -> String # showList :: [DocGrouping] -> ShowS # | |
data DocSection #
Several doc items of the same type.
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 # | |
A doc item which we store, along with related information.
data SomeDocDefinitionItem where #
Hides some documentation item which is put to "definitions" section.
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 # | |
data SomeDocItem where #
Hides some documentation item.
Constructors
| SomeDocItem :: forall d. DocItem d => d -> SomeDocItem |
Instances
| Show SomeDocItem | To automatically derive |
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 -> () # | |
data DocSectionNameStyle #
How to render section name.
Constructors
| DocSectionNameBig | Suitable for block name. |
| DocSectionNameSmall | Suitable for subsection title within block. |
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 DocItemPlacementKind #
Where do we place given doc item.
Constructors
| DocItemInlined | Placed in the document content itself. |
| DocItemInDefinitions | Placed in dedicated definitions section; can later be referenced. |
newtype DocItemPos #
Position of all doc items of some type.
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 # | |
Some unique identifier of a doc item.
All doc items which should be refer-able need to have this identifier.
Instances
| Eq DocItemId | |
| Ord DocItemId | |
| Show DocItemId | |
| ToAnchor DocItemId | |
Defined in Michelson.Doc | |
class (Typeable d, DOrd d) => DocItem d where #
A piece of documentation describing one property of a thing, be it a name or description of a contract, or an error throwable by given endpoint.
Items of the same type appear close to each other in a rendered documentation and form a section.
Doc items are later injected into a contract code via a dedicated nop-like instruction. Normally doc items which belong to one section appear in resulting doc in the same order in which they appeared in the contract.
While documentation framework grows, this typeclass acquires more and more methods for fine tuning of existing rendering logic because we don't want to break backward compatibility, hope one day we will make everything concise :( E.g. all rendering and reording stuff could be merged in one method, and we could have several template implementations for it which would allow user to specify only stuff relevant to his case.
Minimal complete definition
Associated Types
type DocItemPlacement d :: DocItemPlacementKind #
Defines where given doc item should be put. There are two options: 1. Inline right here (default behaviour); 2. Put into definitions section.
Note that we require all doc items with "in definitions" placement to
have Eq and Ord instances which comply the following law:
if two documentation items describe the same entity or property, they
should be considered equal.
type DocItemPlacement d = 'DocItemInlined #
type DocItemReferenced d :: DocItemReferencedKind #
type DocItemReferenced d = 'False #
Methods
docItemPos :: Natural #
Position of this item in the resulting documentation; the smaller the value, the higher the section with this element will be placed. If the position is the same as other doc items, they will be placed base on their name, alphabetically.
Documentation structure is not necessarily flat. If some doc item consolidates a whole documentation block within it, this block will have its own placement of items independent from outer parts of the doc.
docItemSectionName :: Maybe Text #
When multiple items of the same type belong to one section, how this section will be called.
If not provided, section will contain just untitled content.
docItemSectionDescription :: Maybe Markdown #
Description of a section.
Can be used to mention some common things about all elements of this section. Markdown syntax is permitted here.
docItemSectionNameStyle :: DocSectionNameStyle #
How to render section name.
Takes effect only if section name is set.
docItemRef :: d -> DocItemRef (DocItemPlacement d) (DocItemReferenced d) #
Defines a function which constructs an unique identifier of given doc item, if it has been decided to put the doc item into definitions section.
Identifier should be unique both among doc items of the same type and items of other types. Thus, consider using "typeId-contentId" pattern.
docItemToMarkdown :: HeaderLevel -> d -> Markdown #
Render given doc item to Markdown, preferably one line, optionally with header.
Accepts the smallest allowed level of header. (Using smaller value than provided one will interfere with existing headers thus delivering mess).
docItemToToc :: HeaderLevel -> d -> Markdown #
Render table of contents entry for given doc item to Markdown.
docItemDependencies :: d -> [SomeDocDefinitionItem] #
All doc items which this doc item refers to.
They will automatically be put to definitions as soon as given doc item is detected.
docItemsOrder :: [d] -> [d] #
This function accepts doc items put under the same section in the order in which they appeared in the contract and returns their new desired order. It's also fine to use this function for filtering or merging doc items.
Default implementation * leaves inlined items as is; * for items put to definitions, lexicographically sorts them by their id.
Instances
type family DocItemPlacement d :: DocItemPlacementKind #
Defines where given doc item should be put. There are two options: 1. Inline right here (default behaviour); 2. Put into definitions section.
Note that we require all doc items with "in definitions" placement to
have Eq and Ord instances which comply the following law:
if two documentation items describe the same entity or property, they
should be considered equal.
Instances
type family DocItemReferenced d :: DocItemReferencedKind #
Instances
mdTocFromRef :: (DocItem d, DocItemReferenced d ~ 'True) => HeaderLevel -> Markdown -> d -> Markdown #
Generate DToc entry anchor from docItemRef.
docItemPosition :: DocItem d => DocItemPos #
Get doc item position at term-level.
docDefinitionRef :: (DocItem d, DocItemPlacement d ~ 'DocItemInDefinitions) => Markdown -> d -> Markdown #
Make a reference to doc item in definitions.
docItemSectionRef :: DocItem di => Maybe Markdown #
Reference to the given section.
Will return Nothing if sections of given doc item type are not
assumed to be referred outside.
subDocToMarkdown :: HeaderLevel -> SubDoc -> Markdown #
Render documentation for SubDoc.
A hand-made anchor.
Instances
| DocItem DAnchor | |
Defined in Michelson.Doc Associated Types type DocItemPlacement DAnchor :: DocItemPlacementKind # 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 | |
Comment in the doc (mostly used for licenses)
Instances
| DocItem DComment | |
Defined in Michelson.Doc Associated Types 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 | |
newtype GitRepoSettings #
Repository settings for DGitRevision.
Constructors
| GitRepoSettings | |
Fields
| |
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 | |
data DDescription #
Description of something.
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 | |
type DocGrouping = SubDoc -> SomeDocItem #
A function which groups a piece of doc under one doc item.
contractDocToMarkdown :: ContractDoc -> LText #
Render given contract documentation to markdown document.
mkDGitRevision :: ExpQ #
Make DGitRevision.
>>>:t $mkDGitRevisionGitRepoSettings -> DGitRevision
type Operation = Operation' Instr #
Instances
data ContractRef arg #
Since Contract name is used to designate contract code, lets call
analogy of TContract type as follows.
Note that type argument always designates an argument of entrypoint.
If a contract has explicit default entrypoint (and no root entrypoint),
ContractRef referring to it can never have the entire parameter as its
type argument.
Constructors
| ContractRef | |
Fields
| |
Instances
type WellTypedIsoValue a = (WellTyped (ToT a), IsoValue a) #
type SomeEntrypointCall arg = SomeEntrypointCallT (ToT arg) #
type EntrypointCall param arg = EntrypointCallT (ToT param) (ToT arg) #
class WellTypedToT a => IsoValue a where #
Isomorphism between Michelson values and plain Haskell types.
Default implementation of this typeclass converts ADTs to Michelson "pair"s and "or"s.
Minimal complete definition
Nothing
Associated Types
Type function that converts a regular Haskell type into a T type.
type ToT a = GValueType (Rep a) #
Methods
Converts a Haskell structure into Value representation.
fromVal :: Value (ToT a) -> a #
Converts a Value into Haskell type.
Instances
Type function that converts a regular Haskell type into a T type.
Instances
coerceContractRef :: ToT a ~ ToT b => ContractRef a -> ContractRef b #
Replace type argument of ContractAddr with isomorphic one.
type InstrConstructC dt = (GenericIsoValue dt, GInstrConstruct (Rep dt)) #
Constraint for instrConstruct and gInstrConstructStack.
type ConstructorFieldTypes dt = GFieldTypes (Rep dt) #
Types of all fields in a datatype.
class IsHomomorphic (a :: k) #
Require this type to be homomorphic.
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 | |
class HaveCommonTypeCtor (a :: k) (b :: k1) #
Require two types to be built from the same type constructor.
E.g. HaveCommonTypeCtor (Maybe Integer) (Maybe Natural) is defined,
while HaveCmmonTypeCtor (Maybe Integer) [Integer] is not.
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 | |
Doc element with description of a type.
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 | |
data SomeTypeWithDoc where #
Data hides some type implementing TypeHasDoc.
Constructors
| SomeTypeWithDoc :: forall td. TypeHasDoc td => Proxy td -> SomeTypeWithDoc |
class (Typeable a, SingI (TypeDocFieldDescriptions a), FieldDescriptionsValid (TypeDocFieldDescriptions a) a) => TypeHasDoc a where #
Description for a Haskell type appearing in documentation.
Minimal complete definition
Associated Types
type TypeDocFieldDescriptions a :: FieldDescriptions #
Description of constructors and fields of a.
See FieldDescriptions documentation for an example of usage.
Descriptions will be checked at compile time to make sure that only existing constructors and fields are referenced.
For that check to work instance Generic a is required whenever TypeDocFieldDescriptions
is not empty.
For implementation of the check see FieldDescriptionsValid type family.
Methods
typeDocName :: Proxy a -> Text #
Name of type as it appears in definitions section.
Each type must have its own unique name because it will be used in identifier for references.
Default definition derives name from Generics.
If it does not fit, consider defining this function manually.
(We tried using Data for this, but it produces names including
module names which is not do we want).
typeDocMdDescription :: Markdown #
Explanation of a type. Markdown formatting is allowed.
typeDocMdReference :: Proxy a -> WithinParens -> Markdown #
How reference to this type is rendered, in Markdown.
Examples:
[Integer](#type-integer),[Maybe](#type-Maybe) [()](#type-unit).
Consider using one of the following functions as default implementation; which one to use depends on number of type arguments in your type:
If none of them fits your purposes precisely, consider using
customTypeDocMdReference.
typeDocDependencies :: Proxy a -> [SomeDocDefinitionItem] #
All types which this type directly contains.
Used in automatic types discovery.
typeDocHaskellRep :: TypeDocHaskellRep a #
For complex types - their immediate Haskell representation.
For primitive types set this to Nothing.
For homomorphic types use homomorphicTypeDocHaskellRep implementation.
For polymorhpic types consider using concreteTypeDocHaskellRep as implementation.
Modifier haskellRepNoFields can be used to hide names of fields,
beneficial for newtypes.
Another modifier called haskellRepStripFieldPrefix can be used for datatypes
to leave only meaningful part of name in every field.
typeDocMichelsonRep :: TypeDocMichelsonRep a #
Final michelson representation of a type.
For homomorphic types use homomorphicTypeDocMichelsonRep implementation.
For polymorhpic types consider using concreteTypeDocMichelsonRep as implementation.
Instances
type family TypeDocFieldDescriptions a :: FieldDescriptions #
Description of constructors and fields of a.
See FieldDescriptions documentation for an example of usage.
Descriptions will be checked at compile time to make sure that only existing constructors and fields are referenced.
For that check to work instance Generic a is required whenever TypeDocFieldDescriptions
is not empty.
For implementation of the check see FieldDescriptionsValid type family.
Instances
dTypeDep :: TypeHasDoc t => SomeDocDefinitionItem #
Create a DType in form suitable for putting to typeDocDependencies.
customTypeDocMdReference :: (Text, DType) -> [DType] -> WithinParens -> Markdown #
Render a reference to a type which consists of type constructor (you have to provide name of this type constructor and documentation for the whole type) and zero or more type arguments.
homomorphicTypeDocMdReference :: (Typeable t, TypeHasDoc t, IsHomomorphic t) => Proxy t -> WithinParens -> Markdown #
Derive typeDocMdReference, for homomorphic types only.
poly1TypeDocMdReference :: forall (t :: Type -> Type) r a. (r ~ t a, Typeable t, Each '[TypeHasDoc] '[r, a], IsHomomorphic t) => Proxy r -> WithinParens -> Markdown #
Derive typeDocMdReference, for polymorphic type with one
type argument, like Maybe Integer.
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 #
Derive typeDocMdReference, for polymorphic type with two
type arguments, like Lambda Integer Natural.
genericTypeDocDependencies :: (Generic a, GTypeHasDoc (Rep a)) => Proxy a -> [SomeDocDefinitionItem] #
Implement typeDocDependencies via getting all immediate fields
of a datatype.
Note: this will not include phantom types, I'm not sure yet how this scenario should be handled (@martoon).
homomorphicTypeDocHaskellRep :: (Generic a, GTypeHasDoc (Rep a)) => TypeDocHaskellRep a #
Implement typeDocHaskellRep for a homomorphic type.
Note that it does not require your type to be of IsHomomorphic instance,
which can be useful for some polymorhpic types which, for documentation
purposes, we want to consider homomorphic.
Example: Operation is in fact polymorhpic, but we don't want this fact to
be reflected in the documentation.
concreteTypeDocHaskellRep :: (Typeable a, GenericIsoValue a, GTypeHasDoc (Rep a), HaveCommonTypeCtor b a) => TypeDocHaskellRep b #
Implement typeDocHaskellRep on example of given concrete type.
This is a best effort attempt to implement typeDocHaskellRep for polymorhpic
types, as soon as there is no simple way to preserve type variables when
automatically deriving Haskell representation of a type.
concreteTypeDocHaskellRepUnsafe :: (Typeable a, GenericIsoValue a, GTypeHasDoc (Rep a)) => TypeDocHaskellRep b #
Version of concreteTypeDocHaskellRep which does not ensure
whether the type for which representation is built is any similar to
the original type which you implement a TypeHasDoc instance for.
haskellRepNoFields :: TypeDocHaskellRep a -> TypeDocHaskellRep a #
Erase fields from Haskell datatype representation.
Use this when rendering fields names is undesired.
haskellAddNewtypeField :: Text -> TypeDocHaskellRep a -> TypeDocHaskellRep a #
Add field name for newtype.
Since newtype field is automatically erased. Use this function
to add the desired field name.
haskellRepStripFieldPrefix :: HasCallStack => TypeDocHaskellRep a -> TypeDocHaskellRep a #
Cut fields prefixes which we use according to the style guide.
E.g. cmMyField field will be transformed to myField.
homomorphicTypeDocMichelsonRep :: SingI (ToT a) => TypeDocMichelsonRep a #
Implement typeDocMichelsonRep for homomorphic type.
concreteTypeDocMichelsonRep :: forall k a (b :: k). (Typeable a, SingI (ToT a), HaveCommonTypeCtor b a) => TypeDocMichelsonRep b #
Implement typeDocMichelsonRep on example of given concrete type.
This function exists for the same reason as concreteTypeDocHaskellRep.
concreteTypeDocMichelsonRepUnsafe :: forall k a (b :: k). (Typeable a, SingI (ToT a)) => TypeDocMichelsonRep b #
Version of concreteTypeDocHaskellRepUnsafe which does not ensure
whether the type for which representation is built is any similar to
the original type which you implement a TypeHasDoc instance for.