test_class.file: tool/hash/src/test/java/org/openscience/cdk/hash/AbstractHashGeneratorTest.java
test_class.identifier: AbstractHashGeneratorTest
test_case.body: @Test
      public void testToAdjList() {
          // already tests in ShortestPaths... this method be moved once all
          // pending patches are merged
      }
test_case.class_method_signature: AbstractHashGeneratorTest.testToAdjList()
test_case.full_signature: @Test public void testToAdjList()
test_case.identifier: testToAdjList
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testToAdjList()
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[][] toAdjList(IAtomContainer container) {
  
          if (container == null) throw new IllegalArgumentException("atom container was null");
  
          int n = container.getAtomCount();
  
          int[][] graph = new int[n][16];
          int[] degree = new int[n];
  
          for (IBond bond : container.bonds()) {
  
              int v = container.indexOf(bond.getBegin());
              int w = container.indexOf(bond.getEnd());
  
              if (v < 0 || w < 0)
                  throw new IllegalArgumentException("bond at index " + container.indexOf(bond)
                          + " contained an atom not pressent in molecule");
  
              graph[v][degree[v]++] = w;
              graph[w][degree[w]++] = v;
  
              // if the vertex degree of v or w reaches capacity, double the size
              if (degree[v] == graph[v].length) graph[v] = Arrays.copyOf(graph[v], degree[v] * 2);
              if (degree[w] == graph[w].length) graph[w] = Arrays.copyOf(graph[w], degree[w] * 2);
          }
  
          for (int v = 0; v < n; v++) {
              graph[v] = Arrays.copyOf(graph[v], degree[v]);
          }
  
          return graph;
  
      }
focal_method.class_method_signature: AbstractHashGenerator.toAdjList(IAtomContainer container)
focal_method.full_signature: static int[][] toAdjList(IAtomContainer container)
focal_method.identifier: toAdjList
focal_method.invocations: getAtomCount bonds indexOf getBegin indexOf getEnd indexOf copyOf copyOf copyOf
focal_method.modifiers: static
focal_method.parameters: (IAtomContainer container)
focal_method.return: int[][]
focal_method.signature: int[][] toAdjList(IAtomContainer container)