code: @Override
    public boolean visit(final ClassNode<?> node) {
  
      this.graphStr
          .append("  ")
          .append(node.getName())
          .append(" [label=\"")
          .append(node.getName())
          .append("\", shape=box")
  //            .append(config.isSingleton(node) ? ", style=filled" : "")
          .append("];\n");
  
      final ClassNode<?> boundImplNode = config.getBoundImplementation(node);
      if (boundImplNode != null) {
        this.graphStr
            .append("  ")
            .append(node.getName())
            .append(" -> ")
            .append(boundImplNode.getName())
            .append(" [style=solid, dir=back, arrowtail=normal];\n");
      }
  
      for (final Object implNodeObj : node.getKnownImplementations()) {
        final ClassNode<?> implNode = (ClassNode<?>) implNodeObj;
        if (implNode != boundImplNode && implNode != node
            && (implNode.isExternalConstructor() || this.showImpl)) {
          this.graphStr
              .append("  ")
              .append(node.getName())
              .append(" -> ")
              .append(implNode.getName())
              .append(" [style=\"dashed")
              .append(implNode.isExternalConstructor() ? ",bold" : "")
              .append("\", dir=back, arrowtail=empty];\n");
        }
      }
  
      return true;
    }
docs: Process current class configuration node.
  
  @param node Current configuration node.
  @return true to proceed with the next node, false to cancel.