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

Hasura.RQL.IR.Action

Synopsis

Documentation

data ActionFieldG (r :: Type) Source #

Internal representation for a selection of fields on the result of an action. Type parameter r will be either r ~ (RemoteRelationshipField UnpreparedValue) when the AST is emitted by the parser. r ~ Void when an execution tree is constructed so that a backend is absolved of dealing with remote relationships.

Constructors

ACFScalar Name

Scalar value. G.Name is the original field name from the object type.

ACFRemote (ActionRemoteRelationshipSelect r)

Remote relationship

ACFExpression Text

Constant text value (used for __typename fields)

ACFNestedObject Name (ActionFieldsG r)

Nested object. G.Name is the original field name from the object type.

Instances

Instances details
Foldable ActionFieldG Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Methods

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

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

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

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

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

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

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

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

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

toList :: ActionFieldG a -> [a] #

null :: ActionFieldG a -> Bool #

length :: ActionFieldG a -> Int #

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

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

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

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

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

Traversable ActionFieldG Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Methods

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

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

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

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

Functor ActionFieldG Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Methods

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

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

Show r => Show (ActionFieldG r) Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Eq r => Eq (ActionFieldG r) Source # 
Instance details

Defined in Hasura.RQL.IR.Action

data ActionRemoteRelationshipSelect r Source #

Constructors

ActionRemoteRelationshipSelect 

Fields

  • _arrsLHSJoinFields :: HashMap FieldName Name

    The fields on the table that are required for the join condition of the remote relationship

  • _arrsRelationship :: r

    The field that captures the relationship r ~ (RemoteRelationshipField UnpreparedValue) when the AST is emitted by the parser. r ~ Void when an execution tree is constructed so that a backend is absolved of dealing with remote relationships.

Instances

Instances details
Foldable ActionRemoteRelationshipSelect Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Traversable ActionRemoteRelationshipSelect Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Functor ActionRemoteRelationshipSelect Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Show r => Show (ActionRemoteRelationshipSelect r) Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Eq r => Eq (ActionRemoteRelationshipSelect r) Source # 
Instance details

Defined in Hasura.RQL.IR.Action

data AnnActionExecution (r :: Type) Source #

Instances

Instances details
Foldable AnnActionExecution Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Methods

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

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

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

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

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

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

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

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

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

toList :: AnnActionExecution a -> [a] #

null :: AnnActionExecution a -> Bool #

length :: AnnActionExecution a -> Int #

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

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

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

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

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

Traversable AnnActionExecution Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Functor AnnActionExecution Source # 
Instance details

Defined in Hasura.RQL.IR.Action

data AsyncActionQueryFieldG (r :: Type) Source #

Instances

Instances details
Foldable AsyncActionQueryFieldG Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Methods

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

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

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

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

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

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

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

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

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

toList :: AsyncActionQueryFieldG a -> [a] #

null :: AsyncActionQueryFieldG a -> Bool #

length :: AsyncActionQueryFieldG a -> Int #

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

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

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

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

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

Traversable AsyncActionQueryFieldG Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Functor AsyncActionQueryFieldG Source # 
Instance details

Defined in Hasura.RQL.IR.Action

data AnnActionAsyncQuery (b :: BackendType) (r :: Type) Source #

Instances

Instances details
Foldable (AnnActionAsyncQuery b) Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Methods

fold :: Monoid m => AnnActionAsyncQuery b m -> m #

foldMap :: Monoid m => (a -> m) -> AnnActionAsyncQuery b a -> m #

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

foldr :: (a -> b0 -> b0) -> b0 -> AnnActionAsyncQuery b a -> b0 #

foldr' :: (a -> b0 -> b0) -> b0 -> AnnActionAsyncQuery b a -> b0 #

foldl :: (b0 -> a -> b0) -> b0 -> AnnActionAsyncQuery b a -> b0 #

foldl' :: (b0 -> a -> b0) -> b0 -> AnnActionAsyncQuery b a -> b0 #

foldr1 :: (a -> a -> a) -> AnnActionAsyncQuery b a -> a #

foldl1 :: (a -> a -> a) -> AnnActionAsyncQuery b a -> a #

toList :: AnnActionAsyncQuery b a -> [a] #

null :: AnnActionAsyncQuery b a -> Bool #

length :: AnnActionAsyncQuery b a -> Int #

elem :: Eq a => a -> AnnActionAsyncQuery b a -> Bool #

maximum :: Ord a => AnnActionAsyncQuery b a -> a #

minimum :: Ord a => AnnActionAsyncQuery b a -> a #

sum :: Num a => AnnActionAsyncQuery b a -> a #

product :: Num a => AnnActionAsyncQuery b a -> a #

Traversable (AnnActionAsyncQuery b) Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Methods

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

sequenceA :: Applicative f => AnnActionAsyncQuery b (f a) -> f (AnnActionAsyncQuery b a) #

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

sequence :: Monad m => AnnActionAsyncQuery b (m a) -> m (AnnActionAsyncQuery b a) #

Functor (AnnActionAsyncQuery b) Source # 
Instance details

Defined in Hasura.RQL.IR.Action

Methods

fmap :: (a -> b0) -> AnnActionAsyncQuery b a -> AnnActionAsyncQuery b b0 #

(<$) :: a -> AnnActionAsyncQuery b b0 -> AnnActionAsyncQuery b a #

data ActionSourceInfo b Source #

Constructors

ASINoSource

No relationships defined on the action output object

ASISource SourceName (SourceConfig b)

All relationships refer to tables in one source

aaaqFields :: forall b r r. Lens (AnnActionAsyncQuery b r) (AnnActionAsyncQuery b r) (AsyncActionQueryFieldsG r) (AsyncActionQueryFieldsG r) Source #