Package daikon
Class VarInfoName.Finder
-
- All Implemented Interfaces:
VarInfoName.Visitor<VarInfoName>
- Enclosing class:
- VarInfoName
public static class VarInfoName.Finder extends VarInfoName.AbstractVisitor<VarInfoName>
Finds if a given VarInfoName is contained in a set of nodes in the VarInfoName tree using == comparison. Recurse through everything except fields, so in x.a, we don't look at a.
-
-
Constructor Summary
Constructors Constructor Description Finder(Set<VarInfoName> argGoals)
Creates a new Finder.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
contains(VarInfoName root)
Returns true iff some part of root is contained in this.goals.@Nullable VarInfoName
getPart(VarInfoName root)
Returns the part of root that is contained in this.goals, or null if not found.VarInfoName
visitAdd(VarInfoName.Add o)
VarInfoName
visitElements(VarInfoName.Elements o)
VarInfoName
visitField(VarInfoName.Field o)
VarInfoName
visitFunctionOf(VarInfoName.FunctionOf o)
VarInfoName
visitFunctionOfN(VarInfoName.FunctionOfN o)
By default, return effect on first argument, but traverse all, backwards.VarInfoName
visitPoststate(VarInfoName.Poststate o)
VarInfoName
visitPrestate(VarInfoName.Prestate o)
VarInfoName
visitSimple(VarInfoName.Simple o)
VarInfoName
visitSizeOf(VarInfoName.SizeOf o)
VarInfoName
visitSlice(VarInfoName.Slice o)
VarInfoName
visitSubscript(VarInfoName.Subscript o)
VarInfoName
visitTypeOf(VarInfoName.TypeOf o)
-
-
-
Constructor Detail
-
Finder
public Finder(Set<VarInfoName> argGoals)
Creates a new Finder. Uses equals() to find.- Parameters:
argGoals
- the goals to find
-
-
Method Detail
-
contains
@EnsuresNonNullIf(result=true, expression="getPart(#1") public boolean contains(VarInfoName root)
Returns true iff some part of root is contained in this.goals.
-
getPart
public @Nullable VarInfoName getPart(VarInfoName root)
Returns the part of root that is contained in this.goals, or null if not found.
-
visitSimple
public VarInfoName visitSimple(VarInfoName.Simple o)
- Specified by:
visitSimple
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitSimple
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitSizeOf
public VarInfoName visitSizeOf(VarInfoName.SizeOf o)
- Specified by:
visitSizeOf
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitSizeOf
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitFunctionOf
public VarInfoName visitFunctionOf(VarInfoName.FunctionOf o)
- Specified by:
visitFunctionOf
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitFunctionOf
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitFunctionOfN
public VarInfoName visitFunctionOfN(VarInfoName.FunctionOfN o)
Description copied from class:VarInfoName.AbstractVisitor
By default, return effect on first argument, but traverse all, backwards.- Specified by:
visitFunctionOfN
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitFunctionOfN
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitField
public VarInfoName visitField(VarInfoName.Field o)
- Specified by:
visitField
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitField
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitTypeOf
public VarInfoName visitTypeOf(VarInfoName.TypeOf o)
- Specified by:
visitTypeOf
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitTypeOf
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitPrestate
public VarInfoName visitPrestate(VarInfoName.Prestate o)
- Specified by:
visitPrestate
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitPrestate
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitPoststate
public VarInfoName visitPoststate(VarInfoName.Poststate o)
- Specified by:
visitPoststate
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitPoststate
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitAdd
public VarInfoName visitAdd(VarInfoName.Add o)
- Specified by:
visitAdd
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitAdd
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitElements
public VarInfoName visitElements(VarInfoName.Elements o)
- Specified by:
visitElements
in interfaceVarInfoName.Visitor<VarInfoName>
- Overrides:
visitElements
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitSubscript
public VarInfoName visitSubscript(VarInfoName.Subscript o)
- Specified by:
visitSubscript
in interfaceVarInfoName.Visitor<VarInfoName>
- Specified by:
visitSubscript
in classVarInfoName.AbstractVisitor<VarInfoName>
-
visitSlice
public VarInfoName visitSlice(VarInfoName.Slice o)
- Specified by:
visitSlice
in interfaceVarInfoName.Visitor<VarInfoName>
- Specified by:
visitSlice
in classVarInfoName.AbstractVisitor<VarInfoName>
-
-