Examples of SignatureVisitor


Examples of org.objectweb.asm.signature.SignatureVisitor

    public SignatureVisitor visitInterface() {
        if (state != SUPER) {
            throw new IllegalStateException();
        }
        SignatureVisitor v = sv == null ? null : sv.visitInterface();
        return new CheckSignatureAdapter(TYPE_SIGNATURE, v);
    }
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

                || (state & (EMPTY | FORMAL | BOUND | PARAM)) == 0)
        {
            throw new IllegalArgumentException();
        }
        state = PARAM;
        SignatureVisitor v = sv == null ? null : sv.visitParameterType();
        return new CheckSignatureAdapter(TYPE_SIGNATURE, v);
    }
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

                || (state & (EMPTY | FORMAL | BOUND | PARAM)) == 0)
        {
            throw new IllegalArgumentException();
        }
        state = RETURN;
        SignatureVisitor v = sv == null ? null : sv.visitReturnType();
        CheckSignatureAdapter cv = new CheckSignatureAdapter(TYPE_SIGNATURE, v);
        cv.canBeVoid = true;
        return cv;
    }
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

    public SignatureVisitor visitExceptionType() {
        if (state != RETURN) {
            throw new IllegalStateException();
        }
        SignatureVisitor v = sv == null ? null : sv.visitExceptionType();
        return new CheckSignatureAdapter(TYPE_SIGNATURE, v);
    }
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

    public SignatureVisitor visitArrayType() {
        if (type != TYPE_SIGNATURE || state != EMPTY) {
            throw new IllegalStateException();
        }
        state = SIMPLE_TYPE;
        SignatureVisitor v = sv == null ? null : sv.visitArrayType();
        return new CheckSignatureAdapter(TYPE_SIGNATURE, v);
    }
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

            throw new IllegalStateException();
        }
        if ("+-=".indexOf(wildcard) == -1) {
            throw new IllegalArgumentException();
        }
        SignatureVisitor v = sv == null ? null : sv.visitTypeArgument(wildcard);
        return new CheckSignatureAdapter(TYPE_SIGNATURE, v);
    }
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

*/
public final class Signatures {

  public static String getClassSignature(TypeToken<?> interfaceType) {
    SignatureWriter signWriter = new SignatureWriter();
    SignatureVisitor sv = signWriter.visitSuperclass();
    sv.visitClassType(Type.getInternalName(Object.class));
    sv.visitEnd();

    SignatureVisitor interfaceVisitor = sv.visitInterface();
    interfaceVisitor.visitClassType(Type.getInternalName(interfaceType.getRawType()));

    if (interfaceType.getType() instanceof ParameterizedType) {
      for (java.lang.reflect.Type paramType : ((ParameterizedType) interfaceType.getType()).getActualTypeArguments()) {
        interfaceVisitor.visitTypeArgument(SignatureVisitor.INSTANCEOF);
        visitTypeSignature(interfaceType.resolveType(paramType), interfaceVisitor);
      }
    }

    sv.visitEnd();
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

    SignatureWriter signWriter = new SignatureWriter();

    Type[] argumentTypes = method.getArgumentTypes();

    for (int i = 0; i < argumentTypes.length; i++) {
      SignatureVisitor sv = signWriter.visitParameterType();
      if (types[i] != null) {
        visitTypeSignature(types[i], sv);
      } else {
        sv.visitClassType(argumentTypes[i].getInternalName());
        sv.visitEnd();
      }
    }

    signWriter.visitReturnType().visitBaseType('V');
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

   * @return the getter signature {@code <T> T get(Object object)}
   */
  private String getterSignature() {
    SignatureWriter writer = new SignatureWriter();
    writer.visitFormalTypeParameter("T");
    SignatureVisitor sv = writer.visitClassBound();
    sv.visitClassType(Type.getInternalName(Object.class));
    sv.visitEnd();

    sv = writer.visitParameterType();
    sv.visitClassType(Type.getInternalName(Object.class));
    sv.visitEnd();

    sv = sv.visitReturnType();
    sv.visitTypeVariable("T");

    return writer.toString();
  }
View Full Code Here

Examples of org.objectweb.asm.signature.SignatureVisitor

   * @return the setter signature {@code <T> void set(Object object, T value)}
   */
  private String setterSignature() {
    SignatureWriter writer = new SignatureWriter();
    writer.visitFormalTypeParameter("T");
    SignatureVisitor sv = writer.visitClassBound();
    sv.visitClassType(Type.getInternalName(Object.class));
    sv.visitEnd();

    sv = writer.visitParameterType();
    sv.visitClassType(Type.getInternalName(Object.class));
    sv.visitEnd();

    sv = writer.visitParameterType();
    sv.visitTypeVariable("T");

    sv.visitReturnType().visitBaseType('V');

    return writer.toString();
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.