test_class.file: parser/src/test/java/com/qihoo/qsql/org/apache/calcite/util/ImmutableBitSetTest.java
test_class.identifier: ImmutableBitSetTest
test_case.body: @Test public void testPowerSet() {
      final ImmutableBitSet empty = ImmutableBitSet.of();
      assertThat(Iterables.size(empty.powerSet()), equalTo(1));
      assertThat(empty.powerSet().toString(), equalTo("[{}]"));
  
      final ImmutableBitSet single = ImmutableBitSet.of(2);
      assertThat(Iterables.size(single.powerSet()), equalTo(2));
      assertThat(single.powerSet().toString(), equalTo("[{}, {2}]"));
  
      final ImmutableBitSet two = ImmutableBitSet.of(2, 10);
      assertThat(Iterables.size(two.powerSet()), equalTo(4));
      assertThat(two.powerSet().toString(), equalTo("[{}, {10}, {2}, {2, 10}]"));
  
      final ImmutableBitSet seventeen = ImmutableBitSet.range(3, 20);
      assertThat(Iterables.size(seventeen.powerSet()), equalTo(131072));
    }
test_case.class_method_signature: ImmutableBitSetTest.testPowerSet()
test_case.full_signature: @Test public void testPowerSet()
test_case.identifier: testPowerSet
test_case.invocations: of assertThat size powerSet equalTo assertThat toString powerSet equalTo of assertThat size powerSet equalTo assertThat toString powerSet equalTo of assertThat size powerSet equalTo assertThat toString powerSet equalTo range assertThat size powerSet equalTo
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testPowerSet()
focal_class.declarator: COMPARATOR = (o1, o2) -> {
      if (o1.equals(o2)) {
        return 0;
      }
      if (o1.contains(o2)) {
        return -1;
      }
      if (o2.contains(o1)) {
        return 1;
      }
      return o1.compareTo(o2);
    }
focal_class.modifier: public static final
focal_class.original_string: public static final Comparator<ImmutableBitSet> COMPARATOR = (o1, o2) -> {
      if (o1.equals(o2)) {
        return 0;
      }
      if (o1.contains(o2)) {
        return -1;
      }
      if (o2.contains(o1)) {
        return 1;
      }
      return o1.compareTo(o2);
    };
focal_class.type: Comparator<ImmutableBitSet>
focal_class.var_name: COMPARATOR
focal_class.declarator: ORDERING =
        Ordering.from(COMPARATOR)
focal_class.modifier: public static final
focal_class.original_string: public static final Ordering<ImmutableBitSet> ORDERING =
        Ordering.from(COMPARATOR);
focal_class.type: Ordering<ImmutableBitSet>
focal_class.var_name: ORDERING
focal_class.declarator: ADDRESS_BITS_PER_WORD = 6
focal_class.modifier: private static final
focal_class.original_string: private static final int ADDRESS_BITS_PER_WORD = 6;
focal_class.type: int
focal_class.var_name: ADDRESS_BITS_PER_WORD
focal_class.declarator: BITS_PER_WORD = 1 << ADDRESS_BITS_PER_WORD
focal_class.modifier: private static final
focal_class.original_string: private static final int BITS_PER_WORD = 1 << ADDRESS_BITS_PER_WORD;
focal_class.type: int
focal_class.var_name: BITS_PER_WORD
focal_class.declarator: WORD_MASK = 0xffffffffffffffffL
focal_class.modifier: private static final
focal_class.original_string: private static final long WORD_MASK = 0xffffffffffffffffL;
focal_class.type: long
focal_class.var_name: WORD_MASK
focal_class.declarator: EMPTY_LONGS = new long[0]
focal_class.modifier: private static final
focal_class.original_string: private static final long[] EMPTY_LONGS = new long[0];
focal_class.type: long[]
focal_class.var_name: EMPTY_LONGS
focal_class.declarator: EMPTY =
        new ImmutableBitSet(EMPTY_LONGS)
focal_class.modifier: private static final
focal_class.original_string: private static final ImmutableBitSet EMPTY =
        new ImmutableBitSet(EMPTY_LONGS);
focal_class.type: ImmutableBitSet
focal_class.var_name: EMPTY
focal_class.declarator: FROM_BIT_SET = ImmutableBitSet::fromBitSet
focal_class.modifier: @SuppressWarnings("Guava")
    @Deprecated // to be removed before 2.0
    public static final
focal_class.original_string: @SuppressWarnings("Guava")
    @Deprecated // to be removed before 2.0
    public static final
        com.google.common.base.Function<? super BitSet, ImmutableBitSet>
        FROM_BIT_SET = ImmutableBitSet::fromBitSet;
focal_class.type: com.google.common.base.Function<? super BitSet, ImmutableBitSet>
focal_class.var_name: FROM_BIT_SET
focal_class.declarator: words
focal_class.modifier: private final
focal_class.original_string: private final long[] words;
focal_class.type: long[]
focal_class.var_name: words
focal_class.file: parser/src/main/java/com/qihoo/qsql/org/apache/calcite/util/ImmutableBitSet.java
focal_class.identifier: ImmutableBitSet
focal_class.interfaces: implements Iterable<Integer>, Serializable, Comparable<ImmutableBitSet>
focal_class.class_method_signature: ImmutableBitSet.ImmutableBitSet(long[] words)
focal_class.full_signature: private  ImmutableBitSet(long[] words)
focal_class.identifier: ImmutableBitSet
focal_class.modifiers: private
focal_class.parameters: (long[] words)
focal_class.signature:  ImmutableBitSet(long[] words)
focal_class.class_method_signature: ImmutableBitSet.of()
focal_class.full_signature: public static ImmutableBitSet of()
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet of()
focal_class.class_method_signature: ImmutableBitSet.of(int... bits)
focal_class.full_signature: public static ImmutableBitSet of(int... bits)
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: (int... bits)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet of(int... bits)
focal_class.class_method_signature: ImmutableBitSet.of(Iterable<Integer>  bits)
focal_class.full_signature: public static ImmutableBitSet of(Iterable<Integer>  bits)
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: (Iterable<Integer>  bits)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet of(Iterable<Integer>  bits)
focal_class.class_method_signature: ImmutableBitSet.of(ImmutableIntList bits)
focal_class.full_signature: public static ImmutableBitSet of(ImmutableIntList bits)
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: (ImmutableIntList bits)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet of(ImmutableIntList bits)
focal_class.class_method_signature: ImmutableBitSet.valueOf(long... longs)
focal_class.full_signature: public static ImmutableBitSet valueOf(long... longs)
focal_class.identifier: valueOf
focal_class.modifiers: public static
focal_class.parameters: (long... longs)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet valueOf(long... longs)
focal_class.class_method_signature: ImmutableBitSet.valueOf(LongBuffer longs)
focal_class.full_signature: public static ImmutableBitSet valueOf(LongBuffer longs)
focal_class.identifier: valueOf
focal_class.modifiers: public static
focal_class.parameters: (LongBuffer longs)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet valueOf(LongBuffer longs)
focal_class.class_method_signature: ImmutableBitSet.fromBitSet(BitSet input)
focal_class.full_signature: public static ImmutableBitSet fromBitSet(BitSet input)
focal_class.identifier: fromBitSet
focal_class.modifiers: public static
focal_class.parameters: (BitSet input)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet fromBitSet(BitSet input)
focal_class.class_method_signature: ImmutableBitSet.range(int fromIndex, int toIndex)
focal_class.full_signature: public static ImmutableBitSet range(int fromIndex, int toIndex)
focal_class.identifier: range
focal_class.modifiers: public static
focal_class.parameters: (int fromIndex, int toIndex)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet range(int fromIndex, int toIndex)
focal_class.class_method_signature: ImmutableBitSet.range(int toIndex)
focal_class.full_signature: public static ImmutableBitSet range(int toIndex)
focal_class.identifier: range
focal_class.modifiers: public static
focal_class.parameters: (int toIndex)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet range(int toIndex)
focal_class.class_method_signature: ImmutableBitSet.wordIndex(int bitIndex)
focal_class.full_signature: private static int wordIndex(int bitIndex)
focal_class.identifier: wordIndex
focal_class.modifiers: private static
focal_class.parameters: (int bitIndex)
focal_class.return: int
focal_class.signature: int wordIndex(int bitIndex)
focal_class.class_method_signature: ImmutableBitSet.powerSet()
focal_class.full_signature: public Iterable<ImmutableBitSet> powerSet()
focal_class.identifier: powerSet
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Iterable<ImmutableBitSet>
focal_class.signature: Iterable<ImmutableBitSet> powerSet()
focal_class.class_method_signature: ImmutableBitSet.get(int bitIndex)
focal_class.full_signature: public boolean get(int bitIndex)
focal_class.identifier: get
focal_class.modifiers: public
focal_class.parameters: (int bitIndex)
focal_class.return: boolean
focal_class.signature: boolean get(int bitIndex)
focal_class.class_method_signature: ImmutableBitSet.get(int fromIndex, int toIndex)
focal_class.full_signature: public ImmutableBitSet get(int fromIndex, int toIndex)
focal_class.identifier: get
focal_class.modifiers: public
focal_class.parameters: (int fromIndex, int toIndex)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet get(int fromIndex, int toIndex)
focal_class.class_method_signature: ImmutableBitSet.checkRange(int fromIndex, int toIndex)
focal_class.full_signature: private static void checkRange(int fromIndex, int toIndex)
focal_class.identifier: checkRange
focal_class.modifiers: private static
focal_class.parameters: (int fromIndex, int toIndex)
focal_class.return: void
focal_class.signature: void checkRange(int fromIndex, int toIndex)
focal_class.class_method_signature: ImmutableBitSet.toString()
focal_class.full_signature: public String toString()
focal_class.identifier: toString
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: ImmutableBitSet.intersects(ImmutableBitSet set)
focal_class.full_signature: public boolean intersects(ImmutableBitSet set)
focal_class.identifier: intersects
focal_class.modifiers: public
focal_class.parameters: (ImmutableBitSet set)
focal_class.return: boolean
focal_class.signature: boolean intersects(ImmutableBitSet set)
focal_class.class_method_signature: ImmutableBitSet.cardinality()
focal_class.full_signature: public int cardinality()
focal_class.identifier: cardinality
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int cardinality()
focal_class.class_method_signature: ImmutableBitSet.countBits(long[] words)
focal_class.full_signature: private static int countBits(long[] words)
focal_class.identifier: countBits
focal_class.modifiers: private static
focal_class.parameters: (long[] words)
focal_class.return: int
focal_class.signature: int countBits(long[] words)
focal_class.class_method_signature: ImmutableBitSet.hashCode()
focal_class.full_signature: public int hashCode()
focal_class.identifier: hashCode
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int hashCode()
focal_class.class_method_signature: ImmutableBitSet.size()
focal_class.full_signature: public int size()
focal_class.identifier: size
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int size()
focal_class.class_method_signature: ImmutableBitSet.equals(Object obj)
focal_class.full_signature: public boolean equals(Object obj)
focal_class.identifier: equals
focal_class.modifiers: public
focal_class.parameters: (Object obj)
focal_class.return: boolean
focal_class.signature: boolean equals(Object obj)
focal_class.class_method_signature: ImmutableBitSet.compareTo(@Nonnull ImmutableBitSet o)
focal_class.full_signature: public int compareTo(@Nonnull ImmutableBitSet o)
focal_class.identifier: compareTo
focal_class.modifiers: public
focal_class.parameters: (@Nonnull ImmutableBitSet o)
focal_class.return: int
focal_class.signature: int compareTo(@Nonnull ImmutableBitSet o)
focal_class.class_method_signature: ImmutableBitSet.nextSetBit(int fromIndex)
focal_class.full_signature: public int nextSetBit(int fromIndex)
focal_class.identifier: nextSetBit
focal_class.modifiers: public
focal_class.parameters: (int fromIndex)
focal_class.return: int
focal_class.signature: int nextSetBit(int fromIndex)
focal_class.class_method_signature: ImmutableBitSet.nextClearBit(int fromIndex)
focal_class.full_signature: public int nextClearBit(int fromIndex)
focal_class.identifier: nextClearBit
focal_class.modifiers: public
focal_class.parameters: (int fromIndex)
focal_class.return: int
focal_class.signature: int nextClearBit(int fromIndex)
focal_class.class_method_signature: ImmutableBitSet.previousClearBit(int fromIndex)
focal_class.full_signature: public int previousClearBit(int fromIndex)
focal_class.identifier: previousClearBit
focal_class.modifiers: public
focal_class.parameters: (int fromIndex)
focal_class.return: int
focal_class.signature: int previousClearBit(int fromIndex)
focal_class.class_method_signature: ImmutableBitSet.iterator()
focal_class.full_signature: public Iterator<Integer> iterator()
focal_class.identifier: iterator
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Iterator<Integer>
focal_class.signature: Iterator<Integer> iterator()
focal_class.class_method_signature: ImmutableBitSet.toList()
focal_class.full_signature: public List<Integer> toList()
focal_class.identifier: toList
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: List<Integer>
focal_class.signature: List<Integer> toList()
focal_class.class_method_signature: ImmutableBitSet.asList()
focal_class.full_signature: public List<Integer> asList()
focal_class.identifier: asList
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: List<Integer>
focal_class.signature: List<Integer> asList()
focal_class.class_method_signature: ImmutableBitSet.asSet()
focal_class.full_signature: public Set<Integer> asSet()
focal_class.identifier: asSet
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Set<Integer>
focal_class.signature: Set<Integer> asSet()
focal_class.class_method_signature: ImmutableBitSet.toArray()
focal_class.full_signature: public int[] toArray()
focal_class.identifier: toArray
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int[]
focal_class.signature: int[] toArray()
focal_class.class_method_signature: ImmutableBitSet.toLongArray()
focal_class.full_signature: public long[] toLongArray()
focal_class.identifier: toLongArray
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: long[]
focal_class.signature: long[] toLongArray()
focal_class.class_method_signature: ImmutableBitSet.union(BitSet other)
focal_class.full_signature: public ImmutableBitSet union(BitSet other)
focal_class.identifier: union
focal_class.modifiers: public
focal_class.parameters: (BitSet other)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet union(BitSet other)
focal_class.class_method_signature: ImmutableBitSet.union(ImmutableBitSet other)
focal_class.full_signature: public ImmutableBitSet union(ImmutableBitSet other)
focal_class.identifier: union
focal_class.modifiers: public
focal_class.parameters: (ImmutableBitSet other)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet union(ImmutableBitSet other)
focal_class.class_method_signature: ImmutableBitSet.union(
        Iterable<? extends ImmutableBitSet> sets)
focal_class.full_signature: public static ImmutableBitSet union(
        Iterable<? extends ImmutableBitSet> sets)
focal_class.identifier: union
focal_class.modifiers: public static
focal_class.parameters: (
        Iterable<? extends ImmutableBitSet> sets)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet union(
        Iterable<? extends ImmutableBitSet> sets)
focal_class.class_method_signature: ImmutableBitSet.except(ImmutableBitSet that)
focal_class.full_signature: public ImmutableBitSet except(ImmutableBitSet that)
focal_class.identifier: except
focal_class.modifiers: public
focal_class.parameters: (ImmutableBitSet that)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet except(ImmutableBitSet that)
focal_class.class_method_signature: ImmutableBitSet.intersect(ImmutableBitSet that)
focal_class.full_signature: public ImmutableBitSet intersect(ImmutableBitSet that)
focal_class.identifier: intersect
focal_class.modifiers: public
focal_class.parameters: (ImmutableBitSet that)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet intersect(ImmutableBitSet that)
focal_class.class_method_signature: ImmutableBitSet.contains(ImmutableBitSet set1)
focal_class.full_signature: public boolean contains(ImmutableBitSet set1)
focal_class.identifier: contains
focal_class.modifiers: public
focal_class.parameters: (ImmutableBitSet set1)
focal_class.return: boolean
focal_class.signature: boolean contains(ImmutableBitSet set1)
focal_class.class_method_signature: ImmutableBitSet.indexOf(int bit)
focal_class.full_signature: public int indexOf(int bit)
focal_class.identifier: indexOf
focal_class.modifiers: public
focal_class.parameters: (int bit)
focal_class.return: int
focal_class.signature: int indexOf(int bit)
focal_class.class_method_signature: ImmutableBitSet.closure(
        SortedMap<Integer, ImmutableBitSet> equivalence)
focal_class.full_signature: public static SortedMap<Integer, ImmutableBitSet> closure(
        SortedMap<Integer, ImmutableBitSet> equivalence)
focal_class.identifier: closure
focal_class.modifiers: public static
focal_class.parameters: (
        SortedMap<Integer, ImmutableBitSet> equivalence)
focal_class.return: SortedMap<Integer, ImmutableBitSet>
focal_class.signature: SortedMap<Integer, ImmutableBitSet> closure(
        SortedMap<Integer, ImmutableBitSet> equivalence)
focal_class.class_method_signature: ImmutableBitSet.length()
focal_class.full_signature: public int length()
focal_class.identifier: length
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int length()
focal_class.class_method_signature: ImmutableBitSet.isEmpty()
focal_class.full_signature: public boolean isEmpty()
focal_class.identifier: isEmpty
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isEmpty()
focal_class.class_method_signature: ImmutableBitSet.builder()
focal_class.full_signature: public static Builder builder()
focal_class.identifier: builder
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: Builder
focal_class.signature: Builder builder()
focal_class.class_method_signature: ImmutableBitSet.builder(ImmutableBitSet bitSet)
focal_class.full_signature: @Deprecated // to be removed before 2.0 public static Builder builder(ImmutableBitSet bitSet)
focal_class.identifier: builder
focal_class.modifiers: @Deprecated // to be removed before 2.0 public static
focal_class.parameters: (ImmutableBitSet bitSet)
focal_class.return: Builder
focal_class.signature: Builder builder(ImmutableBitSet bitSet)
focal_class.class_method_signature: ImmutableBitSet.rebuild()
focal_class.full_signature: public Builder rebuild()
focal_class.identifier: rebuild
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Builder
focal_class.signature: Builder rebuild()
focal_class.class_method_signature: ImmutableBitSet.nth(int n)
focal_class.full_signature: public int nth(int n)
focal_class.identifier: nth
focal_class.modifiers: public
focal_class.parameters: (int n)
focal_class.return: int
focal_class.signature: int nth(int n)
focal_class.class_method_signature: ImmutableBitSet.set(int i)
focal_class.full_signature: public ImmutableBitSet set(int i)
focal_class.identifier: set
focal_class.modifiers: public
focal_class.parameters: (int i)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet set(int i)
focal_class.class_method_signature: ImmutableBitSet.set(int i, boolean b)
focal_class.full_signature: public ImmutableBitSet set(int i, boolean b)
focal_class.identifier: set
focal_class.modifiers: public
focal_class.parameters: (int i, boolean b)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet set(int i, boolean b)
focal_class.class_method_signature: ImmutableBitSet.setIf(int bit, boolean condition)
focal_class.full_signature: public ImmutableBitSet setIf(int bit, boolean condition)
focal_class.identifier: setIf
focal_class.modifiers: public
focal_class.parameters: (int bit, boolean condition)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet setIf(int bit, boolean condition)
focal_class.class_method_signature: ImmutableBitSet.clear(int i)
focal_class.full_signature: public ImmutableBitSet clear(int i)
focal_class.identifier: clear
focal_class.modifiers: public
focal_class.parameters: (int i)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet clear(int i)
focal_class.class_method_signature: ImmutableBitSet.clearIf(int i, boolean condition)
focal_class.full_signature: public ImmutableBitSet clearIf(int i, boolean condition)
focal_class.identifier: clearIf
focal_class.modifiers: public
focal_class.parameters: (int i, boolean condition)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet clearIf(int i, boolean condition)
focal_class.class_method_signature: ImmutableBitSet.toBitSet()
focal_class.full_signature: public BitSet toBitSet()
focal_class.identifier: toBitSet
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: BitSet
focal_class.signature: BitSet toBitSet()
focal_class.class_method_signature: ImmutableBitSet.permute(Map<Integer, Integer> map)
focal_class.full_signature: public ImmutableBitSet permute(Map<Integer, Integer> map)
focal_class.identifier: permute
focal_class.modifiers: public
focal_class.parameters: (Map<Integer, Integer> map)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet permute(Map<Integer, Integer> map)
focal_class.class_method_signature: ImmutableBitSet.permute(
        Iterable<ImmutableBitSet> bitSets,
        final Map<Integer, Integer> map)
focal_class.full_signature: public static Iterable<ImmutableBitSet> permute(
        Iterable<ImmutableBitSet> bitSets,
        final Map<Integer, Integer> map)
focal_class.identifier: permute
focal_class.modifiers: public static
focal_class.parameters: (
        Iterable<ImmutableBitSet> bitSets,
        final Map<Integer, Integer> map)
focal_class.return: Iterable<ImmutableBitSet>
focal_class.signature: Iterable<ImmutableBitSet> permute(
        Iterable<ImmutableBitSet> bitSets,
        final Map<Integer, Integer> map)
focal_class.class_method_signature: ImmutableBitSet.shift(int offset)
focal_class.full_signature: public ImmutableBitSet shift(int offset)
focal_class.identifier: shift
focal_class.modifiers: public
focal_class.parameters: (int offset)
focal_class.return: ImmutableBitSet
focal_class.signature: ImmutableBitSet shift(int offset)
focal_method.body: public Iterable<ImmutableBitSet> powerSet() {
      List<List<ImmutableBitSet>> singletons = new ArrayList<>();
      for (int bit : this) {
        singletons.add(
            ImmutableList.of(ImmutableBitSet.of(), ImmutableBitSet.of(bit)));
      }
      return Iterables.transform(Linq4j.product(singletons),
          ImmutableBitSet::union);
    }
focal_method.class_method_signature: ImmutableBitSet.powerSet()
focal_method.full_signature: public Iterable<ImmutableBitSet> powerSet()
focal_method.identifier: powerSet
focal_method.invocations: add of of of transform product
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: Iterable<ImmutableBitSet>
focal_method.signature: Iterable<ImmutableBitSet> powerSet()