test_class.file: tool/hash/src/test/java/org/openscience/cdk/hash/AbstractHashGeneratorTest.java
test_class.identifier: AbstractHashGeneratorTest
test_case.body: @Test
      public void testLowestThreeBits() throws Exception {
          assertThat(AbstractHashGenerator.lowestThreeBits(0L), is(0));
          assertThat(AbstractHashGenerator.lowestThreeBits(1L), is(1));
          assertThat(AbstractHashGenerator.lowestThreeBits(2L), is(2));
          assertThat(AbstractHashGenerator.lowestThreeBits(3L), is(3));
          assertThat(AbstractHashGenerator.lowestThreeBits(4L), is(4));
          assertThat(AbstractHashGenerator.lowestThreeBits(5L), is(5));
          assertThat(AbstractHashGenerator.lowestThreeBits(6L), is(6));
          assertThat(AbstractHashGenerator.lowestThreeBits(7L), is(7));
  
          // check we don't exceed 7
          assertThat(AbstractHashGenerator.lowestThreeBits(8L), is(0));
          assertThat(AbstractHashGenerator.lowestThreeBits(9L), is(1));
          assertThat(AbstractHashGenerator.lowestThreeBits(10L), is(2));
          assertThat(AbstractHashGenerator.lowestThreeBits(11L), is(3));
          assertThat(AbstractHashGenerator.lowestThreeBits(12L), is(4));
          assertThat(AbstractHashGenerator.lowestThreeBits(13L), is(5));
          assertThat(AbstractHashGenerator.lowestThreeBits(14L), is(6));
          assertThat(AbstractHashGenerator.lowestThreeBits(15L), is(7));
          assertThat(AbstractHashGenerator.lowestThreeBits(16L), is(0));
  
          // max/min numbers
          assertThat(AbstractHashGenerator.lowestThreeBits(Long.MAX_VALUE), is(7));
          assertThat(AbstractHashGenerator.lowestThreeBits(Long.MIN_VALUE), is(0));
      }
test_case.class_method_signature: AbstractHashGeneratorTest.testLowestThreeBits()
test_case.full_signature: @Test public void testLowestThreeBits()
test_case.identifier: testLowestThreeBits
test_case.invocations: assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is assertThat lowestThreeBits is
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testLowestThreeBits()
focal_class.declarator: pseudorandom
focal_class.modifier: private final
focal_class.original_string: private final Pseudorandom pseudorandom;
focal_class.type: Pseudorandom
focal_class.var_name: pseudorandom
focal_class.file: tool/hash/src/main/java/org/openscience/cdk/hash/AbstractHashGenerator.java
focal_class.identifier: AbstractHashGenerator
focal_class.class_method_signature: AbstractHashGenerator.AbstractHashGenerator(Pseudorandom pseudorandom)
focal_class.full_signature: public  AbstractHashGenerator(Pseudorandom pseudorandom)
focal_class.identifier: AbstractHashGenerator
focal_class.modifiers: public
focal_class.parameters: (Pseudorandom pseudorandom)
focal_class.signature:  AbstractHashGenerator(Pseudorandom pseudorandom)
focal_class.class_method_signature: AbstractHashGenerator.copy(long[] src)
focal_class.full_signature: static long[] copy(long[] src)
focal_class.identifier: copy
focal_class.modifiers: static
focal_class.parameters: (long[] src)
focal_class.return: long[]
focal_class.signature: long[] copy(long[] src)
focal_class.class_method_signature: AbstractHashGenerator.copy(long[] src, long[] dest)
focal_class.full_signature: static void copy(long[] src, long[] dest)
focal_class.identifier: copy
focal_class.modifiers: static
focal_class.parameters: (long[] src, long[] dest)
focal_class.return: void
focal_class.signature: void copy(long[] src, long[] dest)
focal_class.class_method_signature: AbstractHashGenerator.rotate(long seed)
focal_class.full_signature:  long rotate(long seed)
focal_class.identifier: rotate
focal_class.parameters: (long seed)
focal_class.return: long
focal_class.signature: long rotate(long seed)
focal_class.class_method_signature: AbstractHashGenerator.rotate(long value, int n)
focal_class.full_signature:  long rotate(long value, int n)
focal_class.identifier: rotate
focal_class.parameters: (long value, int n)
focal_class.return: long
focal_class.signature: long rotate(long value, int n)
focal_class.class_method_signature: AbstractHashGenerator.lowestThreeBits(long value)
focal_class.full_signature: static int lowestThreeBits(long value)
focal_class.identifier: lowestThreeBits
focal_class.modifiers: static
focal_class.parameters: (long value)
focal_class.return: int
focal_class.signature: int lowestThreeBits(long value)
focal_class.class_method_signature: AbstractHashGenerator.distribute(long value)
focal_class.full_signature:  long distribute(long value)
focal_class.identifier: distribute
focal_class.parameters: (long value)
focal_class.return: long
focal_class.signature: long distribute(long value)
focal_class.class_method_signature: AbstractHashGenerator.toAdjList(IAtomContainer container)
focal_class.full_signature: static int[][] toAdjList(IAtomContainer container)
focal_class.identifier: toAdjList
focal_class.modifiers: static
focal_class.parameters: (IAtomContainer container)
focal_class.return: int[][]
focal_class.signature: int[][] toAdjList(IAtomContainer container)
focal_method.body: static int lowestThreeBits(long value) {
          return (int) (value & 0x7);
      }
focal_method.class_method_signature: AbstractHashGenerator.lowestThreeBits(long value)
focal_method.full_signature: static int lowestThreeBits(long value)
focal_method.identifier: lowestThreeBits
focal_method.modifiers: static
focal_method.parameters: (long value)
focal_method.return: int
focal_method.signature: int lowestThreeBits(long value)