public static IElement2D ISetInternalElements2D(this IElement2D element2D, List <IElement2D> newElements2D) { IElement2D result = Reflection.Compute.RunExtensionMethod(element2D, "SetInternalElements2D", new object[] { newElements2D }) as IElement2D; if (result == null && newElements2D.Count != 0) { Engine.Reflection.Compute.RecordError("Cannot set internal 2D elements to an " + element2D.GetType() + "."); } return(result ?? element2D.ShallowClone()); }