Instantiates a new PatternGraph object as a copy from an original pattern graph, used for inlining.
We create the inlined elements as clones from the original stuff so a maybe already done inlining pass inside a subpattern does not influence us when we inline that subpattern.

C# |
public PatternGraph( PatternGraph original, PatternGraphEmbedding inlinedSubpatternEmbedding, PatternGraph newHost, string nameSuffix, Dictionary<PatternNode, PatternNode> nodeToCopy_, Dictionary<PatternEdge, PatternEdge> edgeToCopy_, Dictionary<PatternVariable, PatternVariable> variableToCopy_ )

- original (PatternGraph)
- The original pattern graph to be copy constructed.
- inlinedSubpatternEmbedding (PatternGraphEmbedding)
- The embedding which just gets inlined.
- newHost (PatternGraph)
- The pattern graph the new pattern element will be contained in.
- nameSuffix (String)
- The suffix to be added to the name of the pattern graph and its elements (to avoid name collisions).
- nodeToCopy_ (Dictionary<(Of <(<'PatternNode, PatternNode>)>)>)
- edgeToCopy_ (Dictionary<(Of <(<'PatternEdge, PatternEdge>)>)>)
- variableToCopy_ (Dictionary<(Of <(<'PatternVariable, PatternVariable>)>)>)