Package edu.umd.cs.findbugs.ba.generic
Class GenericUtilities
java.lang.Object
edu.umd.cs.findbugs.ba.generic.GenericUtilities
Utilities for adding support for generics. Most of these methods can be
applied to generic and non generic type information.
- Author:
- Nat Ayewah
-
Nested Class Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic final String
getString
(org.apache.bcel.generic.Type type) Get String representation of a Type including Generic informationstatic org.apache.bcel.generic.Type
This method is analogous toType.getType(String)
, except that it also accepts signatures with generic information.static GenericObjectType
static final GenericUtilities.TypeCategory
getTypeCategory
(org.apache.bcel.generic.Type type) Get the TypeCategory that represents this Objectstatic final List
<org.apache.bcel.generic.ReferenceType> getTypeParameters
(String signature) Parse a bytecode signature that has 1 or more (possibly generic) types and return a list of the Types.static final boolean
isPlainObject
(org.apache.bcel.generic.Type type) static int
static org.apache.bcel.generic.ObjectType
merge
(GenericObjectType t1, org.apache.bcel.generic.ObjectType t2) static org.apache.bcel.generic.Type
merge
(GenericObjectType t1, org.apache.bcel.generic.Type t2) static org.apache.bcel.generic.ObjectType
merge
(org.apache.bcel.generic.Type t1, org.apache.bcel.generic.ObjectType t2) static int
nextUnmatchedRightAngleBracket
(String s, int startingAt) static String
-
Constructor Details
-
GenericUtilities
public GenericUtilities()
-
-
Method Details
-
getTypeCategory
public static final GenericUtilities.TypeCategory getTypeCategory(org.apache.bcel.generic.Type type) Get the TypeCategory that represents this Object- See Also:
-
isPlainObject
public static final boolean isPlainObject(org.apache.bcel.generic.Type type) -
getString
Get String representation of a Type including Generic information -
getType
public static GenericObjectType getType(String className, List<? extends org.apache.bcel.generic.ReferenceType> parameters) -
getType
This method is analogous toType.getType(String)
, except that it also accepts signatures with generic information. e.g.Ljava/util/ArrayList<TT;>;
The signature should only contain one type. Use GenericSignatureParser to break up a signature with many types or call createTypes(String) to return a list of types
-
merge
public static org.apache.bcel.generic.ObjectType merge(@CheckForNull org.apache.bcel.generic.Type t1, org.apache.bcel.generic.ObjectType t2) -
merge
public static org.apache.bcel.generic.Type merge(@CheckForNull GenericObjectType t1, org.apache.bcel.generic.Type t2) -
merge
public static org.apache.bcel.generic.ObjectType merge(@CheckForNull GenericObjectType t1, org.apache.bcel.generic.ObjectType t2) -
removeMatchedAngleBrackets
-
nextUnmatchedRightAngleBracket
-
lastMatchedLeftAngleBracket
-
getTypeParameters
@CheckForNull public static final List<org.apache.bcel.generic.ReferenceType> getTypeParameters(String signature) Parse a bytecode signature that has 1 or more (possibly generic) types and return a list of the Types.- Parameters:
signature
- bytecode signature e.g. e.g.Ljava/util/ArrayList<Ljava/lang/String;>;Ljava/util/ArrayList<TT;>;Ljava/util/ArrayList<*>;
-
split
-