public Config() { classes = HashSet.empty(); properties = HashMap.empty(); dataSources = HashMap.empty(); defaultDataSourceName = "db"; propertiesName = "application.properties"; instancePropertiesName = "instance.properties"; serviceTypePropertiesName = "service-type.properties"; allowCircularReferences = false; basePackages = new String[0]; }
@Override public <T> ImmutableSet<T> empty() { return HashSet.empty(); }
static <T> Monoid<HashSet<T>> hashSetConcat() { return Monoid.of(HashSet.empty(),Semigroups.persistentCollectionConcat()); } static <T> Monoid<TrieSet<T>> trieSetConcat() {
public static <T> HashSet<T> fromIterable(Iterable<T> it){ return ReactiveSeq.fromIterable(it).foldLeft(empty(),(m, t2)->m.plus(t2)); } public static <T> HashSet<T> fromIterator(Iterator<T> it){
public static <T> HashSet<T> fromStream(Stream<T> stream){ return ReactiveSeq.fromStream(stream).foldLeft(empty(),(m,t2)->m.plus(t2)); } public static <T> HashSet<T> fromIterable(Iterable<T> it){
/** * <pre> * {@code * PersistentSet<Integer> q = Reducers.toPSet() .foldMap(Stream.of(1,2,3,4)); * * } * </pre> * @return Reducer for PSet */ public static <T> Reducer<PersistentSet<T>,T> toPersistentSet() { return Reducer.fromMonoid(Monoids.concatPersistentCollection(HashSet.empty()), a -> HashSet.of(a)); } /**
@Test public void testMapA(){ assertThat(of(1,2,3).map(i->i*2),equalTo(HashSet.of(2,4,6))); assertThat(this.<Integer>empty().map(i->i*2),equalTo(HashSet.empty())); } @Test
@Test public void nines(){ /** HashSet<Integer> hs = HashSet.<Integer>empty().plus(9).plus(-10).plus(8) .plus(-9); System.out.println("-9?"+hs.containsValue(-9)); **/ System.out.println(HashSet.<Long>empty().plus(9l).plus(-10l) .plus(8l)); // .plus(-9l)); } @Test
@Test public void testFlatMapA(){ assertThat(of(1,2,3).flatMap(i-> of(i*2)),equalTo(HashSet.of(2,4,6))); assertThat(this.<Integer>empty().concatMap(i-> of(i*2)),equalTo(HashSet.empty())); }
@Test public void testMapA(){ assertThat(of(1,2,3).map(i->i*2),equalTo(HashSet.of(2,4,6))); assertThat(this.<Integer>empty().map(i->i*2),equalTo(HashSet.empty())); } @Test
@Test public void peek(){ AtomicReference<Vector<Integer>> key = new AtomicReference<>(Vector.empty()); AtomicReference<Vector<Integer>> value = new AtomicReference<>(Vector.empty()); ImmutableMap<Integer,Integer> map = empty(); HashSet<Integer> values = HashSet.empty(); for(int i=0;i<80;i++){ map = map.put(i,i*2); values = values.add(i*2); } ImmutableMap<Integer,Integer> map2 = map.peek(v->value.updateAndGet(vec->vec.append(v))); assertThat(map2.values().toHashSet(),equalTo(values)); }
@Test public void testFlatMapA(){ assertThat(of(1,2,3).flatMap(i-> of(i*2)),equalTo(HashSet.of(2,4,6))); assertThat(this.<Integer>empty().concatMap(i-> of(i*2)),equalTo(HashSet.empty())); }
@Test public void bipeek(){ AtomicReference<Vector<Integer>> key = new AtomicReference<>(Vector.empty()); AtomicReference<Vector<Integer>> value = new AtomicReference<>(Vector.empty()); ImmutableMap<Integer,Integer> map = empty(); HashSet<Integer> keys = HashSet.empty(); HashSet<Integer> values = HashSet.empty(); for(int i=0;i<80;i++){ map = map.put(i,i*2); keys = keys.add(i); values = values.add(i*2); } ImmutableMap<Integer,Integer> map2 = map.bipeek(k->key.updateAndGet(v->v.append(k)), v->value.updateAndGet(vec->vec.append(v))); assertThat(map2.keys().toHashSet(),equalTo(keys)); assertThat(map2.values().toHashSet(),equalTo(values)); } @Test
public Config() { classes = HashSet.empty(); properties = HashMap.empty(); dataSources = HashMap.empty(); defaultDataSourceName = "db"; propertiesName = "application.properties"; instancePropertiesName = "instance.properties"; serviceTypePropertiesName = "service-type.properties"; allowCircularReferences = false; basePackages = new String[0]; }
static <T> Monoid<HashSet<T>> hashSetConcat() { return Monoid.of(HashSet.empty(),Semigroups.persistentCollectionConcat()); } static <T> Monoid<TrieSet<T>> trieSetConcat() {
public static <T> HashSet<T> fromStream(Stream<T> stream){ return ReactiveSeq.fromStream(stream).foldLeft(empty(),(m,t2)->m.plus(t2)); } public static <T> HashSet<T> fromIterable(Iterable<T> it){
public static <T> HashSet<T> fromIterable(Iterable<T> it){ return ReactiveSeq.fromIterable(it).foldLeft(empty(),(m, t2)->m.plus(t2)); } public static <T> HashSet<T> fromIterator(Iterator<T> it){
/** * <pre> * {@code * PersistentSet<Integer> q = Reducers.toPSet() .foldMap(Stream.of(1,2,3,4)); * * } * </pre> * @return Reducer for PSet */ public static <T> Reducer<PersistentSet<T>,T> toPersistentSet() { return Reducer.fromMonoid(Monoids.concatPersistentCollection(HashSet.empty()), a -> HashSet.of(a)); } /**