Skip to content

Commit 5933b19

Browse files
authored
Add support for directives on directive definitions (#6803)
* Add support for directives on directive definitions * Add support for deprecated directives in introspection * Update API dump * Mark DIRECTIVE_DEFINITION and GQLDirectiveExtension as @ApolloExperimental * Add ParserOptions.allowDirectivesOnDirectives * Update introspectionResolvers
1 parent da739b1 commit 5933b19

File tree

29 files changed

+403
-212
lines changed

29 files changed

+403
-212
lines changed

libraries/apollo-ast/api/apollo-ast.api

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -231,16 +231,21 @@ public final class com/apollographql/apollo/ast/GQLDirectiveCoordinate : com/apo
231231
public fun writeInternal (Lcom/apollographql/apollo/ast/SDLWriter;)V
232232
}
233233

234-
public final class com/apollographql/apollo/ast/GQLDirectiveDefinition : com/apollographql/apollo/ast/GQLDefinition, com/apollographql/apollo/ast/GQLDescribed, com/apollographql/apollo/ast/GQLNamed {
234+
public final class com/apollographql/apollo/ast/GQLDirectiveDefinition : com/apollographql/apollo/ast/GQLDefinition, com/apollographql/apollo/ast/GQLDescribed, com/apollographql/apollo/ast/GQLHasDirectives, com/apollographql/apollo/ast/GQLNamed {
235235
public static final field Companion Lcom/apollographql/apollo/ast/GQLDirectiveDefinition$Companion;
236236
public fun <init> (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;)V
237237
public synthetic fun <init> (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
238-
public final fun copy (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;)Lcom/apollographql/apollo/ast/GQLDirectiveDefinition;
238+
public fun <init> (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;Ljava/util/List;)V
239+
public synthetic fun <init> (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
240+
public final synthetic fun copy (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;)Lcom/apollographql/apollo/ast/GQLDirectiveDefinition;
241+
public final fun copy (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;Ljava/util/List;)Lcom/apollographql/apollo/ast/GQLDirectiveDefinition;
239242
public static synthetic fun copy$default (Lcom/apollographql/apollo/ast/GQLDirectiveDefinition;Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;ILjava/lang/Object;)Lcom/apollographql/apollo/ast/GQLDirectiveDefinition;
243+
public static synthetic fun copy$default (Lcom/apollographql/apollo/ast/GQLDirectiveDefinition;Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ZLjava/util/List;Ljava/util/List;ILjava/lang/Object;)Lcom/apollographql/apollo/ast/GQLDirectiveDefinition;
240244
public fun copyWithNewChildrenInternal (Lcom/apollographql/apollo/ast/NodeContainer;)Lcom/apollographql/apollo/ast/GQLNode;
241245
public final fun getArguments ()Ljava/util/List;
242246
public fun getChildren ()Ljava/util/List;
243247
public fun getDescription ()Ljava/lang/String;
248+
public fun getDirectives ()Ljava/util/List;
244249
public final fun getLocations ()Ljava/util/List;
245250
public fun getName ()Ljava/lang/String;
246251
public final fun getRepeatable ()Z
@@ -253,8 +258,22 @@ public final class com/apollographql/apollo/ast/GQLDirectiveDefinition$Companion
253258
public final fun getBuiltInDirectives ()Ljava/util/Set;
254259
}
255260

261+
public final class com/apollographql/apollo/ast/GQLDirectiveExtension : com/apollographql/apollo/ast/GQLDefinition, com/apollographql/apollo/ast/GQLHasDirectives, com/apollographql/apollo/ast/GQLNamed, com/apollographql/apollo/ast/GQLTypeSystemExtension {
262+
public fun <init> (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/util/List;)V
263+
public synthetic fun <init> (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
264+
public final fun copy (Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/util/List;)Lcom/apollographql/apollo/ast/GQLDirectiveExtension;
265+
public static synthetic fun copy$default (Lcom/apollographql/apollo/ast/GQLDirectiveExtension;Lcom/apollographql/apollo/ast/SourceLocation;Ljava/lang/String;Ljava/util/List;ILjava/lang/Object;)Lcom/apollographql/apollo/ast/GQLDirectiveExtension;
266+
public fun copyWithNewChildrenInternal (Lcom/apollographql/apollo/ast/NodeContainer;)Lcom/apollographql/apollo/ast/GQLNode;
267+
public fun getChildren ()Ljava/util/List;
268+
public fun getDirectives ()Ljava/util/List;
269+
public fun getName ()Ljava/lang/String;
270+
public fun getSourceLocation ()Lcom/apollographql/apollo/ast/SourceLocation;
271+
public fun writeInternal (Lcom/apollographql/apollo/ast/SDLWriter;)V
272+
}
273+
256274
public final class com/apollographql/apollo/ast/GQLDirectiveLocation : java/lang/Enum {
257275
public static final field ARGUMENT_DEFINITION Lcom/apollographql/apollo/ast/GQLDirectiveLocation;
276+
public static final field DIRECTIVE_DEFINITION Lcom/apollographql/apollo/ast/GQLDirectiveLocation;
258277
public static final field ENUM Lcom/apollographql/apollo/ast/GQLDirectiveLocation;
259278
public static final field ENUM_VALUE Lcom/apollographql/apollo/ast/GQLDirectiveLocation;
260279
public static final field FIELD Lcom/apollographql/apollo/ast/GQLDirectiveLocation;
@@ -1074,17 +1093,21 @@ public final class com/apollographql/apollo/ast/OtherValidationIssue : com/apoll
10741093

10751094
public final class com/apollographql/apollo/ast/ParserOptions {
10761095
public static final field Companion Lcom/apollographql/apollo/ast/ParserOptions$Companion;
1077-
public synthetic fun <init> (ZZLkotlin/jvm/internal/DefaultConstructorMarker;)V
1096+
public synthetic fun <init> (ZZZLkotlin/jvm/internal/DefaultConstructorMarker;)V
1097+
public final fun getAllowDirectivesOnDirectives ()Z
10781098
public final fun getAllowEmptyDocuments ()Z
10791099
public final fun getWithSourceLocation ()Z
10801100
}
10811101

10821102
public final class com/apollographql/apollo/ast/ParserOptions$Builder {
10831103
public fun <init> ()V
1104+
public final fun allowDirectivesOnDirectives (Z)Lcom/apollographql/apollo/ast/ParserOptions$Builder;
10841105
public final fun allowEmptyDocuments (Z)Lcom/apollographql/apollo/ast/ParserOptions$Builder;
10851106
public final fun build ()Lcom/apollographql/apollo/ast/ParserOptions;
1107+
public final fun getAllowDirectivesOnDirectives ()Z
10861108
public final fun getAllowEmptyDocuments ()Z
10871109
public final fun getWithSourceLocation ()Z
1110+
public final fun setAllowDirectivesOnDirectives (Z)V
10881111
public final fun setAllowEmptyDocuments (Z)V
10891112
public final fun setWithSourceLocation (Z)V
10901113
public final fun withSourceLocation (Z)Lcom/apollographql/apollo/ast/ParserOptions$Builder;

0 commit comments

Comments
 (0)