code: @Override
      public SignatureVisitor visitParameterType() {
          if (type != METHOD_SIGNATURE
                  || (state & (EMPTY | FORMAL | BOUND | PARAM)) == 0) {
              throw new IllegalArgumentException();
          }
          state = PARAM;
          SignatureVisitor v = sv == null ? null : sv.visitParameterType();
          return new CheckSignatureAdapter(TYPE_SIGNATURE, v);
      }
docs: method signatures