public static boolean isArrayDescriptor(ImmutableByteArray b) { if (b == null) { throw new IllegalArgumentException("b is null"); } if (b.length() == 0) { return false; } return b.get(0) == '['; }
public static boolean isArrayDescriptor(ImmutableByteArray b) { if (b == null) { throw new IllegalArgumentException("b is null"); } if (b.length() == 0) { return false; } return b.get(0) == '['; }
if (b.get(0) != '(') { throw new IllegalArgumentException("invalid descriptor: " + b); switch (b.get(i++)) { case TypeReference.VoidTypeCode: sigs.add(TypeReference.VoidName); case TypeReference.OtherPrimitiveTypeCode: { int off = i - 1; while (b.get(i++) != ';') while (b.get(i++) != ';') byte c = b.get(i++); if (c == TypeReference.ClassTypeCode || c == TypeReference.OtherPrimitiveTypeCode) { while (b.get(i++) != ';')
if (b.get(0) != '(') { throw new IllegalArgumentException("invalid descriptor: " + b); switch (b.get(i++)) { case TypeReference.VoidTypeCode: sigs.add(TypeReference.VoidName); case TypeReference.OtherPrimitiveTypeCode: { int off = i - 1; while (b.get(i++) != ';') while (b.get(i++) != ';') byte c = b.get(i++); if (c == TypeReference.ClassTypeCode || c == TypeReference.OtherPrimitiveTypeCode) { while (b.get(i++) != ';')
/** * @param type a type as a String returned by Shrike */ public static TypeReference makeTypeReference(ClassLoaderReference loader, String type) throws IllegalArgumentException { if (type == null) { throw new IllegalArgumentException("null type"); } TypeReference p = primitiveMap.get(type); if (p != null) { return p; } ImmutableByteArray b = ImmutableByteArray.make(type); TypeName T = null; /*if (b.get(0) != '[') { T = TypeName.findOrCreate(b, 0, b.length() - 1); } else {*/ if (b.get(b.length() - 1) == ';') { T = TypeName.findOrCreate(b, 0, b.length() - 1); } else { T = TypeName.findOrCreate(b); } //} return TypeReference.findOrCreate(loader, T); } }
static TypeName getTypeName(String fieldType) { ImmutableByteArray fieldTypeArray = ImmutableByteArray.make(fieldType); TypeName T = null; if (fieldTypeArray.get(fieldTypeArray.length() - 1) == ';') { T = TypeName.findOrCreate(fieldTypeArray, 0, fieldTypeArray.length() - 1); } else { T = TypeName.findOrCreate(fieldTypeArray); } return T; }
static TypeName getTypeName(String fieldType) { ImmutableByteArray fieldTypeArray = ImmutableByteArray.make(fieldType); TypeName T = null; if (fieldTypeArray.get(fieldTypeArray.length() - 1) == ';') { T = TypeName.findOrCreate(fieldTypeArray, 0, fieldTypeArray.length() - 1); } else { T = TypeName.findOrCreate(fieldTypeArray); } return T; }
/** * @param type a type as a String returned by Shrike */ public static TypeReference makeTypeReference(ClassLoaderReference loader, String type) throws IllegalArgumentException { if (type == null) { throw new IllegalArgumentException("null type"); } TypeReference p = primitiveMap.get(type); if (p != null) { return p; } ImmutableByteArray b = ImmutableByteArray.make(type); TypeName T = null; /*if (b.get(0) != '[') { T = TypeName.findOrCreate(b, 0, b.length() - 1); } else {*/ if (b.get(b.length() - 1) == ';') { T = TypeName.findOrCreate(b, 0, b.length() - 1); } else { T = TypeName.findOrCreate(b); } //} return TypeReference.findOrCreate(loader, T); } }
if (b.get(0) != '(') { throw new IllegalArgumentException("invalid descriptor: " + b); while (b.get(i++) != ')') switch (b.get(i)) { case TypeReference.VoidTypeCode: return TypeReference.Void.getName(); return TypeReference.Char.getName(); case TypeReference.OtherPrimitiveTypeCode: if (b.get(b.length() - 1) == ';') { return l.lookupPrimitiveType(new String(b.substring(i + 1, b.length() - i - 2))); } else { if (b.get(b.length() - 1) == ';') { return TypeName.findOrCreate(b, i, b.length() - i - 1); } else {
if (b.get(0) != '(') { throw new IllegalArgumentException("invalid descriptor: " + b); while (b.get(i++) != ')') switch (b.get(i)) { case TypeReference.VoidTypeCode: return TypeReference.Void.getName(); return TypeReference.Char.getName(); case TypeReference.OtherPrimitiveTypeCode: if (b.get(b.length() - 1) == ';') { return l.lookupPrimitiveType(new String(b.substring(i + 1, b.length() - i - 2))); } else { if (b.get(b.length() - 1) == ';') { return TypeName.findOrCreate(b, i, b.length() - i - 1); } else {
protected void addFieldToList(List<FieldImpl> L, Atom name, ImmutableByteArray fieldType, int accessFlags, Collection<Annotation> annotations, Collection<TypeAnnotation> typeAnnotations, TypeSignature sig) { TypeName T = null; if (fieldType.get(fieldType.length() - 1) == ';') { T = TypeName.findOrCreate(fieldType, 0, fieldType.length() - 1); } else { T = TypeName.findOrCreate(fieldType); } TypeReference type = TypeReference.findOrCreate(getClassLoader().getReference(), T); FieldReference fr = FieldReference.findOrCreate(getReference(), name, type); FieldImpl f = new FieldImpl(this, fr, accessFlags, annotations, typeAnnotations, sig); L.add(f); }
protected void addFieldToList(List<FieldImpl> L, Atom name, ImmutableByteArray fieldType, int accessFlags, Collection<Annotation> annotations, Collection<TypeAnnotation> typeAnnotations, TypeSignature sig) { TypeName T = null; if (fieldType.get(fieldType.length() - 1) == ';') { T = TypeName.findOrCreate(fieldType, 0, fieldType.length() - 1); } else { T = TypeName.findOrCreate(fieldType); } TypeReference type = TypeReference.findOrCreate(getClassLoader().getReference(), T); FieldReference fr = FieldReference.findOrCreate(getReference(), name, type); FieldImpl f = new FieldImpl(this, fr, accessFlags, annotations, typeAnnotations, sig); L.add(f); }