public static UnifiedSet <T> ToSet <T>(this T singleton) where T : UnifiedElement { if (singleton == null) { return(UnifiedSet <T> .Create()); } return(UnifiedSet <T> .Create(singleton)); }
public static UnifiedSet <UnifiedAnnotation> Merge( this IList <UnifiedSet <UnifiedAnnotation> > collections) { Contract.Requires <InvalidOperationException>( collections.All(c => c.Parent == null)); if (collections.Count == 0) { return(UnifiedSet <UnifiedAnnotation> .Create()); } var ret = collections[0]; for (int i = 1; i < collections.Count; i++) { ret.AddRange(collections[i].ElementsThenClear()); } return(ret); }
public static UnifiedSet <T> ToSet <T>(this IEnumerable <T> collection) where T : UnifiedElement { return(UnifiedSet <T> .Create(collection)); }