fujaba / org.fujaba.graphengine

This project's aim is to build a graph engine, that is able to build and compare graphs - and to match patterns and apply actions on the graph, to effectively use it as a graph-transformation framework.
BSD 3-Clause "New" or "Revised" License
1 stars 0 forks source link

make graph classes efficiently cloneable #5

Closed hoechp closed 7 years ago

hoechp commented 7 years ago

Die Graph-Klassen sollten sich clonen lassen wie ein Blitz. Siehe auch #3

hoechp commented 7 years ago

Wenn man Knoten klont, macht es keinen Sinn, die Kanten direkt beim Klonen zu beachten, da die Kanten zu äquivalenten geklonten Knoten und nicht zu den vorher hinterlegten Knoten verweisen sollen. => Daher werden die Kanten beim Klonen der Knoten ausgelassen.

Wenn man aber einen Graph klont, dann wird der Graph komplett und sinnvoll geklont, wie auch alle seine Knoten und die Kanten zwischen diesen Knoten.

Eventuell könnte die Performance noch optimiert werden, aber ich denke es ist fast ok so.