graphrecords_query/error/
groups.rs1use crate::{
2 Diagnostic, ErrorGroup, FailureKind,
3 error::{
4 argument::ArgumentAbsent,
5 grouping::MissingGroupAggregate,
6 structure::{MissingAttribute, MissingTraversedAttribute},
7 },
8};
9use graphrecords_core::graphrecord::NodeIndex;
10
11pub struct AbsenceErrors;
12
13impl ErrorGroup for AbsenceErrors {
14 fn name() -> &'static str {
15 "AbsenceErrors"
16 }
17
18 fn contains(kind: &FailureKind) -> bool {
19 kind.is::<ArgumentAbsent>()
20 || kind.is::<MissingAttribute>()
21 || kind.name() == MissingTraversedAttribute::<NodeIndex>::name()
22 || kind.is::<MissingGroupAggregate>()
23 }
24}