module ApolloFederation::Field

Public Class Methods

new(*args, external: false, requires: nil, provides: nil, **kwargs, &block) click to toggle source
Calls superclass method
# File lib/apollo-federation/field.rb, line 9
def initialize(*args, external: false, requires: nil, provides: nil, **kwargs, &block)
  if external
    add_directive(name: 'external')
  end
  if requires
    add_directive(
      name: 'requires',
      arguments: [
        name: 'fields',
        values: requires[:fields],
      ],
    )
  end
  if provides
    add_directive(
      name: 'provides',
      arguments: [
        name: 'fields',
        values: provides[:fields],
      ],
    )
  end

  # Pass on the default args:
  super(*args, **kwargs, &block)
end