test_class.declarator: font          = new Font("Verdana", Font.PLAIN, 12)
test_class.modifier: private final
test_class.original_string: private final Font                  font          = new Font("Verdana", Font.PLAIN, 12);
test_class.type: Font
test_class.var_name: font
test_class.declarator: element       = new TextOutline("N", font)
test_class.modifier: private final
test_class.original_string: private final TextOutline           element       = new TextOutline("N", font);
test_class.type: TextOutline
test_class.var_name: element
test_class.declarator: hydrogen      = new TextOutline("H", font)
test_class.modifier: private final
test_class.original_string: private final TextOutline           hydrogen      = new TextOutline("H", font);
test_class.type: TextOutline
test_class.var_name: hydrogen
test_class.declarator: atomGenerator = new StandardAtomGenerator(font)
test_class.modifier: private final
test_class.original_string: private final StandardAtomGenerator atomGenerator = new StandardAtomGenerator(font);
test_class.type: StandardAtomGenerator
test_class.var_name: atomGenerator
test_class.file: display/renderbasic/src/test/java/org/openscience/cdk/renderer/generators/standard/StandardAtomGeneratorTest.java
test_class.identifier: StandardAtomGeneratorTest
test_case.body: @Test
      public void radicalAndAnion() throws Exception {
          assertThat(StandardAtomGenerator.chargeAdjunctText(-1, 1), is("(•)−"));
      }
test_case.class_method_signature: StandardAtomGeneratorTest.radicalAndAnion()
test_case.full_signature: @Test public void radicalAndAnion()
test_case.identifier: radicalAndAnion
test_case.invocations: assertThat chargeAdjunctText is
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void radicalAndAnion()
focal_class.declarator: DEFAULT_ADJUNCT_SPACING_RATIO = 0.15d
focal_class.modifier: private final static
focal_class.original_string: private final static double DEFAULT_ADJUNCT_SPACING_RATIO = 0.15d;
focal_class.type: double
focal_class.var_name: DEFAULT_ADJUNCT_SPACING_RATIO
focal_class.declarator: DEFAULT_SUBSCRIPT_SIZE        = 0.6d
focal_class.modifier: private final static
focal_class.original_string: private final static double DEFAULT_SUBSCRIPT_SIZE        = 0.6d;
focal_class.type: double
focal_class.var_name: DEFAULT_SUBSCRIPT_SIZE
focal_class.declarator: font
focal_class.modifier: private final
focal_class.original_string: private final Font font;
focal_class.type: Font
focal_class.var_name: font
focal_class.declarator: scriptSize
focal_class.modifier: private final
focal_class.original_string: private final double scriptSize;
focal_class.type: double
focal_class.var_name: scriptSize
focal_class.declarator: padding
focal_class.modifier: private final
focal_class.original_string: private final double padding;
focal_class.type: double
focal_class.var_name: padding
focal_class.declarator: defaultHydrogenLabel
focal_class.modifier: private final
focal_class.original_string: private final TextOutline defaultHydrogenLabel;
focal_class.type: TextOutline
focal_class.var_name: defaultHydrogenLabel
focal_class.declarator: BULLET = '•', 
focal_class.modifier: private static final
focal_class.original_string: private static final char BULLET = '•', // '\u2022'
              PLUS                     = '+', MINUS = '−'; /
focal_class.type: char
focal_class.var_name: BULLET
focal_class.file: display/renderbasic/src/main/java/org/openscience/cdk/renderer/generators/standard/StandardAtomGenerator.java
focal_class.identifier: StandardAtomGenerator
focal_class.class_method_signature: StandardAtomGenerator.StandardAtomGenerator(Font font)
focal_class.full_signature:   StandardAtomGenerator(Font font)
focal_class.identifier: StandardAtomGenerator
focal_class.parameters: (Font font)
focal_class.signature:  StandardAtomGenerator(Font font)
focal_class.class_method_signature: StandardAtomGenerator.StandardAtomGenerator(Font font, double adjunctSpacing, double scriptSize)
focal_class.full_signature: private  StandardAtomGenerator(Font font, double adjunctSpacing, double scriptSize)
focal_class.identifier: StandardAtomGenerator
focal_class.modifiers: private
focal_class.parameters: (Font font, double adjunctSpacing, double scriptSize)
focal_class.signature:  StandardAtomGenerator(Font font, double adjunctSpacing, double scriptSize)
focal_class.class_method_signature: StandardAtomGenerator.generateSymbol(IAtomContainer container, IAtom atom, HydrogenPosition position, RendererModel model)
focal_class.full_signature:  AtomSymbol generateSymbol(IAtomContainer container, IAtom atom, HydrogenPosition position, RendererModel model)
focal_class.identifier: generateSymbol
focal_class.parameters: (IAtomContainer container, IAtom atom, HydrogenPosition position, RendererModel model)
focal_class.return: AtomSymbol
focal_class.signature: AtomSymbol generateSymbol(IAtomContainer container, IAtom atom, HydrogenPosition position, RendererModel model)
focal_class.class_method_signature: StandardAtomGenerator.generatePseudoSymbol(String label, HydrogenPosition position, RendererModel model)
focal_class.full_signature:  AtomSymbol generatePseudoSymbol(String label, HydrogenPosition position, RendererModel model)
focal_class.identifier: generatePseudoSymbol
focal_class.parameters: (String label, HydrogenPosition position, RendererModel model)
focal_class.return: AtomSymbol
focal_class.signature: AtomSymbol generatePseudoSymbol(String label, HydrogenPosition position, RendererModel model)
focal_class.class_method_signature: StandardAtomGenerator.isUpperCase(char c)
focal_class.full_signature: private boolean isUpperCase(char c)
focal_class.identifier: isUpperCase
focal_class.modifiers: private
focal_class.parameters: (char c)
focal_class.return: boolean
focal_class.signature: boolean isUpperCase(char c)
focal_class.class_method_signature: StandardAtomGenerator.isLowerCase(char c)
focal_class.full_signature: private boolean isLowerCase(char c)
focal_class.identifier: isLowerCase
focal_class.modifiers: private
focal_class.parameters: (char c)
focal_class.return: boolean
focal_class.signature: boolean isLowerCase(char c)
focal_class.class_method_signature: StandardAtomGenerator.isDigit(char c)
focal_class.full_signature: private boolean isDigit(char c)
focal_class.identifier: isDigit
focal_class.modifiers: private
focal_class.parameters: (char c)
focal_class.return: boolean
focal_class.signature: boolean isDigit(char c)
focal_class.class_method_signature: StandardAtomGenerator.generateAbbreviatedSymbol(String label, HydrogenPosition position)
focal_class.full_signature:  AtomSymbol generateAbbreviatedSymbol(String label, HydrogenPosition position)
focal_class.identifier: generateAbbreviatedSymbol
focal_class.parameters: (String label, HydrogenPosition position)
focal_class.return: AtomSymbol
focal_class.signature: AtomSymbol generateAbbreviatedSymbol(String label, HydrogenPosition position)
focal_class.class_method_signature: StandardAtomGenerator.generateAbbreviationSymbol(List<String> tokens, HydrogenPosition position)
focal_class.full_signature:  AtomSymbol generateAbbreviationSymbol(List<String> tokens, HydrogenPosition position)
focal_class.identifier: generateAbbreviationSymbol
focal_class.parameters: (List<String> tokens, HydrogenPosition position)
focal_class.return: AtomSymbol
focal_class.signature: AtomSymbol generateAbbreviationSymbol(List<String> tokens, HydrogenPosition position)
focal_class.class_method_signature: StandardAtomGenerator.generatePeriodicSymbol(final int number, final int hydrogens, int mass, final int charge,
                                        final int unpaired, HydrogenPosition position,
                                        RendererModel opts)
focal_class.full_signature:  AtomSymbol generatePeriodicSymbol(final int number, final int hydrogens, int mass, final int charge,
                                        final int unpaired, HydrogenPosition position,
                                        RendererModel opts)
focal_class.identifier: generatePeriodicSymbol
focal_class.parameters: (final int number, final int hydrogens, int mass, final int charge,
                                        final int unpaired, HydrogenPosition position,
                                        RendererModel opts)
focal_class.return: AtomSymbol
focal_class.signature: AtomSymbol generatePeriodicSymbol(final int number, final int hydrogens, int mass, final int charge,
                                        final int unpaired, HydrogenPosition position,
                                        RendererModel opts)
focal_class.class_method_signature: StandardAtomGenerator.positionHydrogenLabel(HydrogenPosition position, TextOutline element, TextOutline hydrogen)
focal_class.full_signature:  TextOutline positionHydrogenLabel(HydrogenPosition position, TextOutline element, TextOutline hydrogen)
focal_class.identifier: positionHydrogenLabel
focal_class.parameters: (HydrogenPosition position, TextOutline element, TextOutline hydrogen)
focal_class.return: TextOutline
focal_class.signature: TextOutline positionHydrogenLabel(HydrogenPosition position, TextOutline element, TextOutline hydrogen)
focal_class.class_method_signature: StandardAtomGenerator.positionSubscript(TextOutline label, TextOutline subscript)
focal_class.full_signature:  TextOutline positionSubscript(TextOutline label, TextOutline subscript)
focal_class.identifier: positionSubscript
focal_class.parameters: (TextOutline label, TextOutline subscript)
focal_class.return: TextOutline
focal_class.signature: TextOutline positionSubscript(TextOutline label, TextOutline subscript)
focal_class.class_method_signature: StandardAtomGenerator.positionSuperscript(TextOutline label, TextOutline superscript)
focal_class.full_signature:  TextOutline positionSuperscript(TextOutline label, TextOutline superscript)
focal_class.identifier: positionSuperscript
focal_class.parameters: (TextOutline label, TextOutline superscript)
focal_class.return: TextOutline
focal_class.signature: TextOutline positionSuperscript(TextOutline label, TextOutline superscript)
focal_class.class_method_signature: StandardAtomGenerator.positionAfter(TextOutline before, TextOutline after)
focal_class.full_signature:  TextOutline positionAfter(TextOutline before, TextOutline after)
focal_class.identifier: positionAfter
focal_class.parameters: (TextOutline before, TextOutline after)
focal_class.return: TextOutline
focal_class.signature: TextOutline positionAfter(TextOutline before, TextOutline after)
focal_class.class_method_signature: StandardAtomGenerator.positionChargeLabel(int hydrogens,
                                      HydrogenPosition position,
                                      TextOutline charge,
                                      TextOutline element,
                                      TextOutline hydrogen)
focal_class.full_signature:  TextOutline positionChargeLabel(int hydrogens,
                                      HydrogenPosition position,
                                      TextOutline charge,
                                      TextOutline element,
                                      TextOutline hydrogen)
focal_class.identifier: positionChargeLabel
focal_class.parameters: (int hydrogens,
                                      HydrogenPosition position,
                                      TextOutline charge,
                                      TextOutline element,
                                      TextOutline hydrogen)
focal_class.return: TextOutline
focal_class.signature: TextOutline positionChargeLabel(int hydrogens,
                                      HydrogenPosition position,
                                      TextOutline charge,
                                      TextOutline element,
                                      TextOutline hydrogen)
focal_class.class_method_signature: StandardAtomGenerator.positionMassLabel(TextOutline massLabel, TextOutline elementLabel)
focal_class.full_signature:  TextOutline positionMassLabel(TextOutline massLabel, TextOutline elementLabel)
focal_class.identifier: positionMassLabel
focal_class.parameters: (TextOutline massLabel, TextOutline elementLabel)
focal_class.return: TextOutline
focal_class.signature: TextOutline positionMassLabel(TextOutline massLabel, TextOutline elementLabel)
focal_class.class_method_signature: StandardAtomGenerator.hydrogenXDodge(int hydrogens, int mass, TextOutline elementLabel, TextOutline hydrogenLabel,
                                    TextOutline hydrogenCount, TextOutline massLabel)
focal_class.full_signature: private double hydrogenXDodge(int hydrogens, int mass, TextOutline elementLabel, TextOutline hydrogenLabel,
                                    TextOutline hydrogenCount, TextOutline massLabel)
focal_class.identifier: hydrogenXDodge
focal_class.modifiers: private
focal_class.parameters: (int hydrogens, int mass, TextOutline elementLabel, TextOutline hydrogenLabel,
                                    TextOutline hydrogenCount, TextOutline massLabel)
focal_class.return: double
focal_class.signature: double hydrogenXDodge(int hydrogens, int mass, TextOutline elementLabel, TextOutline hydrogenLabel,
                                    TextOutline hydrogenCount, TextOutline massLabel)
focal_class.class_method_signature: StandardAtomGenerator.isMajorIsotope(int number, int mass)
focal_class.full_signature: private boolean isMajorIsotope(int number, int mass)
focal_class.identifier: isMajorIsotope
focal_class.modifiers: private
focal_class.parameters: (int number, int mass)
focal_class.return: boolean
focal_class.signature: boolean isMajorIsotope(int number, int mass)
focal_class.class_method_signature: StandardAtomGenerator.unboxSafely(Integer value, int defaultValue)
focal_class.full_signature: private static int unboxSafely(Integer value, int defaultValue)
focal_class.identifier: unboxSafely
focal_class.modifiers: private static
focal_class.parameters: (Integer value, int defaultValue)
focal_class.return: int
focal_class.signature: int unboxSafely(Integer value, int defaultValue)
focal_class.class_method_signature: StandardAtomGenerator.chargeAdjunctText(final int charge, final int unpaired)
focal_class.full_signature: static String chargeAdjunctText(final int charge, final int unpaired)
focal_class.identifier: chargeAdjunctText
focal_class.modifiers: static
focal_class.parameters: (final int charge, final int unpaired)
focal_class.return: String
focal_class.signature: String chargeAdjunctText(final int charge, final int unpaired)
focal_class.class_method_signature: StandardAtomGenerator.accessPseudoLabel(IPseudoAtom atom, String defaultLabel)
focal_class.full_signature: static String accessPseudoLabel(IPseudoAtom atom, String defaultLabel)
focal_class.identifier: accessPseudoLabel
focal_class.modifiers: static
focal_class.parameters: (IPseudoAtom atom, String defaultLabel)
focal_class.return: String
focal_class.signature: String accessPseudoLabel(IPseudoAtom atom, String defaultLabel)
focal_method.body: static String chargeAdjunctText(final int charge, final int unpaired) {
          StringBuilder sb = new StringBuilder();
  
          if (unpaired == 1) {
              if (charge != 0) {
                  sb.append('(').append(BULLET).append(')');
              } else {
                  sb.append(BULLET);
              }
          } else if (unpaired > 1) {
              if (charge != 0) {
                  sb.append('(').append(unpaired).append(BULLET).append(')');
              } else {
                  sb.append(unpaired).append(BULLET);
              }
          }
  
          final char sign = charge < 0 ? MINUS : PLUS;
          final int coefficient = Math.abs(charge);
  
          if (coefficient > 1) sb.append(coefficient);
          if (coefficient > 0) sb.append(sign);
  
          return sb.toString();
      }
focal_method.class_method_signature: StandardAtomGenerator.chargeAdjunctText(final int charge, final int unpaired)
focal_method.full_signature: static String chargeAdjunctText(final int charge, final int unpaired)
focal_method.identifier: chargeAdjunctText
focal_method.invocations: append append append append append append append append append append abs append append toString
focal_method.modifiers: static
focal_method.parameters: (final int charge, final int unpaired)
focal_method.return: String
focal_method.signature: String chargeAdjunctText(final int charge, final int unpaired)