module Federation::V2::Directives

Defined in:

federation/v2/directives.cr

Constant Summary

Any = Oxide::Types::CustomScalar.new(name: "_Any")
AuthenticatedDirective = Oxide::Directive.new(name: "authenticated", locations: [Oxide::Directive::Location::FIELD_DEFINITION, Oxide::Directive::Location::OBJECT, Oxide::Directive::Location::INTERFACE, Oxide::Directive::Location::SCALAR, Oxide::Directive::Location::ENUM])

directive @authenticated on FIELD_DEFINITION | OBJECT | INTERFACE | SCALAR | ENUM

ComposeDirectiveDirective = Oxide::Directive.new(name: "composeDirective", arguments: {"name" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: Oxide::Types::StringType.new))}, locations: [Oxide::Directive::Location::SCHEMA])

directive @composeDirective(name: String!) repeatable on SCHEMA

ExternalDirective = Oxide::Directive.new(name: "external", locations: [Oxide::Directive::Location::FIELD_DEFINITION, Oxide::Directive::Location::OBJECT])

directive @external on FIELD_DEFINITION | OBJECT

FederationPolicy = Oxide::Types::CustomScalar.new(name: "federation__Policy")
FederationScope = Oxide::Types::CustomScalar.new(name: "federation__Scope")
FieldSet = Oxide::Types::CustomScalar.new(name: "FieldSet")
InaccessibleDirective = Oxide::Directive.new(name: "inaccessible", locations: [Oxide::Directive::Location::OBJECT, Oxide::Directive::Location::FIELD_DEFINITION, Oxide::Directive::Location::INTERFACE, Oxide::Directive::Location::UNION, Oxide::Directive::Location::ARGUMENT_DEFINITION, Oxide::Directive::Location::SCALAR, Oxide::Directive::Location::ENUM, Oxide::Directive::Location::ENUM_VALUE, Oxide::Directive::Location::INPUT_OBJECT, Oxide::Directive::Location::INPUT_FIELD_DEFINITION])

directive @inaccessible on FIELD_DEFINITION | OBJECT | INTERFACE | UNION | ARGUMENT_DEFINITION | SCALAR | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION

InterfaceObjectDirective = Oxide::Directive.new(name: "interfaceObject", locations: [Oxide::Directive::Location::OBJECT])

directive @interfaceObject on OBJECT

KeyDirective = Oxide::Directive.new(name: "key", arguments: {"fields" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: FieldSet)), "resolvable" => Oxide::Argument.new(type: Oxide::Types::BooleanType.new, default_value: true)}, locations: [Oxide::Directive::Location::OBJECT, Oxide::Directive::Location::INTERFACE])

directive @key(fields: FieldSet!, resolvable: Boolean = true) repeatable on OBJECT | INTERFACE

LinkDirective = Oxide::Directive.new(name: "link", arguments: {"url" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: Oxide::Types::StringType.new)), "as" => Oxide::Argument.new(type: Oxide::Types::StringType.new), "for" => Oxide::Argument.new(type: LinkPurpose), "import" => Oxide::Argument.new(type: Oxide::Types::ListType.new(of_type: LinkImport))}, locations: [Oxide::Directive::Location::SCHEMA])

directive @link(url: String!, as: String, for: link__Purpose, import: [link__Import]) repeatable on SCHEMA

LinkImport = Oxide::Types::CustomScalar.new(name: "link__Import")
LinkPurpose = Oxide::Types::EnumType.new(name: "link__Purpose", values: [Oxide::Types::EnumValue.new(name: "SECURITY"), Oxide::Types::EnumValue.new(name: "EXECUTION")])
OverrideDirective = Oxide::Directive.new(name: "override", arguments: {"from" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: Oxide::Types::StringType.new))}, locations: [Oxide::Directive::Location::FIELD_DEFINITION])

directive @override(from: String!) on FIELD_DEFINITION

PolicyDirective = Oxide::Directive.new(name: "policy", arguments: {"policies" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: Oxide::Types::ListType.new(of_type: Oxide::Types::NonNullType.new(of_type: Oxide::Types::ListType.new(of_type: Oxide::Types::NonNullType.new(of_type: FederationPolicy))))))}, locations: [Oxide::Directive::Location::FIELD_DEFINITION, Oxide::Directive::Location::OBJECT, Oxide::Directive::Location::INTERFACE, Oxide::Directive::Location::SCALAR, Oxide::Directive::Location::ENUM])

directive @policy(policies: [[federation__Policy!]!]!) on FIELD_DEFINITION | OBJECT | INTERFACE | SCALAR | ENUM

ProvidesDirective = Oxide::Directive.new(name: "provides", arguments: {"fields" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: FieldSet))}, locations: [Oxide::Directive::Location::FIELD_DEFINITION])

directive @provides(fields: FieldSet!) on FIELD_DEFINITION

RequiresDirective = Oxide::Directive.new(name: "requires", arguments: {"fields" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: FieldSet))}, locations: [Oxide::Directive::Location::FIELD_DEFINITION])

directive @requires(fields: FieldSet!) on FIELD_DEFINIT

RequiresScopesDirective = Oxide::Directive.new(name: "requiresScopes", arguments: {"scopes" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: Oxide::Types::ListType.new(of_type: Oxide::Types::NonNullType.new(of_type: Oxide::Types::ListType.new(of_type: Oxide::Types::NonNullType.new(of_type: FederationScope))))))}, locations: [Oxide::Directive::Location::FIELD_DEFINITION, Oxide::Directive::Location::OBJECT, Oxide::Directive::Location::INTERFACE, Oxide::Directive::Location::SCALAR, Oxide::Directive::Location::ENUM])

directive @requiresScopes(scopes: [[federation__Scope!]!]!) on FIELD_DEFINITION | OBJECT | INTERFACE | SCALAR | ENUM

ShareableDirective = Oxide::Directive.new(name: "shareable", locations: [Oxide::Directive::Location::OBJECT, Oxide::Directive::Location::FIELD_DEFINITION])

directive @shareable repeatable on OBJECT | FIELD_DEFINITION

TagDirective = Oxide::Directive.new(name: "tag", arguments: {"name" => Oxide::Argument.new(type: Oxide::Types::NonNullType.new(of_type: Oxide::Types::StringType.new))}, locations: [Oxide::Directive::Location::OBJECT, Oxide::Directive::Location::FIELD_DEFINITION, Oxide::Directive::Location::INTERFACE, Oxide::Directive::Location::UNION, Oxide::Directive::Location::ARGUMENT_DEFINITION, Oxide::Directive::Location::SCALAR, Oxide::Directive::Location::ENUM, Oxide::Directive::Location::ENUM_VALUE, Oxide::Directive::Location::INPUT_OBJECT, Oxide::Directive::Location::INPUT_FIELD_DEFINITION])

directive @tag(name: String!) repeatable on FIELD_DEFINITION | INTERFACE | OBJECT | UNION | ARGUMENT_DEFINITION | SCALAR | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION

Class Method Summary

Class Method Detail

def self.all #

[View source]