projects
/
jpf-core.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixing the method getGenericParameterTypes to recognize the GenericArrayTypeImpl...
[jpf-core.git]
/
src
/
main
/
gov
/
nasa
/
jpf
/
vm
/
Types.java
diff --git
a/src/main/gov/nasa/jpf/vm/Types.java
b/src/main/gov/nasa/jpf/vm/Types.java
index c29cb1da08e4b9aef044a550418c850e4048db33..64aec5c886a94f994534b3f94812e3246e1bf165 100644
(file)
--- a/
src/main/gov/nasa/jpf/vm/Types.java
+++ b/
src/main/gov/nasa/jpf/vm/Types.java
@@
-1113,7
+1113,8
@@
public class Types {
int genericStart = currParam.indexOf('<');
if (genericStart != -1) {
if (currParam.charAt(genericStart + 1) == '*') {
int genericStart = currParam.indexOf('<');
if (genericStart != -1) {
if (currParam.charAt(genericStart + 1) == '*') {
- semicolon = genericStart + 4;
+ // Need to offset with idx to anticipate for array types (idx is incremented for array types)
+ semicolon = genericStart + idx + 3;
} else {
int generic = signature.indexOf('>', semicolon);
if (generic != -1) {
} else {
int generic = signature.indexOf('>', semicolon);
if (generic != -1) {
@@
-1245,6
+1246,14
@@
public class Types {
return signature.substring(0, opening);
}
return signature.substring(0, opening);
}
+ public static String getArrayClassName(String signature) {
+ int opening = signature.indexOf('[');
+ if (opening == -1)
+ return signature;
+ else
+ return signature.substring(0, opening);
+ }
+
public static String getOwnerClassName(String signature) {
int marker = signature.indexOf('$');
if (marker == -1)
public static String getOwnerClassName(String signature) {
int marker = signature.indexOf('$');
if (marker == -1)
@@
-1260,6
+1269,13
@@
public class Types {
return (opening != -1);
}
return (opening != -1);
}
+ public static boolean isArraySignature(String signature) {
+ if (signature == null || signature.equals(""))
+ return false;
+ int opening = signature.indexOf('[');
+ return (opening != -1);
+ }
+
public static boolean isTypeParameter(String parameterizedType, String signature) {
if (signature == null || signature.equals(""))
return false;
public static boolean isTypeParameter(String parameterizedType, String signature) {
if (signature == null || signature.equals(""))
return false;