View Source argo_graphql_object_type_definition (argo v1.0.4)
Summary
Functions
Schema extensions without additional operation type definitions must not be followed by a { (such as a query shorthand) to avoid parsing ambiguity. The same limitation applies to the type definitions and extensions below.
Types
-type shape() :: #{argo_types:name() => argo_graphql_type:t(), type := object}.
-type t() :: #argo_graphql_object_type_definition{implements :: argo_index_set:t(argo_types:name()), fields :: argo_index_map:t(argo_types:name(), argo_graphql_field_definition:t())}.
Functions
-spec add_field_definition(ObjectTypeDefinition, FieldDefinition) -> ObjectTypeDefinition when ObjectTypeDefinition :: t(), FieldDefinition :: argo_graphql_field_definition:t().
-spec add_interface(ObjectTypeDefinition, InterfaceName) -> ObjectTypeDefinition when ObjectTypeDefinition :: t(), InterfaceName :: argo_types:name().
-spec format(Formatter1, Type :: t()) -> Formatter2 when Formatter1 :: argo_graphql_formatter:t(), Formatter2 :: argo_graphql_formatter:t().
-spec from_language(LanguageObjectTypeDefinition) -> ObjectTypeDefinition when LanguageObjectTypeDefinition :: argo_graphql_language_object_type_definition:t(), ObjectTypeDefinition :: t().
-spec get_implements_interfaces(ObjectTypeDefinition, ServiceDocument) -> ImplementsInterfaces when ObjectTypeDefinition :: t(), ServiceDocument :: argo_graphql_service_document:t(), ImplementsInterfaces :: [argo_types:name()].
-spec get_shape(ObjectTypeDefinition, ServiceDocument) -> ObjectShape when ObjectTypeDefinition :: t(), ServiceDocument :: argo_graphql_service_document:t(), ObjectShape :: shape().
-spec new() -> ObjectTypeDefinition when ObjectTypeDefinition :: t().