Your current impl of GraphStructure require a lot of lambda-configurations for it to work properly, meanwhile a lot of them may be not used in some cases of creating / altering nodes. This mean you break SRP in your GraphStructure instance. Fix it by dividing this big classes GraphStructure to separate more contained classes.
I decided do not bother myself with this for now. I changed configuration of graph and refactored namespaces and location of functions and currently it seems pretty much fine for me
Your current impl of
GraphStructure
require a lot of lambda-configurations for it to work properly, meanwhile a lot of them may be not used in some cases of creating / altering nodes. This mean you break SRP in your GraphStructure instance. Fix it by dividing this big classesGraphStructure
to separate more contained classes.