GraphqlQuery.DocumentInfo (graphql_query v0.3.7)

View Source

Represents the structured information about a raw GraphQL document.

This struct contains all the parsed components of a GraphQL document, including queries, mutations, subscriptions, fragments, and an optional signature for document identification and caching purposes.

Summary

Functions

Adds or updates the signature field of a DocumentInfo struct.

Types

t()

@type t() :: %GraphqlQuery.DocumentInfo{
  fragments: [GraphqlQuery.FragmentInfo.t()],
  mutations: [GraphqlQuery.MutationInfo.t()],
  queries: [GraphqlQuery.QueryInfo.t()],
  signature: String.t() | nil,
  subscriptions: [GraphqlQuery.SubscriptionInfo.t()]
}

Functions

add_signature(doc_info, signature)

@spec add_signature(t(), String.t() | nil) :: t()

Adds or updates the signature field of a DocumentInfo struct.

Parameters

  • doc_info - A DocumentInfo struct
  • signature - A string signature or nil to clear the signature

Returns

  • Updated DocumentInfo struct with the new signature

Examples

iex> info = %GraphqlQuery.DocumentInfo{queries: [], mutations: [], fragments: [], subscriptions: [], signature: nil}
iex> GraphqlQuery.DocumentInfo.add_signature(info, "abc123")
%GraphqlQuery.DocumentInfo{queries: [], mutations: [], fragments: [], subscriptions: [], signature: "abc123"}