diff --git a/lib/src/sparql/plan.rs b/lib/src/sparql/plan.rs index 97dd0d10..2fa1f9f7 100644 --- a/lib/src/sparql/plan.rs +++ b/lib/src/sparql/plan.rs @@ -7,7 +7,7 @@ use std::collections::btree_map::Entry; use std::collections::{BTreeMap, BTreeSet}; use std::rc::Rc; -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub enum PlanNode { StaticBindings { tuples: Vec, @@ -372,21 +372,21 @@ impl PlanNode { } } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub enum PatternValue { Constant(EncodedTerm), Variable(usize), Triple(Box), } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub struct TriplePatternValue { pub subject: PatternValue, pub predicate: PatternValue, pub object: PatternValue, } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub enum PlanExpression { Constant(EncodedTerm), Variable(usize), @@ -590,14 +590,14 @@ impl PlanExpression { } } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub struct PlanAggregation { pub function: PlanAggregationFunction, pub parameter: Option, pub distinct: bool, } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub enum PlanAggregationFunction { Count, Sum, @@ -608,7 +608,7 @@ pub enum PlanAggregationFunction { GroupConcat { separator: Rc }, } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub enum PlanPropertyPath { Path(EncodedTerm), Reverse(Rc), @@ -620,20 +620,20 @@ pub enum PlanPropertyPath { NegatedPropertySet(Rc>), } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub enum Comparator { Asc(PlanExpression), Desc(PlanExpression), } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub struct TripleTemplate { pub subject: TripleTemplateValue, pub predicate: TripleTemplateValue, pub object: TripleTemplateValue, } -#[derive(Eq, PartialEq, Debug, Clone, Hash)] +#[derive(Debug, Clone)] pub enum TripleTemplateValue { Constant(EncodedTerm), BlankNode(usize),