code: @SuppressWarnings("unchecked")
      private int getVarArgsParmCount(String signature) {
          if (SignatureBuilder.SIG_STRING_AND_OBJECT_TO_VOID.equals(signature)) {
              return 1;
          }
          if (SIG_STRING_AND_TWO_OBJECTS_TO_VOID.equals(signature)) {
              return 2;
          }
  
          OpcodeStack.Item item = stack.getStackItem(0);
          LOUserValue<Integer> uv = (LOUserValue<Integer>) item.getUserValue();
          if ((uv != null) && (uv.getType() == LOUserValue.LOType.ARRAY_SIZE)) {
              Integer size = uv.getValue();
              if (size != null) {
                  return Math.abs(size.intValue());
              }
          }
          return -1;
      }
docs: returns the number of parameters slf4j or log4j2 is expecting to inject into the format string
  
  @param signature
  the method signature of the error, warn, info, debug statement
  @return the number of expected parameters