test_class.file: base/isomorphism/src/test/java/org/openscience/cdk/isomorphism/UllmannStateTest.java
test_class.identifier: UllmannStateTest
test_case.body: @Test
      public void testNextM() throws Exception {
          UllmannState state = createBenzeneToNaphthalene(AtomMatcher.forAny(), BondMatcher.forAny());
          assertThat(state.nextM(0, -1), is(0));
          assertThat(state.nextM(0, 0), is(1));
          assertThat(state.nextM(0, 1), is(2));
          state.m2[1] = 0; // 1 has been mapped and should be skipped over
          assertThat(state.nextM(0, 0), is(2));
      }
test_case.class_method_signature: UllmannStateTest.testNextM()
test_case.full_signature: @Test public void testNextM()
test_case.identifier: testNextM
test_case.invocations: createBenzeneToNaphthalene forAny forAny assertThat nextM is assertThat nextM is assertThat nextM is assertThat nextM is
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testNextM()
focal_class.declarator: g1
focal_class.modifier: final
focal_class.original_string: final int[][]               g1, g2;
focal_class.type: int[][]
focal_class.var_name: g1
focal_class.declarator: bond1
focal_class.modifier: private final
focal_class.original_string: private final EdgeToBondMap bond1, bonds2;
focal_class.type: EdgeToBondMap
focal_class.var_name: bond1
focal_class.declarator: matrix
focal_class.modifier: final
focal_class.original_string: final CompatibilityMatrix   matrix;
focal_class.type: CompatibilityMatrix
focal_class.var_name: matrix
focal_class.declarator: m1
focal_class.modifier: final
focal_class.original_string: final int[]                 m1, m2;
focal_class.type: int[]
focal_class.var_name: m1
focal_class.declarator: size     = 0
focal_class.original_string: int                         size     = 0;
focal_class.type: int
focal_class.var_name: size
focal_class.declarator: bondMatcher
focal_class.modifier: private final
focal_class.original_string: private final BondMatcher   bondMatcher;
focal_class.type: BondMatcher
focal_class.var_name: bondMatcher
focal_class.declarator: UNMAPPED = -1
focal_class.modifier: private static
focal_class.original_string: private static int          UNMAPPED = -1;
focal_class.type: int
focal_class.var_name: UNMAPPED
focal_class.file: base/isomorphism/src/main/java/org/openscience/cdk/isomorphism/UllmannState.java
focal_class.identifier: UllmannState
focal_class.class_method_signature: UllmannState.UllmannState(IAtomContainer container1, IAtomContainer container2, int[][] g1, int[][] g2,
              EdgeToBondMap bonds1, EdgeToBondMap bonds2, AtomMatcher atomMatcher, BondMatcher bondMatcher)
focal_class.full_signature: public  UllmannState(IAtomContainer container1, IAtomContainer container2, int[][] g1, int[][] g2,
              EdgeToBondMap bonds1, EdgeToBondMap bonds2, AtomMatcher atomMatcher, BondMatcher bondMatcher)
focal_class.identifier: UllmannState
focal_class.modifiers: public
focal_class.parameters: (IAtomContainer container1, IAtomContainer container2, int[][] g1, int[][] g2,
              EdgeToBondMap bonds1, EdgeToBondMap bonds2, AtomMatcher atomMatcher, BondMatcher bondMatcher)
focal_class.signature:  UllmannState(IAtomContainer container1, IAtomContainer container2, int[][] g1, int[][] g2,
              EdgeToBondMap bonds1, EdgeToBondMap bonds2, AtomMatcher atomMatcher, BondMatcher bondMatcher)
focal_class.class_method_signature: UllmannState.nextN(int n)
focal_class.full_signature: @Override int nextN(int n)
focal_class.identifier: nextN
focal_class.modifiers: @Override
focal_class.parameters: (int n)
focal_class.return: int
focal_class.signature: int nextN(int n)
focal_class.class_method_signature: UllmannState.nextM(int n, int m)
focal_class.full_signature: @Override int nextM(int n, int m)
focal_class.identifier: nextM
focal_class.modifiers: @Override
focal_class.parameters: (int n, int m)
focal_class.return: int
focal_class.signature: int nextM(int n, int m)
focal_class.class_method_signature: UllmannState.nMax()
focal_class.full_signature: @Override int nMax()
focal_class.identifier: nMax
focal_class.modifiers: @Override
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int nMax()
focal_class.class_method_signature: UllmannState.mMax()
focal_class.full_signature: @Override int mMax()
focal_class.identifier: mMax
focal_class.modifiers: @Override
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int mMax()
focal_class.class_method_signature: UllmannState.add(int n, int m)
focal_class.full_signature: @Override boolean add(int n, int m)
focal_class.identifier: add
focal_class.modifiers: @Override
focal_class.parameters: (int n, int m)
focal_class.return: boolean
focal_class.signature: boolean add(int n, int m)
focal_class.class_method_signature: UllmannState.remove(int n, int m)
focal_class.full_signature: @Override void remove(int n, int m)
focal_class.identifier: remove
focal_class.modifiers: @Override
focal_class.parameters: (int n, int m)
focal_class.return: void
focal_class.signature: void remove(int n, int m)
focal_class.class_method_signature: UllmannState.refine(int row)
focal_class.full_signature: private boolean refine(int row)
focal_class.identifier: refine
focal_class.modifiers: private
focal_class.parameters: (int row)
focal_class.return: boolean
focal_class.signature: boolean refine(int row)
focal_class.class_method_signature: UllmannState.verify(int n, int m)
focal_class.full_signature: private boolean verify(int n, int m)
focal_class.identifier: verify
focal_class.modifiers: private
focal_class.parameters: (int n, int m)
focal_class.return: boolean
focal_class.signature: boolean verify(int n, int m)
focal_class.class_method_signature: UllmannState.hasCandidate(int n)
focal_class.full_signature: private boolean hasCandidate(int n)
focal_class.identifier: hasCandidate
focal_class.modifiers: private
focal_class.parameters: (int n)
focal_class.return: boolean
focal_class.signature: boolean hasCandidate(int n)
focal_class.class_method_signature: UllmannState.mapping()
focal_class.full_signature: @Override int[] mapping()
focal_class.identifier: mapping
focal_class.modifiers: @Override
focal_class.parameters: ()
focal_class.return: int[]
focal_class.signature: int[] mapping()
focal_class.class_method_signature: UllmannState.size()
focal_class.full_signature: @Override int size()
focal_class.identifier: size
focal_class.modifiers: @Override
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int size()
focal_class.superclass: extends State
focal_method.body: @Override
      int nextM(int n, int m) {
          for (int i = m + 1; i < g2.length; i++)
              if (m2[i] == UNMAPPED) return i;
          return g2.length;
      }
focal_method.class_method_signature: UllmannState.nextM(int n, int m)
focal_method.full_signature: @Override int nextM(int n, int m)
focal_method.identifier: nextM
focal_method.modifiers: @Override
focal_method.parameters: (int n, int m)
focal_method.return: int
focal_method.signature: int nextM(int n, int m)