docs: static String generateValidation(
              final Annotation annotation,
              final String checkType,
              final String checkName,
              final String fieldName) {
  
          if (VALIDATE_WITH_METHOD_CHECK.equals(checkType)) {
              // Special Case: Unwrap the check method and code generate its invocation
              final ValidateWithMethod validateWithMethod = (ValidateWithMethod) annotation;
              return "if (!(" + fieldName + " == null && " + checkName + ".isIgnoreIfNull()) && !"
                      + validateWithMethod.methodName() + "(" + fieldName + ")) {\n"
                      + "violations.add(new net.sf.oval.ConstraintViolation("
                      + checkName + ", " + checkName + ".getMessage(), this, " + fieldName + ", " + checkName + "_CONTEXT));\n"
                      + "}\n";
          } else if (FIELDS_EQUAL_CHECK.equals(checkType)) {
              // Special Case: Unwrap the other field reference and code generate its comparison
              // NOTE: This does not support getter usage.
              final EqualToField equalTo = (EqualToField) annotation;
              if (!equalTo.useGetter()) {
                  return "if (" + fieldName + " != null && (" + equalTo.value() + " == null "
                          + "|| !" + fieldName + ".equals(" + equalTo.value() + "))) {\n"
                          + "violations.add(new net.sf.oval.ConstraintViolation("
                          + checkName + ", " + checkName + ".getMessage(), this, " + fieldName + ", " + checkName + "_CONTEXT));\n"
                          + "}\n";
              }
          } else if (FIELDS_NOT_EQUAL_CHECK.equals(checkType)) {
              // Special Case: Unwrap the other field reference and code generate its comparison
              // NOTE: This does not support getter usage.
              final NotEqualToField notEqualTo = (NotEqualToField) annotation;
              if (!notEqualTo.useGetter()) {
                  return "if (" + fieldName + " != null && " + notEqualTo.value() + " != null "
                          + "&& " + fieldName + ".equals(" + notEqualTo.value() + ")) {\n"
                          + "violations.add(new net.sf.oval.ConstraintViolation("
                          + checkName + ", " + checkName + ".getMessage(), this, " + fieldName + ", " + checkName + "_CONTEXT));\n"
                          + "}\n";
              }
          }
          return "if (!" + checkName + ".isSatisfied(this, " + fieldName + ", null, null)) {\n"
                  + "violations.add(new net.sf.oval.ConstraintViolation("
                  + checkName + ", " + checkName + ".getMessage(), this, " + fieldName + ", " + checkName + "_CONTEXT));\n"
                  + "}\n";
      }