public class NopTraceCollector extends java.lang.Object implements IRewriterTraceCollector
Modifier and Type | Field and Description |
---|---|
static IRewriterTraceCollector |
INSTANCE |
Modifier and Type | Method and Description |
---|---|
void |
addTrace(PTraceable origin,
PTraceable derivative)
Mark the given derivative to be originated from the given original constraint.
|
void |
derivativeRemoved(PTraceable derivative,
IDerivativeModificationReason reason)
Indicate that the given derivative is removed from the resulting query, thus its trace
information should be removed also.
|
java.lang.Iterable<PTraceable> |
getCanonicalTraceables(PTraceable derivative)
Find and return the canonical
PTraceable s in the original query which are the sources of the given derivative
PTraceable according to the transformation. |
java.lang.Iterable<IDerivativeModificationReason> |
getRemovalReasons(PTraceable traceable)
Returns the reasons for which the traceable element has been removed by the rewriters.
|
java.lang.Iterable<PTraceable> |
getRewrittenTraceables(PTraceable source)
Find and return the
PTraceable s in the rewritten query which are the destinations of the given source
PTraceable according to the transformation. |
boolean |
isRemoved(PTraceable traceable)
Returns whether the given traceable element has been removed by every rewriter for a reason.
|
public static final IRewriterTraceCollector INSTANCE
public java.lang.Iterable<PTraceable> getCanonicalTraceables(PTraceable derivative)
IPTraceableTraceProvider
PTraceable
s in the original query which are the sources of the given derivative
PTraceable
according to the transformation.getCanonicalTraceables
in interface IPTraceableTraceProvider
derivative
- a PTraceable
which is contained by the PQuery
produced by the associated rewriterpublic java.lang.Iterable<PTraceable> getRewrittenTraceables(PTraceable source)
IPTraceableTraceProvider
PTraceable
s in the rewritten query which are the destinations of the given source
PTraceable
according to the transformation.getRewrittenTraceables
in interface IPTraceableTraceProvider
source
- a PTraceable
which is contained by a PQuery
before rewritingpublic void addTrace(PTraceable origin, PTraceable derivative)
IRewriterTraceCollector
addTrace
in interface IRewriterTraceCollector
public void derivativeRemoved(PTraceable derivative, IDerivativeModificationReason reason)
IRewriterTraceCollector
derivativeRemoved
in interface IRewriterTraceCollector
public boolean isRemoved(PTraceable traceable)
IPTraceableTraceProvider
isRemoved
in interface IPTraceableTraceProvider
public java.lang.Iterable<IDerivativeModificationReason> getRemovalReasons(PTraceable traceable)
IPTraceableTraceProvider
getRemovalReasons
in interface IPTraceableTraceProvider