Class RelationalExpressionPointerSet<T extends RelationalExpression>
- java.lang.Object
-
- java.util.AbstractCollection<T>
-
- com.apple.foundationdb.record.query.plan.temp.RelationalExpressionPointerSet<T>
-
- Type Parameters:
T
- the planner expression type contained in the set
- All Implemented Interfaces:
Iterable<T>
,Collection<T>
public class RelationalExpressionPointerSet<T extends RelationalExpression> extends AbstractCollection<T>
A set ofRelationalExpression
s that uses reference ("pointer") equality to determine equivalence for the purposes of set membership, rather than theObject.equals(Object)
method used by the JavaSet
interface. This is important for implementing the memo data structure inGroupExpressionRef
-
-
Constructor Summary
Constructors Constructor Description RelationalExpressionPointerSet()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(T expression)
void
addAll(RelationalExpressionPointerSet<T> otherSet)
void
clear()
boolean
contains(Object o)
boolean
contains(T expression)
boolean
isEmpty()
Iterator<T>
iterator()
boolean
remove(T expression)
int
size()
-
Methods inherited from class java.util.AbstractCollection
addAll, containsAll, remove, removeAll, retainAll, toArray, toArray, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
equals, hashCode, parallelStream, removeIf, spliterator, stream, toArray
-
-
-
-
Method Detail
-
add
public boolean add(@Nonnull T expression)
- Specified by:
add
in interfaceCollection<T extends RelationalExpression>
- Overrides:
add
in classAbstractCollection<T extends RelationalExpression>
-
addAll
public void addAll(@Nonnull RelationalExpressionPointerSet<T> otherSet)
-
contains
public boolean contains(Object o)
- Specified by:
contains
in interfaceCollection<T extends RelationalExpression>
- Overrides:
contains
in classAbstractCollection<T extends RelationalExpression>
-
clear
public void clear()
- Specified by:
clear
in interfaceCollection<T extends RelationalExpression>
- Overrides:
clear
in classAbstractCollection<T extends RelationalExpression>
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interfaceCollection<T extends RelationalExpression>
- Overrides:
isEmpty
in classAbstractCollection<T extends RelationalExpression>
-
size
public int size()
- Specified by:
size
in interfaceCollection<T extends RelationalExpression>
- Specified by:
size
in classAbstractCollection<T extends RelationalExpression>
-
iterator
@Nonnull public Iterator<T> iterator()
- Specified by:
iterator
in interfaceCollection<T extends RelationalExpression>
- Specified by:
iterator
in interfaceIterable<T extends RelationalExpression>
- Specified by:
iterator
in classAbstractCollection<T extends RelationalExpression>
-
-