public static PersistentHashSet create(ISeq items) { ITransientSet ret = (ITransientSet)EMPTY.asTransient(); for (; items != null; items = items.next()) { ret = (ITransientSet)ret.conj(items.first()); } return((PersistentHashSet)ret.persistent()); }
public static PersistentHashSet create(IList init) { ITransientSet ret = (ITransientSet)EMPTY.asTransient(); foreach (object obj in init) { ret = (ITransientSet)ret.conj(obj); } return((PersistentHashSet)ret.persistent()); }
public static PersistentHashSet create(params object[] init) { ITransientSet ret = (ITransientSet)EMPTY.asTransient(); for (int i = 0; i < init.Length; ++i) { ret = (ITransientSet)ret.conj(init[i]); } return((PersistentHashSet)ret.persistent()); }
public static PersistentHashSet createWithCheck(params object[] init) { ITransientSet ret = (ITransientSet)EMPTY.asTransient(); for (int i = 0; i < init.Length; i++) { ret = (ITransientSet)ret.conj(init[i]); if (ret.count() != i + 1) { throw new ArgumentException("Duplicate key: " + init[i]); } } return((PersistentHashSet)ret.persistent()); }
public static PersistentHashSet createWithCheck(ISeq items) { ITransientSet ret = (ITransientSet)EMPTY.asTransient(); for (int i = 0; items != null; items = items.next(), ++i) { ret = (ITransientSet)ret.conj(items.first()); if (ret.count() != i + 1) { throw new ArgumentException("Duplicate key: " + items.first()); } } return((PersistentHashSet)ret.persistent()); }
public static PersistentHashSet createWithCheck(IList init) { ITransientSet ret = (ITransientSet)EMPTY.asTransient(); int i = 0; foreach (Object key in init) { ret = (ITransientSet)ret.conj(key); if (ret.count() != i + 1) { throw new ArgumentException("Duplicate key: " + key); } ++i; } return((PersistentHashSet)ret.persistent()); }