From: Adam Megacz Date: Thu, 16 Jul 2009 18:23:38 +0000 (-0700) Subject: add edu.berkeley.fleet.util.BitMask X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=fd48f9a96ae8c6fbcf657a1e061cd234795615fb;p=fleet.git add edu.berkeley.fleet.util.BitMask --- diff --git a/src/edu/berkeley/fleet/util/BitMask.java b/src/edu/berkeley/fleet/util/BitMask.java new file mode 100644 index 0000000..e607b07 --- /dev/null +++ b/src/edu/berkeley/fleet/util/BitMask.java @@ -0,0 +1,30 @@ +package edu.berkeley.fleet.util; +import edu.berkeley.fleet.api.*; +import edu.berkeley.fleet.*; +import java.io.*; + +/** A bit mask assigns 1, 0, or dont-care to each bit position */ +public class BitMask { + + public final BitVector ones; + public final BitVector zeroes; + + public BitMask(BitVector ones, BitVector zeroes) { + if (ones.length() != zeroes.length()) + throw new RuntimeException("attempt to invoke BitMask with different-size "+ + "BitVectors: ones="+ones+", zeroes="+zeroes); + ones.setImmutable(); + zeroes.setImmutable(); + this.ones = ones; + this.zeroes = zeroes; + } + + public BitVector apply(BitVector bv) { + throw new RuntimeException("not implemented"); + } + + public boolean test(BitVector bv) { + throw new RuntimeException("not implemented"); + } + +}