public static void Remove <K>(this StorageSet set, K key) { if (set.Contains(key)) { set.Context.Delete(ElementKey(set.BaseKey, key)); var size = set.Count() - 1; set.Context.Put(CountKey(set.BaseKey), size); } }
public static void Add <K>(this StorageSet set, K key) { bool exists = set.Contains(key); if (!exists) { set.Context.Put(ElementKey(set.BaseKey, key), new byte[] { 1 }); var size = set.Count() + 1; set.Context.Put(CountKey(set.BaseKey), size); } }
public static bool Contains <K>(this StorageSet set, K key) { return(set.Context.Has(ElementKey(set.BaseKey, key))); }
public static BigInteger Count(this StorageSet set) { return(set.Context.Get(CountKey(set.BaseKey)).AsLargeInteger()); }