VertexVisitor::copy const

Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
James Cherry
2021-12-15 19:35:02 -07:00
parent 9da23bc4a3
commit 104f90089a
12 changed files with 22 additions and 25 deletions

View File

@@ -704,7 +704,7 @@ public:
void init(bool always_to_endpoints,
SearchPred *pred);
virtual void visit(Vertex *vertex);
virtual VertexVisitor *copy();
virtual VertexVisitor *copy() const;
// Return false to stop visiting.
virtual bool visitFromToPath(const Pin *from_pin,
Vertex *from_vertex,
@@ -770,7 +770,7 @@ class RequiredVisitor : public PathVisitor
public:
explicit RequiredVisitor(const StaState *sta);
virtual ~RequiredVisitor();
virtual VertexVisitor *copy();
virtual VertexVisitor *copy() const;
virtual void visit(Vertex *vertex);
protected:

View File

@@ -28,13 +28,10 @@ class VertexVisitor
public:
VertexVisitor() {}
virtual ~VertexVisitor() {}
virtual VertexVisitor *copy() = 0;
virtual VertexVisitor *copy() const = 0;
virtual void visit(Vertex *vertex) = 0;
void operator()(Vertex *vertex) { visit(vertex); }
virtual void levelFinished() {}
private:
DISALLOW_COPY_AND_ASSIGN(VertexVisitor);
};
// Collect visited pins into a PinSet.
@@ -44,7 +41,7 @@ public:
VertexPinCollector(PinSet *pins);
PinSet *pins() const { return pins_; }
void visit(Vertex *vertex);
virtual VertexVisitor *copy();
virtual VertexVisitor *copy() const;
protected:
PinSet *pins_;