graphql-engine-1.0.0: GraphQL API over Postgres
Safe HaskellSafe-Inferred
LanguageHaskell2010

Hasura.Function.Cache

Description

types and helpers for user-defined-functions after they have been resolved in the schema cache

Synopsis

Documentation

data FunctionVolatility Source #

Instances

Instances details
FromJSON FunctionVolatility Source # 
Instance details

Defined in Hasura.Function.Cache

ToJSON FunctionVolatility Source # 
Instance details

Defined in Hasura.Function.Cache

Generic FunctionVolatility Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep FunctionVolatility :: Type -> Type #

Show FunctionVolatility Source # 
Instance details

Defined in Hasura.Function.Cache

NFData FunctionVolatility Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

rnf :: FunctionVolatility -> () #

Eq FunctionVolatility Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionVolatility Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionVolatility = D1 ('MetaData "FunctionVolatility" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FTVOLATILE" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "FTIMMUTABLE" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FTSTABLE" 'PrefixI 'False) (U1 :: Type -> Type)))

newtype FunctionArgName Source #

Constructors

FunctionArgName 

Instances

Instances details
FromJSON FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

FromJSONKey FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

ToJSON FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

ToJSONKey FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

HasCodec FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Data FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunctionArgName -> c FunctionArgName #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FunctionArgName #

toConstr :: FunctionArgName -> Constr #

dataTypeOf :: FunctionArgName -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FunctionArgName) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FunctionArgName) #

gmapT :: (forall b. Data b => b -> b) -> FunctionArgName -> FunctionArgName #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunctionArgName -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunctionArgName -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunctionArgName -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunctionArgName -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunctionArgName -> m FunctionArgName #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionArgName -> m FunctionArgName #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionArgName -> m FunctionArgName #

IsString FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Generic FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep FunctionArgName :: Type -> Type #

Show FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

NFData FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

rnf :: FunctionArgName -> () #

Eq FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Ord FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Hashable FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

ToTxt FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Lift FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

lift :: Quote m => FunctionArgName -> m Exp #

liftTyped :: forall (m :: Type -> Type). Quote m => FunctionArgName -> Code m FunctionArgName #

type Rep FunctionArgName Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionArgName = D1 ('MetaData "FunctionArgName" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'True) (C1 ('MetaCons "FunctionArgName" 'PrefixI 'True) (S1 ('MetaSel ('Just "getFuncArgNameTxt") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

data InputArgument a Source #

Instances

Instances details
Functor InputArgument Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

fmap :: (a -> b) -> InputArgument a -> InputArgument b #

(<$) :: a -> InputArgument b -> InputArgument a #

ToJSON a => ToJSON (InputArgument a) Source # 
Instance details

Defined in Hasura.Function.Cache

Generic (InputArgument a) Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep (InputArgument a) :: Type -> Type #

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

Defined in Hasura.Function.Cache

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

Defined in Hasura.Function.Cache

type Rep (InputArgument a) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (InputArgument a) = D1 ('MetaData "InputArgument" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "IAUserProvided" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 a)) :+: C1 ('MetaCons "IASessionVariables" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FunctionArgName)))

data FunctionExposedAs Source #

Indicates whether the user requested the corresponding function to be tracked as a mutation or a query/subscription, in track_function.

Constructors

FEAQuery 
FEAMutation 

Instances

Instances details
FromJSON FunctionExposedAs Source # 
Instance details

Defined in Hasura.Function.Cache

ToJSON FunctionExposedAs Source # 
Instance details

Defined in Hasura.Function.Cache

HasCodec FunctionExposedAs Source # 
Instance details

Defined in Hasura.Function.Cache

Generic FunctionExposedAs Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep FunctionExposedAs :: Type -> Type #

Show FunctionExposedAs Source # 
Instance details

Defined in Hasura.Function.Cache

NFData FunctionExposedAs Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

rnf :: FunctionExposedAs -> () #

Eq FunctionExposedAs Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionExposedAs Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionExposedAs = D1 ('MetaData "FunctionExposedAs" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FEAQuery" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FEAMutation" 'PrefixI 'False) (U1 :: Type -> Type))

newtype FunctionPermissionInfo Source #

Constructors

FunctionPermissionInfo 

Fields

Instances

Instances details
FromJSON FunctionPermissionInfo Source # 
Instance details

Defined in Hasura.Function.Cache

ToJSON FunctionPermissionInfo Source # 
Instance details

Defined in Hasura.Function.Cache

HasCodec FunctionPermissionInfo Source # 
Instance details

Defined in Hasura.Function.Cache

Generic FunctionPermissionInfo Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep FunctionPermissionInfo :: Type -> Type #

Show FunctionPermissionInfo Source # 
Instance details

Defined in Hasura.Function.Cache

Eq FunctionPermissionInfo Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionPermissionInfo Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionPermissionInfo = D1 ('MetaData "FunctionPermissionInfo" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'True) (C1 ('MetaCons "FunctionPermissionInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "_fpmRole") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RoleName)))

data FunctionCustomRootFields Source #

Custom root fields for functions. When set, will be the names exposed to the user in the schema.

See rfcs/function-root-field-customisation.md for more information.

Instances

Instances details
FromJSON FunctionCustomRootFields Source # 
Instance details

Defined in Hasura.Function.Cache

ToJSON FunctionCustomRootFields Source # 
Instance details

Defined in Hasura.Function.Cache

HasCodec FunctionCustomRootFields Source # 
Instance details

Defined in Hasura.Function.Cache

Generic FunctionCustomRootFields Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep FunctionCustomRootFields :: Type -> Type #

Show FunctionCustomRootFields Source # 
Instance details

Defined in Hasura.Function.Cache

NFData FunctionCustomRootFields Source # 
Instance details

Defined in Hasura.Function.Cache

Eq FunctionCustomRootFields Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionCustomRootFields Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep FunctionCustomRootFields = D1 ('MetaData "FunctionCustomRootFields" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FunctionCustomRootFields" 'PrefixI 'True) (S1 ('MetaSel ('Just "_fcrfFunction") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Name)) :*: S1 ('MetaSel ('Just "_fcrfFunctionAggregate") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Name))))

emptyFunctionCustomRootFields :: FunctionCustomRootFields Source #

A function custom root fields without custom names set. This is the default.

data FunctionInfo (b :: BackendType) Source #

Tracked SQL function metadata. See buildFunctionInfo.

Constructors

FunctionInfo 

Fields

Instances

Instances details
Backend b => ToJSON (FunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Generic (FunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep (FunctionInfo b) :: Type -> Type #

Methods

from :: FunctionInfo b -> Rep (FunctionInfo b) x #

to :: Rep (FunctionInfo b) x -> FunctionInfo b #

Backend b => Show (FunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Backend b => Eq (FunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (FunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (FunctionInfo b) = D1 ('MetaData "FunctionInfo" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FunctionInfo" 'PrefixI 'True) (((S1 ('MetaSel ('Just "_fiSQLName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (FunctionName b)) :*: (S1 ('MetaSel ('Just "_fiGQLName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Just "_fiGQLArgsName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Name))) :*: (S1 ('MetaSel ('Just "_fiGQLAggregateName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Name) :*: (S1 ('MetaSel ('Just "_fiSystemDefined") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SystemDefined) :*: S1 ('MetaSel ('Just "_fiVolatility") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FunctionVolatility)))) :*: ((S1 ('MetaSel ('Just "_fiExposedAs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FunctionExposedAs) :*: (S1 ('MetaSel ('Just "_fiInputArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Seq (FunctionInputArgument b))) :*: S1 ('MetaSel ('Just "_fiReturnType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (TableName b)))) :*: ((S1 ('MetaSel ('Just "_fiDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_fiPermissions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FunctionPermissionsMap)) :*: (S1 ('MetaSel ('Just "_fiJsonAggSelect") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 JsonAggSelect) :*: S1 ('MetaSel ('Just "_fiComment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))))))

data TrackableFunctionInfo b Source #

Instances

Instances details
Backend b => ToJSON (TrackableFunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Generic (TrackableFunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep (TrackableFunctionInfo b) :: Type -> Type #

Backend b => Show (TrackableFunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Backend b => Eq (TrackableFunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (TrackableFunctionInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (TrackableFunctionInfo b) = D1 ('MetaData "TrackableFunctionInfo" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "TrackableFunctionInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "tfiFunctionName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (FunctionName b)) :*: S1 ('MetaSel ('Just "tfiFunctionVolitility") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FunctionVolatility)))

newtype TrackableTableInfo b Source #

Constructors

TrackableTableInfo 

Fields

Instances

Instances details
Backend b => ToJSON (TrackableTableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Generic (TrackableTableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep (TrackableTableInfo b) :: Type -> Type #

Backend b => Show (TrackableTableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Backend b => Eq (TrackableTableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (TrackableTableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (TrackableTableInfo b) = D1 ('MetaData "TrackableTableInfo" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'True) (C1 ('MetaCons "TrackableTableInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "tfTableiName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (TableName b))))

data TrackableInfo b Source #

Instances

Instances details
Backend b => ToJSON (TrackableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Generic (TrackableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep (TrackableInfo b) :: Type -> Type #

Backend b => Show (TrackableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

Backend b => Eq (TrackableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (TrackableInfo b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (TrackableInfo b) = D1 ('MetaData "TrackableInfo" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "TrackableInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "trackableFunctions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [TrackableFunctionInfo b]) :*: S1 ('MetaSel ('Just "trackableTables") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [TrackableTableInfo b])))

data FunctionConfig b Source #

Tracked function configuration, and payload of the pg_track_function and pg_set_function_customization API calls.

Constructors

FunctionConfig 

Fields

Instances

Instances details
Backend b => FromJSON (FunctionConfig b) Source # 
Instance details

Defined in Hasura.Function.Cache

Backend b => ToJSON (FunctionConfig b) Source # 
Instance details

Defined in Hasura.Function.Cache

Backend b => HasCodec (FunctionConfig b) Source # 
Instance details

Defined in Hasura.Function.Cache

Generic (FunctionConfig b) Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep (FunctionConfig b) :: Type -> Type #

Backend b => Show (FunctionConfig b) Source # 
Instance details

Defined in Hasura.Function.Cache

Backend b => NFData (FunctionConfig b) Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

rnf :: FunctionConfig b -> () #

Backend b => Eq (FunctionConfig b) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (FunctionConfig b) Source # 
Instance details

Defined in Hasura.Function.Cache

emptyFunctionConfig :: FunctionConfig b Source #

The default function config; v1 of the API implies this.

data FunctionArgsExpG a Source #

Constructors

FunctionArgsExp 

Fields

Instances

Instances details
Foldable FunctionArgsExpG Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

fold :: Monoid m => FunctionArgsExpG m -> m #

foldMap :: Monoid m => (a -> m) -> FunctionArgsExpG a -> m #

foldMap' :: Monoid m => (a -> m) -> FunctionArgsExpG a -> m #

foldr :: (a -> b -> b) -> b -> FunctionArgsExpG a -> b #

foldr' :: (a -> b -> b) -> b -> FunctionArgsExpG a -> b #

foldl :: (b -> a -> b) -> b -> FunctionArgsExpG a -> b #

foldl' :: (b -> a -> b) -> b -> FunctionArgsExpG a -> b #

foldr1 :: (a -> a -> a) -> FunctionArgsExpG a -> a #

foldl1 :: (a -> a -> a) -> FunctionArgsExpG a -> a #

toList :: FunctionArgsExpG a -> [a] #

null :: FunctionArgsExpG a -> Bool #

length :: FunctionArgsExpG a -> Int #

elem :: Eq a => a -> FunctionArgsExpG a -> Bool #

maximum :: Ord a => FunctionArgsExpG a -> a #

minimum :: Ord a => FunctionArgsExpG a -> a #

sum :: Num a => FunctionArgsExpG a -> a #

product :: Num a => FunctionArgsExpG a -> a #

Traversable FunctionArgsExpG Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

traverse :: Applicative f => (a -> f b) -> FunctionArgsExpG a -> f (FunctionArgsExpG b) #

sequenceA :: Applicative f => FunctionArgsExpG (f a) -> f (FunctionArgsExpG a) #

mapM :: Monad m => (a -> m b) -> FunctionArgsExpG a -> m (FunctionArgsExpG b) #

sequence :: Monad m => FunctionArgsExpG (m a) -> m (FunctionArgsExpG a) #

Functor FunctionArgsExpG Source # 
Instance details

Defined in Hasura.Function.Cache

Methods

fmap :: (a -> b) -> FunctionArgsExpG a -> FunctionArgsExpG b #

(<$) :: a -> FunctionArgsExpG b -> FunctionArgsExpG a #

Generic (FunctionArgsExpG a) Source # 
Instance details

Defined in Hasura.Function.Cache

Associated Types

type Rep (FunctionArgsExpG a) :: Type -> Type #

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

Defined in Hasura.Function.Cache

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

Defined in Hasura.Function.Cache

Methods

rnf :: FunctionArgsExpG a -> () #

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

Defined in Hasura.Function.Cache

Hashable a => Hashable (FunctionArgsExpG a) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (FunctionArgsExpG a) Source # 
Instance details

Defined in Hasura.Function.Cache

type Rep (FunctionArgsExpG a) = D1 ('MetaData "FunctionArgsExpG" "Hasura.Function.Cache" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FunctionArgsExp" 'PrefixI 'True) (S1 ('MetaSel ('Just "_faePositional") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [a]) :*: S1 ('MetaSel ('Just "_faeNamed") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (HashMap Text a))))