test_class.file: core/src/test/java/dk/alexandra/fresco/framework/util/TestStrictBitVector.java
test_class.identifier: TestStrictBitVector
test_case.body: @Test
    public void testConcatDifferentSizeBitVectors() {
      byte[] bitsOne = { (byte) 0xFF, (byte) 0x01, (byte) 0x00 };
      StrictBitVector bvOne = new StrictBitVector(bitsOne);
  
      byte[] bitsTwo = { (byte) 0x01, (byte) 0x02 };
      StrictBitVector bvTwo = new StrictBitVector(bitsTwo);
  
      StrictBitVector actual = StrictBitVector.concat(bvOne, bvTwo);
  
      byte[] expectedBits = { (byte) 0xFF, (byte) 0x01, (byte) 0x00, (byte) 0x01, (byte) 0x02 };
      StrictBitVector expected = new StrictBitVector(expectedBits);
      assertEquals(expected, actual);
    }
test_case.class_method_signature: TestStrictBitVector.testConcatDifferentSizeBitVectors()
test_case.full_signature: @Test public void testConcatDifferentSizeBitVectors()
test_case.identifier: testConcatDifferentSizeBitVectors
test_case.invocations: concat assertEquals
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testConcatDifferentSizeBitVectors()
focal_class.declarator: bits
focal_class.modifier: private
focal_class.original_string: private byte[] bits;
focal_class.type: byte[]
focal_class.var_name: bits
focal_class.declarator: size
focal_class.modifier: private final
focal_class.original_string: private final int size;
focal_class.type: int
focal_class.var_name: size
focal_class.file: core/src/main/java/dk/alexandra/fresco/framework/util/StrictBitVector.java
focal_class.identifier: StrictBitVector
focal_class.interfaces: implements BitVector
focal_class.class_method_signature: StrictBitVector.StrictBitVector(byte[] bits)
focal_class.full_signature: public  StrictBitVector(byte[] bits)
focal_class.identifier: StrictBitVector
focal_class.modifiers: public
focal_class.parameters: (byte[] bits)
focal_class.signature:  StrictBitVector(byte[] bits)
focal_class.class_method_signature: StrictBitVector.StrictBitVector(int size)
focal_class.full_signature: public  StrictBitVector(int size)
focal_class.identifier: StrictBitVector
focal_class.modifiers: public
focal_class.parameters: (int size)
focal_class.signature:  StrictBitVector(int size)
focal_class.class_method_signature: StrictBitVector.StrictBitVector(int size, Drbg rand)
focal_class.full_signature: public  StrictBitVector(int size, Drbg rand)
focal_class.identifier: StrictBitVector
focal_class.modifiers: public
focal_class.parameters: (int size, Drbg rand)
focal_class.signature:  StrictBitVector(int size, Drbg rand)
focal_class.class_method_signature: StrictBitVector.getBit(int index, boolean isBigEndian)
focal_class.full_signature: public boolean getBit(int index, boolean isBigEndian)
focal_class.identifier: getBit
focal_class.modifiers: public
focal_class.parameters: (int index, boolean isBigEndian)
focal_class.return: boolean
focal_class.signature: boolean getBit(int index, boolean isBigEndian)
focal_class.class_method_signature: StrictBitVector.getBit(int bit)
focal_class.full_signature: @Override public boolean getBit(int bit)
focal_class.identifier: getBit
focal_class.modifiers: @Override public
focal_class.parameters: (int bit)
focal_class.return: boolean
focal_class.signature: boolean getBit(int bit)
focal_class.class_method_signature: StrictBitVector.setBit(int index, boolean value, boolean isBigEndian)
focal_class.full_signature: public void setBit(int index, boolean value, boolean isBigEndian)
focal_class.identifier: setBit
focal_class.modifiers: public
focal_class.parameters: (int index, boolean value, boolean isBigEndian)
focal_class.return: void
focal_class.signature: void setBit(int index, boolean value, boolean isBigEndian)
focal_class.class_method_signature: StrictBitVector.setBit(int index, boolean value)
focal_class.full_signature: @Override public void setBit(int index, boolean value)
focal_class.identifier: setBit
focal_class.modifiers: @Override public
focal_class.parameters: (int index, boolean value)
focal_class.return: void
focal_class.signature: void setBit(int index, boolean value)
focal_class.class_method_signature: StrictBitVector.getSize()
focal_class.full_signature: @Override public int getSize()
focal_class.identifier: getSize
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getSize()
focal_class.class_method_signature: StrictBitVector.toByteArray()
focal_class.full_signature: @Override public byte[] toByteArray()
focal_class.identifier: toByteArray
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray()
focal_class.class_method_signature: StrictBitVector.asBinaryString()
focal_class.full_signature: public String asBinaryString()
focal_class.identifier: asBinaryString
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String asBinaryString()
focal_class.class_method_signature: StrictBitVector.xor(BitVector other)
focal_class.full_signature: @Override public void xor(BitVector other)
focal_class.identifier: xor
focal_class.modifiers: @Override public
focal_class.parameters: (BitVector other)
focal_class.return: void
focal_class.signature: void xor(BitVector other)
focal_class.class_method_signature: StrictBitVector.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: StrictBitVector.hashCode()
focal_class.full_signature: @Override public int hashCode()
focal_class.identifier: hashCode
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int hashCode()
focal_class.class_method_signature: StrictBitVector.equals(Object obj)
focal_class.full_signature: @Override public boolean equals(Object obj)
focal_class.identifier: equals
focal_class.modifiers: @Override public
focal_class.parameters: (Object obj)
focal_class.return: boolean
focal_class.signature: boolean equals(Object obj)
focal_class.class_method_signature: StrictBitVector.concat(StrictBitVector... bitVectors)
focal_class.full_signature: public static StrictBitVector concat(StrictBitVector... bitVectors)
focal_class.identifier: concat
focal_class.modifiers: public static
focal_class.parameters: (StrictBitVector... bitVectors)
focal_class.return: StrictBitVector
focal_class.signature: StrictBitVector concat(StrictBitVector... bitVectors)
focal_class.class_method_signature: StrictBitVector.rangeCheck(int bit)
focal_class.full_signature: private void rangeCheck(int bit)
focal_class.identifier: rangeCheck
focal_class.modifiers: private
focal_class.parameters: (int bit)
focal_class.return: void
focal_class.signature: void rangeCheck(int bit)
focal_method.body: public static StrictBitVector concat(StrictBitVector... bitVectors) {
      // compute length of result byte array and number of bits
      int combinedBitLength = 0;
      for (StrictBitVector bitVector : bitVectors) {
        combinedBitLength += bitVector.getSize();
      }
      byte[] combined = new byte[combinedBitLength / 8];
      int offset = 0;
      for (StrictBitVector bitVector : bitVectors) {
        byte[] rawBytes = bitVector.toByteArray();
        System.arraycopy(rawBytes, 0, combined, offset, rawBytes.length);
        offset += rawBytes.length;
      }
      return new StrictBitVector(combined);
    }
focal_method.class_method_signature: StrictBitVector.concat(StrictBitVector... bitVectors)
focal_method.full_signature: public static StrictBitVector concat(StrictBitVector... bitVectors)
focal_method.identifier: concat
focal_method.invocations: getSize toByteArray arraycopy
focal_method.modifiers: public static
focal_method.parameters: (StrictBitVector... bitVectors)
focal_method.return: StrictBitVector
focal_method.signature: StrictBitVector concat(StrictBitVector... bitVectors)