Package

sangria.validation.rules.experimental

overlappingfields

Permalink

package overlappingfields

Visibility
  1. Public
  2. All

Type Members

  1. class CachedCheck extends AnyRef

    Permalink

    Implements the algorithm for validating "Field Selection Merging" as described in: https://tech.xing.com/graphql-overlapping-fields-can-be-merged-fast-ea6e92e0a01

    Implements the algorithm for validating "Field Selection Merging" as described in: https://tech.xing.com/graphql-overlapping-fields-can-be-merged-fast-ea6e92e0a01

    Should have the same effect as the algorithm in the GraphQL Specification: https://graphql.github.io/graphql-spec/draft/#sec-Field-Selection-Merging

  2. final class FieldNameAndArguments extends AnyRef

    Permalink

    A hashable representation of field name and arguments, used to check uniqueness of them in a set of fields

    A hashable representation of field name and arguments, used to check uniqueness of them in a set of fields

    Two fields also have the same name and arguments when the order of arguments differs.

  3. final class OutputName extends AnyVal

    Permalink
  4. class SelectionBuilder extends AnyRef

    Permalink

    For the validation we need another representation of the query that already contains the effective selection sets for each field and certain properties of the fields.

    For the validation we need another representation of the query that already contains the effective selection sets for each field and certain properties of the fields. As we don't want to adapt the sangria representation, we build our own here during traversal of the query.

  5. case class SelectionConflictViolation(outputName: OutputName, reason: String, sourceMapper: Option[SourceMapper], locations: List[AstLocation]) extends AstNodeViolation with Product with Serializable

    Permalink
  6. class SelectionConflictViolationsBuilder extends AnyRef

    Permalink
  7. class SelectionContainer extends AnyRef

    Permalink
  8. class SelectionField extends AnyRef

    Permalink
  9. class SortedArraySet[T] extends Iterable[T]

    Permalink

    A set representation that is well suited to hash and equality comparisons and fast iteration over members

  10. sealed trait TypeAbstractness extends AnyRef

    Permalink
  11. sealed trait TypeShape extends AnyRef

    Permalink

    A representation of the output shape of a field

    A representation of the output shape of a field

    Used to check uniqueness of the output shape in an overlapping set of fields

Ungrouped