final void add(BlockSet bs) { add(bs, false); }
final void add(BlockSet bs) { add(bs, false); }
private static int addImpl(BlockSet bs1, BlockSet bs2, boolean inv) { int s = 0; if (!bs1.isLarge && !bs2.isLarge && !inv) { if (bs2.block0 != null) { IntBitSet bits = bs1.block0; if (bits == null) bs1.block0 = bits = new IntBitSet(BLOCK_SIZE); s += add(bits, bs2.block0, 0, BLOCK_SIZE - 1, false); } } else { if (!bs1.isLarge) bs1.enableLargeMode(); if (!bs2.isLarge) bs2.enableLargeMode(); s += Block.add(bs1.blocks, bs2.blocks, 0, BLOCK_COUNT - 1, inv); } return s; }
private static int addImpl(BlockSet bs1, BlockSet bs2, boolean inv) { int s = 0; if (!bs1.isLarge && !bs2.isLarge && !inv) { if (bs2.block0 != null) { IntBitSet bits = bs1.block0; if (bits == null) bs1.block0 = bits = new IntBitSet(); s += add(bits, bs2.block0, 0, BLOCK_SIZE - 1, false); } } else { if (!bs1.isLarge) bs1.enableLargeMode(); if (!bs2.isLarge) bs2.enableLargeMode(); s += Block.add(bs1.blocks, bs2.blocks, 0, BLOCK_COUNT - 1, inv); } return s; }
registerClass("ASCII", ascii, posixClasses); BlockSet alpha = new BlockSet(); alpha.add(lower); alpha.add(upper); registerClass("Alpha", alpha, posixClasses); BlockSet digit = new BlockSet(); registerClass("Digit", digit, posixClasses); BlockSet alnum = new BlockSet(); alnum.add(alpha); alnum.add(digit); registerClass("Alnum", alnum, posixClasses); BlockSet punct = new BlockSet(); registerClass("Punct", punct, posixClasses); BlockSet graph = new BlockSet(); graph.add(alnum); graph.add(punct); registerClass("Graph", graph, posixClasses); registerClass("Print", graph, posixClasses);
registerClass("ASCII", ascii, posixClasses); BlockSet alpha = new BlockSet(); alpha.add(lower); alpha.add(upper); registerClass("Alpha", alpha, posixClasses); BlockSet digit = new BlockSet(); registerClass("Digit", digit, posixClasses); BlockSet alnum = new BlockSet(); alnum.add(alpha); alnum.add(digit); registerClass("Alnum", alnum, posixClasses); BlockSet punct = new BlockSet(); registerClass("Punct", punct, posixClasses); BlockSet graph = new BlockSet(); graph.add(alnum); graph.add(punct); registerClass("Graph", graph, posixClasses); registerClass("Print", graph, posixClasses);
switch (mode) { case ADD: sum.add(bs); break; case SUBTRACT:
switch (mode) { case ADD: sum.add(bs); break; case SUBTRACT: