package damp.ekeko.snippets.geneticsearch; import org.eclipse.jdt.core.ITypeHierarchyChangedListener; import org.eclipse.jdt.core.dom.ASTNode; import damp.ekeko.JavaProjectModel; import damp.ekeko.TableGatheringVisitor; /** * A PartialJavaProjectModel is useful if you want to query only very specific parts of code. * More specifically, a PartialJavaProjectModel is like a view/filter on an existing JavaProjectModel: * You can set it up such that you're querying only certain AST subtrees. * (, whereas in a normal JavaProjectModel, you can only filter at the level of entire compilation units..) * * @author Tim */ public class PartialJavaProjectModel extends JavaProjectModel implements ITypeHierarchyChangedListener { public PartialJavaProjectModel() { super(null); } /** * Add an AST subtree (from another JavaProjectModel) to this partial model * @param node */ public void addExistingAST(ASTNode node) { TableGatheringVisitor v = new TableGatheringVisitor(); node.accept(v); addInformationFromVisitor(v); } }