diff options
Diffstat (limited to 'plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/CloningExtensions.java')
-rw-r--r-- | plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/CloningExtensions.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/CloningExtensions.java b/plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/CloningExtensions.java new file mode 100644 index 00000000..f15f00be --- /dev/null +++ b/plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/CloningExtensions.java @@ -0,0 +1,16 @@ +package org.eclipse.xtend.util.stdlib; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.util.EcoreUtil; + +public class CloningExtensions { + + public static Object clone(Object original) { + EObject context = (EObject) original; + EcoreUtil.Copier copier = new EcoreUtil.Copier(); + EObject copy = copier.copy(context); + copier.copyReferences(); + return copy; + } + +} |