Skip to content

Commit 75fb18f

Browse files
committed
Remove kinds as they are no longer needed
They would be necessary in a duck-typed language such as TypeScript but we can check at runtime with casts in Swift
1 parent 876c29b commit 75fb18f

File tree

3 files changed

+1
-75
lines changed

3 files changed

+1
-75
lines changed

Sources/GraphQL/Execution/Execute.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ func buildExecutionContext(
373373
fragments[definition.name.value] = definition
374374
default:
375375
throw GraphQLError(
376-
message: "GraphQL cannot execute a request containing a \(definition.underlyingNode.kind).",
376+
message: "GraphQL cannot execute a request containing a \(type(of: definition)).",
377377
nodes: [definition]
378378
)
379379
}

Sources/GraphQL/Language/AST.swift

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,6 @@ extension TypeExtensionDefinition : Node {}
201201
extension DirectiveDefinition : Node {}
202202

203203
public struct Name {
204-
public let kind: Kind = .name
205204
public let loc: Location?
206205
public let value: String
207206

@@ -227,7 +226,6 @@ extension Name: Hashable {
227226
}
228227

229228
public struct Document {
230-
public let kind: Kind = .document
231229
public let loc: Location?
232230
public var definitions: [Definition]
233231

@@ -341,7 +339,6 @@ public enum OperationType : String {
341339
}
342340

343341
public struct OperationDefinition {
344-
public let kind: Kind = .operationDefinition
345342
public let loc: Location?
346343
public var operation: OperationType
347344
public var name: Name?
@@ -400,7 +397,6 @@ extension OperationDefinition: Equatable {
400397
}
401398

402399
public struct VariableDefinition {
403-
public let kind: Kind = .variableDefinition
404400
public let loc: Location?
405401
public var variable: Variable
406402
public var type: Type
@@ -453,7 +449,6 @@ extension VariableDefinition : Equatable {
453449
}
454450

455451
public struct Variable {
456-
public let kind: Kind = .variable
457452
public let loc: Location?
458453
public var name: Name
459454

@@ -479,7 +474,6 @@ extension Variable : Equatable {
479474
}
480475

481476
public struct SelectionSet {
482-
public let kind: Kind = .selectionSet
483477
public let loc: Location?
484478
public var selections: [Selection]
485479

@@ -550,7 +544,6 @@ public enum Selection: EnumNode, Equatable {
550544
}
551545

552546
public struct Field {
553-
public let kind: Kind = .field
554547
public let loc: Location?
555548
public var alias: Name?
556549
public var name: Name
@@ -608,7 +601,6 @@ extension Field : Equatable {
608601
}
609602

610603
public struct Argument {
611-
public let kind: Kind = .argument
612604
public let loc: Location?
613605
public var name: Name
614606
public var value: Value
@@ -651,7 +643,6 @@ extension Argument : Equatable {
651643
}
652644

653645
public struct FragmentSpread {
654-
public let kind: Kind = .fragmentSpread
655646
public let loc: Location?
656647
public var name: Name
657648
public var directives: [Directive]
@@ -701,7 +692,6 @@ extension FragmentDefinition : HasTypeCondition {
701692
}
702693

703694
public struct InlineFragment {
704-
public let kind: Kind = .inlineFragment
705695
public let loc: Location?
706696
public var typeCondition: NamedType?
707697
public var directives: [Directive]
@@ -744,7 +734,6 @@ extension InlineFragment : Equatable {
744734
}
745735

746736
public struct FragmentDefinition {
747-
public let kind: Kind = .fragmentDefinition
748737
public let loc: Location?
749738
public var name: Name
750739
public var typeCondition: NamedType
@@ -857,7 +846,6 @@ public enum Value: EnumNode, Equatable {
857846
}
858847

859848
public struct IntValue {
860-
public let kind: Kind = .intValue
861849
public let loc: Location?
862850
public let value: String
863851

@@ -880,7 +868,6 @@ extension IntValue : Equatable {
880868
}
881869

882870
public struct FloatValue {
883-
public let kind: Kind = .floatValue
884871
public let loc: Location?
885872
public let value: String
886873

@@ -903,7 +890,6 @@ extension FloatValue : Equatable {
903890
}
904891

905892
public struct StringValue {
906-
public let kind: Kind = .stringValue
907893
public let loc: Location?
908894
public let value: String
909895
public let block: Bool?
@@ -935,7 +921,6 @@ extension StringValue : Equatable {
935921
}
936922

937923
public struct BooleanValue {
938-
public let kind: Kind = .booleanValue
939924
public let loc: Location?
940925
public let value: Bool
941926

@@ -958,7 +943,6 @@ extension BooleanValue : Equatable {
958943
}
959944

960945
public struct NullValue {
961-
public let kind: Kind = .nullValue
962946
public let loc: Location?
963947

964948
init(loc: Location? = nil) {
@@ -979,7 +963,6 @@ extension NullValue : Equatable {
979963
}
980964

981965
public struct EnumValue {
982-
public let kind: Kind = .enumValue
983966
public let loc: Location?
984967
public let value: String
985968

@@ -1002,7 +985,6 @@ extension EnumValue : Equatable {
1002985
}
1003986

1004987
public struct ListValue {
1005-
public let kind: Kind = .listValue
1006988
public let loc: Location?
1007989
public var values: [Value]
1008990

@@ -1044,7 +1026,6 @@ extension ListValue : Equatable {
10441026
}
10451027

10461028
public struct ObjectValue {
1047-
public let kind: Kind = .objectValue
10481029
public let loc: Location?
10491030
public var fields: [ObjectField]
10501031

@@ -1077,7 +1058,6 @@ extension ObjectValue : Equatable {
10771058
}
10781059

10791060
public struct ObjectField {
1080-
public let kind: Kind = .objectField
10811061
public let loc: Location?
10821062
public var name: Name
10831063
public var value: Value
@@ -1108,7 +1088,6 @@ extension ObjectField : Equatable {
11081088
}
11091089

11101090
public struct Directive {
1111-
public let kind: Kind = .directive
11121091
public let loc: Location?
11131092
public var name: Name
11141093
public var arguments: [Argument]
@@ -1186,7 +1165,6 @@ public indirect enum Type: EnumNode, Equatable {
11861165
}
11871166

11881167
public struct NamedType {
1189-
public let kind: Kind = .namedType
11901168
public let loc: Location?
11911169
public var name: Name
11921170

@@ -1211,7 +1189,6 @@ extension NamedType : Equatable {
12111189
}
12121190

12131191
public struct ListType {
1214-
public let kind: Kind = .listType
12151192
public let loc: Location?
12161193
public var type: Type
12171194

@@ -1340,7 +1317,6 @@ extension SchemaDefinition : Equatable {
13401317
}
13411318

13421319
public struct OperationTypeDefinition {
1343-
public let kind: Kind = .operationDefinition
13441320
public let loc: Location?
13451321
public let operation: OperationType
13461322
public var type: NamedType
@@ -1417,7 +1393,6 @@ public enum TypeDefinition: EnumNode, Equatable {
14171393
}
14181394

14191395
public struct ScalarTypeDefinition {
1420-
public let kind: Kind = .scalarTypeDefinition
14211396
public let loc: Location?
14221397
public var description: StringValue?
14231398
public var name: Name
@@ -1450,7 +1425,6 @@ extension ScalarTypeDefinition : Equatable {
14501425
}
14511426

14521427
public struct ObjectTypeDefinition {
1453-
public let kind: Kind = .objectTypeDefinition
14541428
public let loc: Location?
14551429
public var description: StringValue?
14561430
public var name: Name
@@ -1491,7 +1465,6 @@ extension ObjectTypeDefinition : Equatable {
14911465
}
14921466

14931467
public struct FieldDefinition {
1494-
public let kind: Kind = .fieldDefinition
14951468
public let loc: Location?
14961469
public var description: StringValue?
14971470
public var name: Name
@@ -1532,7 +1505,6 @@ extension FieldDefinition : Equatable {
15321505
}
15331506

15341507
public struct InputValueDefinition {
1535-
public let kind: Kind = .inputValueDefinition
15361508
public let loc: Location?
15371509
public var description: StringValue?
15381510
public var name: Name
@@ -1589,7 +1561,6 @@ extension InputValueDefinition : Equatable {
15891561
}
15901562

15911563
public struct InterfaceTypeDefinition {
1592-
public let kind: Kind = .interfaceTypeDefinition
15931564
public let loc: Location?
15941565
public var description: StringValue?
15951566
public var name: Name
@@ -1636,7 +1607,6 @@ extension InterfaceTypeDefinition : Equatable {
16361607
}
16371608

16381609
public struct UnionTypeDefinition {
1639-
public let kind: Kind = .unionTypeDefinition
16401610
public let loc: Location?
16411611
public var description: StringValue?
16421612
public var name: Name
@@ -1673,7 +1643,6 @@ extension UnionTypeDefinition : Equatable {
16731643
}
16741644

16751645
public struct EnumTypeDefinition {
1676-
public let kind: Kind = .enumTypeDefinition
16771646
public let loc: Location?
16781647
public var description: StringValue?
16791648
public var name: Name
@@ -1710,7 +1679,6 @@ extension EnumTypeDefinition : Equatable {
17101679
}
17111680

17121681
public struct EnumValueDefinition {
1713-
public let kind: Kind = .enumValueDefinition
17141682
public let loc: Location?
17151683
public var description: StringValue?
17161684
public var name: Name
@@ -1743,7 +1711,6 @@ extension EnumValueDefinition : Equatable {
17431711
}
17441712

17451713
public struct InputObjectTypeDefinition {
1746-
public let kind: Kind = .inputObjectTypeDefinition
17471714
public let loc: Location?
17481715
public var description: StringValue?
17491716
public var name: Name
@@ -1780,7 +1747,6 @@ extension InputObjectTypeDefinition : Equatable {
17801747
}
17811748

17821749
public struct TypeExtensionDefinition {
1783-
public let kind: Kind = .typeExtensionDefinition
17841750
public let loc: Location?
17851751
public var definition: ObjectTypeDefinition
17861752

@@ -1805,7 +1771,6 @@ extension TypeExtensionDefinition : Equatable {
18051771
}
18061772

18071773
public struct DirectiveDefinition {
1808-
public let kind: Kind = .directiveDefinition
18091774
public let loc: Location?
18101775
public var description: StringValue?
18111776
public var name: Name

Sources/GraphQL/Language/Kinds.swift

Lines changed: 0 additions & 39 deletions
This file was deleted.

0 commit comments

Comments
 (0)