Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- data FederatorAccess m a where
- RunFederated :: KnownComponent c => Remote x -> FederatorClient c a -> FederatorAccess m a
- RunFederatedEither :: KnownComponent c => Remote x -> FederatorClient c a -> FederatorAccess m (Either FederationError a)
- RunFederatedConcurrently :: (KnownComponent c, Foldable f, Functor f) => f (Remote x) -> (Remote [x] -> FederatorClient c a) -> FederatorAccess m [Remote a]
- RunFederatedConcurrentlyEither :: forall (c :: Component) f a m x. (KnownComponent c, Foldable f, Functor f) => f (Remote x) -> (Remote [x] -> FederatorClient c a) -> FederatorAccess m [Either (Remote [x], FederationError) (Remote a)]
- RunFederatedConcurrentlyBucketsEither :: forall (c :: Component) f a m x. (KnownComponent c, Foldable f) => f (Remote x) -> (Remote x -> FederatorClient c a) -> FederatorAccess m [Either (Remote x, FederationError) (Remote a)]
- IsFederationConfigured :: FederatorAccess m Bool
- runFederated :: forall r c x a. (Member FederatorAccess r, KnownComponent c) => Remote x -> FederatorClient c a -> Sem r a
- runFederatedEither :: forall r c x a. (Member FederatorAccess r, KnownComponent c) => Remote x -> FederatorClient c a -> Sem r (Either FederationError a)
- runFederatedConcurrently :: forall r c f x a. (Member FederatorAccess r, KnownComponent c, Foldable f, Functor f) => f (Remote x) -> (Remote [x] -> FederatorClient c a) -> Sem r [Remote a]
- runFederatedConcurrentlyEither :: forall r c f x a. (Member FederatorAccess r, KnownComponent c, Foldable f, Functor f) => f (Remote x) -> (Remote [x] -> FederatorClient c a) -> Sem r [Either (Remote [x], FederationError) (Remote a)]
- runFederatedConcurrentlyBucketsEither :: forall r c f x a. (Member FederatorAccess r, KnownComponent c, Foldable f) => f (Remote x) -> (Remote x -> FederatorClient c a) -> Sem r [Either (Remote x, FederationError) (Remote a)]
- isFederationConfigured :: forall r. Member FederatorAccess r => Sem r Bool
Federator access effect
data FederatorAccess m a where Source #
runFederated :: forall r c x a. (Member FederatorAccess r, KnownComponent c) => Remote x -> FederatorClient c a -> Sem r a Source #
runFederatedEither :: forall r c x a. (Member FederatorAccess r, KnownComponent c) => Remote x -> FederatorClient c a -> Sem r (Either FederationError a) Source #
runFederatedConcurrently :: forall r c f x a. (Member FederatorAccess r, KnownComponent c, Foldable f, Functor f) => f (Remote x) -> (Remote [x] -> FederatorClient c a) -> Sem r [Remote a] Source #
runFederatedConcurrentlyEither :: forall r c f x a. (Member FederatorAccess r, KnownComponent c, Foldable f, Functor f) => f (Remote x) -> (Remote [x] -> FederatorClient c a) -> Sem r [Either (Remote [x], FederationError) (Remote a)] Source #
runFederatedConcurrentlyBucketsEither :: forall r c f x a. (Member FederatorAccess r, KnownComponent c, Foldable f) => f (Remote x) -> (Remote x -> FederatorClient c a) -> Sem r [Either (Remote x, FederationError) (Remote a)] Source #
An action similar to RunFederatedConcurrentlyEither
, but whose input is
already in buckets. The buckets are paired with arbitrary data that affect
the payload of the request for each remote backend.
isFederationConfigured :: forall r. Member FederatorAccess r => Sem r Bool Source #