try {
egressType = Class.forName(typeDescr.getClassName(), true, getClassLoader());
}
catch (ClassNotFoundException e) {
if (pCtx.isStrongTyping())
pCtx.addError(new ErrorDetail(expr, start, true, "could not resolve class: " + typeDescr.getClassName()));
return;
// do nothing.
}
}
if (egressType != null) {
rewriteClassReferenceToFQCN(fields);
if (typeDescr.isArray()) {
try {
egressType = egressType.isPrimitive() ?
toPrimitiveArrayType(egressType) :
findClass(null, repeatChar('[', typeDescr.getArrayLength()) + "L" + egressType.getName() + ";", pCtx);
}
catch (Exception e) {
e.printStackTrace();
// for now, don't handle this.
}
}
}
if (pCtx != null && pCtx.isStrongTyping()) {
if (egressType == null) {
pCtx.addError(new ErrorDetail(expr, start, true, "could not resolve class: " + typeDescr.getClassName()));
return;
}
if (!typeDescr.isArray()) {
String[] cnsResid = captureContructorAndResidual(expr, start, offset);
final List<char[]> constructorParms
= parseMethodOrConstructor(cnsResid[0].toCharArray());
final Class[] parms = new Class[constructorParms.size()];
for (int i = 0; i < parms.length; i++) {
parms[i] = analyze(constructorParms.get(i), pCtx);
}
if (getBestConstructorCandidate(parms, egressType, true) == null) {
if (pCtx.isStrongTyping())
pCtx.addError(new ErrorDetail(expr, start, pCtx.isStrongTyping(), "could not resolve constructor " + typeDescr.getClassName()
+ Arrays.toString(parms)));
}
if (cnsResid.length == 2) {
String residualProperty =