Skip to content

Commit 074d599

Browse files
Rename Directives and Diagnostics to DirectiveList and DiagnosticsList (#732)
Fixes #711 The previous names were too similar to `Directive` and `Diagnostic` (singular). Co-authored-by: Renée <[email protected]>
1 parent ef45fd0 commit 074d599

16 files changed

+158
-146
lines changed

crates/apollo-compiler/CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
3737
* Remove `executable::OperationRef<'_>`
3838
(which was equivalent to `(Option<&Name>, &Node<Operation>)`),
3939
replacing its uses with `&Node<Operation>`
40+
- **Rename `Directives` and `Diagnostics` to `DirectiveList` and `DiagnosticList` -
41+
[SimonSapin], [pull/732] fixing [issue/711].**
42+
The previous names were too similar to `Directive` and `Diagnostic` (singular).
4043

4144
## Features
4245

@@ -66,8 +69,10 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
6669

6770
[SimonSapin]: https://github.com/SimonSapin
6871
[issue/708]: https://github.com/apollographql/apollo-rs/issues/708
72+
[issue/711]: https://github.com/apollographql/apollo-rs/issues/711
6973
[pull/727]: https://github.com/apollographql/apollo-rs/pull/727
7074
[pull/728]: https://github.com/apollographql/apollo-rs/pull/728
75+
[pull/732]: https://github.com/apollographql/apollo-rs/pull/732
7176

7277

7378
# [1.0.0-beta.5](https://crates.io/crates/apollo-compiler/1.0.0-beta.5) - 2023-11-08

crates/apollo-compiler/src/ast/from_cst.rs

+23-23
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ impl Convert for cst::OperationDefinition {
135135
variables: collect_opt(file_id, self.variable_definitions(), |x| {
136136
x.variable_definitions()
137137
}),
138-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
138+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
139139
x.directives()
140140
})),
141141
selection_set: self
@@ -154,7 +154,7 @@ impl Convert for cst::FragmentDefinition {
154154
Some(Self::Target {
155155
name: self.fragment_name()?.name()?.convert(file_id)?,
156156
type_condition: self.type_condition()?.convert(file_id)?,
157-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
157+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
158158
x.directives()
159159
})),
160160
selection_set: self.selection_set().convert(file_id)??,
@@ -199,7 +199,7 @@ impl Convert for cst::SchemaDefinition {
199199
fn convert(&self, file_id: FileId) -> Option<Self::Target> {
200200
Some(Self::Target {
201201
description: self.description().convert(file_id)?,
202-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
202+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
203203
x.directives()
204204
})),
205205
// This may represent a syntactically invalid thing: a schema without any root
@@ -221,7 +221,7 @@ impl Convert for cst::ScalarTypeDefinition {
221221
Some(Self::Target {
222222
description: self.description().convert(file_id)?,
223223
name: self.name()?.convert(file_id)?,
224-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
224+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
225225
x.directives()
226226
})),
227227
})
@@ -236,7 +236,7 @@ impl Convert for cst::ObjectTypeDefinition {
236236
description: self.description().convert(file_id)?,
237237
name: self.name()?.convert(file_id)?,
238238
implements_interfaces: self.implements_interfaces().convert(file_id)?,
239-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
239+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
240240
x.directives()
241241
})),
242242
fields: collect_opt(file_id, self.fields_definition(), |x| x.field_definitions()),
@@ -252,7 +252,7 @@ impl Convert for cst::InterfaceTypeDefinition {
252252
description: self.description().convert(file_id)?,
253253
name: self.name()?.convert(file_id)?,
254254
implements_interfaces: self.implements_interfaces().convert(file_id)?,
255-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
255+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
256256
x.directives()
257257
})),
258258
fields: collect_opt(file_id, self.fields_definition(), |x| x.field_definitions()),
@@ -267,7 +267,7 @@ impl Convert for cst::UnionTypeDefinition {
267267
Some(Self::Target {
268268
description: self.description().convert(file_id)?,
269269
name: self.name()?.convert(file_id)?,
270-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
270+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
271271
x.directives()
272272
})),
273273
members: self
@@ -289,7 +289,7 @@ impl Convert for cst::EnumTypeDefinition {
289289
Some(Self::Target {
290290
description: self.description().convert(file_id)?,
291291
name: self.name()?.convert(file_id)?,
292-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
292+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
293293
x.directives()
294294
})),
295295
values: collect_opt(file_id, self.enum_values_definition(), |x| {
@@ -306,7 +306,7 @@ impl Convert for cst::InputObjectTypeDefinition {
306306
Some(Self::Target {
307307
description: self.description().convert(file_id)?,
308308
name: self.name()?.convert(file_id)?,
309-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
309+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
310310
x.directives()
311311
})),
312312
fields: collect_opt(file_id, self.input_fields_definition(), |x| {
@@ -321,7 +321,7 @@ impl Convert for cst::SchemaExtension {
321321

322322
fn convert(&self, file_id: FileId) -> Option<Self::Target> {
323323
Some(Self::Target {
324-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
324+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
325325
x.directives()
326326
})),
327327
root_operations: self
@@ -338,7 +338,7 @@ impl Convert for cst::ScalarTypeExtension {
338338
fn convert(&self, file_id: FileId) -> Option<Self::Target> {
339339
Some(Self::Target {
340340
name: self.name()?.convert(file_id)?,
341-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
341+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
342342
x.directives()
343343
})),
344344
})
@@ -352,7 +352,7 @@ impl Convert for cst::ObjectTypeExtension {
352352
Some(Self::Target {
353353
name: self.name()?.convert(file_id)?,
354354
implements_interfaces: self.implements_interfaces().convert(file_id)?,
355-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
355+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
356356
x.directives()
357357
})),
358358
fields: collect_opt(file_id, self.fields_definition(), |x| x.field_definitions()),
@@ -367,7 +367,7 @@ impl Convert for cst::InterfaceTypeExtension {
367367
Some(Self::Target {
368368
name: self.name()?.convert(file_id)?,
369369
implements_interfaces: self.implements_interfaces().convert(file_id)?,
370-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
370+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
371371
x.directives()
372372
})),
373373
fields: collect_opt(file_id, self.fields_definition(), |x| x.field_definitions()),
@@ -381,7 +381,7 @@ impl Convert for cst::UnionTypeExtension {
381381
fn convert(&self, file_id: FileId) -> Option<Self::Target> {
382382
Some(Self::Target {
383383
name: self.name()?.convert(file_id)?,
384-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
384+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
385385
x.directives()
386386
})),
387387
members: self
@@ -402,7 +402,7 @@ impl Convert for cst::EnumTypeExtension {
402402
fn convert(&self, file_id: FileId) -> Option<Self::Target> {
403403
Some(Self::Target {
404404
name: self.name()?.convert(file_id)?,
405-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
405+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
406406
x.directives()
407407
})),
408408
values: collect_opt(file_id, self.enum_values_definition(), |x| {
@@ -418,7 +418,7 @@ impl Convert for cst::InputObjectTypeExtension {
418418
fn convert(&self, file_id: FileId) -> Option<Self::Target> {
419419
Some(Self::Target {
420420
name: self.name()?.convert(file_id)?,
421-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
421+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
422422
x.directives()
423423
})),
424424
fields: collect_opt(file_id, self.input_fields_definition(), |x| {
@@ -538,7 +538,7 @@ impl Convert for cst::VariableDefinition {
538538
name: self.variable()?.name()?.convert(file_id)?,
539539
ty: with_location(file_id, ty.syntax(), ty.convert(file_id)?),
540540
default_value,
541-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
541+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
542542
x.directives()
543543
})),
544544
})
@@ -578,7 +578,7 @@ impl Convert for cst::FieldDefinition {
578578
x.input_value_definitions()
579579
}),
580580
ty: self.ty()?.convert(file_id)?,
581-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
581+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
582582
x.directives()
583583
})),
584584
})
@@ -616,7 +616,7 @@ impl Convert for cst::InputValueDefinition {
616616
name: self.name()?.convert(file_id)?,
617617
ty: with_location(file_id, ty.syntax(), ty.convert(file_id)?),
618618
default_value,
619-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
619+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
620620
x.directives()
621621
})),
622622
})
@@ -630,7 +630,7 @@ impl Convert for cst::EnumValueDefinition {
630630
Some(Self::Target {
631631
description: self.description().convert(file_id)?,
632632
value: self.enum_value()?.name()?.convert(file_id)?,
633-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
633+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
634634
x.directives()
635635
})),
636636
})
@@ -682,7 +682,7 @@ impl Convert for cst::Field {
682682
alias: self.alias().convert(file_id)?,
683683
name: self.name()?.convert(file_id)?,
684684
arguments: collect_opt(file_id, self.arguments(), |x| x.arguments()),
685-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
685+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
686686
x.directives()
687687
})),
688688
// Use an empty Vec for a field without sub-selections
@@ -697,7 +697,7 @@ impl Convert for cst::FragmentSpread {
697697
fn convert(&self, file_id: FileId) -> Option<Self::Target> {
698698
Some(Self::Target {
699699
fragment_name: self.fragment_name()?.name()?.convert(file_id)?,
700-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
700+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
701701
x.directives()
702702
})),
703703
})
@@ -710,7 +710,7 @@ impl Convert for cst::InlineFragment {
710710
fn convert(&self, file_id: FileId) -> Option<Self::Target> {
711711
Some(Self::Target {
712712
type_condition: self.type_condition().convert(file_id)?,
713-
directives: ast::Directives(collect_opt(file_id, self.directives(), |x| {
713+
directives: ast::DirectiveList(collect_opt(file_id, self.directives(), |x| {
714714
x.directives()
715715
})),
716716
selection_set: self.selection_set().convert(file_id)??,

crates/apollo-compiler/src/ast/impls.rs

+13-13
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use super::*;
22
use crate::node::NodeLocation;
33
use crate::schema::SchemaBuilder;
4-
use crate::validation::Diagnostics;
4+
use crate::validation::DiagnosticList;
55
use crate::ExecutableDocument;
66
use crate::Parser;
77
use crate::Schema;
@@ -35,23 +35,23 @@ impl Document {
3535
/// the GraphQL grammar or where the parser reached a token limit or recursion limit.
3636
///
3737
/// Does not perform any validation beyond this syntactic level.
38-
pub fn check_parse_errors(&self) -> Result<(), Diagnostics> {
39-
let mut errors = Diagnostics::new(None, self.sources.clone());
38+
pub fn check_parse_errors(&self) -> Result<(), DiagnosticList> {
39+
let mut errors = DiagnosticList::new(None, self.sources.clone());
4040
for (file_id, source) in self.sources.iter() {
4141
source.validate_parse_errors(&mut errors, *file_id)
4242
}
4343
errors.into_result()
4444
}
4545

4646
/// Validate as an executable document, as much as possible without a schema
47-
pub fn validate_standalone_executable(&self) -> Result<(), Diagnostics> {
47+
pub fn validate_standalone_executable(&self) -> Result<(), DiagnosticList> {
4848
let type_system_definitions_are_errors = true;
4949
let executable = crate::executable::from_ast::document_from_ast(
5050
None,
5151
self,
5252
type_system_definitions_are_errors,
5353
);
54-
let mut errors = Diagnostics::new(None, self.sources.clone());
54+
let mut errors = DiagnosticList::new(None, self.sources.clone());
5555
crate::executable::validation::validate_standalone_executable(&mut errors, &executable);
5656
errors.into_result()
5757
}
@@ -240,8 +240,8 @@ impl Definition {
240240
}
241241
}
242242

243-
pub fn directives(&self) -> &Directives {
244-
static EMPTY: Directives = Directives(Vec::new());
243+
pub fn directives(&self) -> &DirectiveList {
244+
static EMPTY: DirectiveList = DirectiveList(Vec::new());
245245
match self {
246246
Self::DirectiveDefinition(_) => &EMPTY,
247247
Self::OperationDefinition(def) => &def.directives,
@@ -380,7 +380,7 @@ impl InputObjectTypeExtension {
380380
serialize_method!();
381381
}
382382

383-
impl Directives {
383+
impl DirectiveList {
384384
pub fn new() -> Self {
385385
Self(Vec::new())
386386
}
@@ -412,27 +412,27 @@ impl Directives {
412412
serialize_method!();
413413
}
414414

415-
impl std::fmt::Debug for Directives {
415+
impl std::fmt::Debug for DirectiveList {
416416
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
417417
self.0.fmt(f)
418418
}
419419
}
420420

421-
impl std::ops::Deref for Directives {
421+
impl std::ops::Deref for DirectiveList {
422422
type Target = Vec<Node<Directive>>;
423423

424424
fn deref(&self) -> &Self::Target {
425425
&self.0
426426
}
427427
}
428428

429-
impl std::ops::DerefMut for Directives {
429+
impl std::ops::DerefMut for DirectiveList {
430430
fn deref_mut(&mut self) -> &mut Self::Target {
431431
&mut self.0
432432
}
433433
}
434434

435-
impl<'a> IntoIterator for &'a Directives {
435+
impl<'a> IntoIterator for &'a DirectiveList {
436436
type Item = &'a Node<Directive>;
437437

438438
type IntoIter = std::slice::Iter<'a, Node<Directive>>;
@@ -442,7 +442,7 @@ impl<'a> IntoIterator for &'a Directives {
442442
}
443443
}
444444

445-
impl<'a> IntoIterator for &'a mut Directives {
445+
impl<'a> IntoIterator for &'a mut DirectiveList {
446446
type Item = &'a mut Node<Directive>;
447447

448448
type IntoIter = std::slice::IterMut<'a, Node<Directive>>;

0 commit comments

Comments
 (0)