Program: 75424
Project: 75424
Buggy source:
private Local _convertTokenArgToJavaArg(Local tokenLocal,ptolemy.data.type.Type tokenType,CachedMethod.ArgumentConversion conversion) throws IllegalActionException {
  if (conversion == CachedMethod.IDENTITY_CONVERSION) {
    Local tempLocal=Jimple.v().newLocal("String_Node_Str",PtolemyUtilities.tokenType);
    _body.getLocals().add(tempLocal);
    _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,tokenLocal),_insertPoint);
    return tempLocal;
  }
 else   if (conversion == CachedMethod.ARRAYTOKEN_CONVERSION) {
    Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.arrayTokenClass));
    _body.getLocals().add(tempLocal);
    Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(RefType.v(PtolemyUtilities.objectClass),1));
    _body.getLocals().add(resultLocal);
    _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v(PtolemyUtilities.arrayTokenClass))),_insertPoint);
    _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.arrayValueMethod)),_insertPoint);
    return resultLocal;
  }
 else   if (conversion == CachedMethod.NATIVE_CONVERSION) {
    if (tokenType == ptolemy.data.type.BaseType.DOUBLE) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.doubleTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",DoubleType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v(PtolemyUtilities.doubleTokenClass))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.doubleValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.UNSIGNED_BYTE) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.unsignedByteTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ByteType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v(PtolemyUtilities.unsignedByteTokenClass))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.unsignedByteValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.INT) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.intTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",IntType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.intValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.LONG) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.longTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",LongType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.longValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.STRING) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.stringTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",RefType.v("String_Node_Str"));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.stringValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.BOOLEAN) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.booleanTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",BooleanType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.booleanValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.COMPLEX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.complexTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",RefType.v("String_Node_Str"));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.complexValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.FIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.intTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",RefType.v("String_Node_Str"));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.fixValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.DOUBLE_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.doubleMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(DoubleType.v(),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.doubleMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.INT_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.intMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(IntType.v(),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.intMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.LONG_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.longMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(LongType.v(),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.longMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.BOOLEAN_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.booleanMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(BooleanType.v(),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.booleanMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.COMPLEX_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.complexMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(RefType.v("String_Node_Str"),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.complexMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.FIX_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.fixMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(RefType.v("String_Node_Str"),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.fixMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else {
      throw new IllegalActionException("String_Node_Str");
    }
  }
 else {
    throw new IllegalActionException("String_Node_Str" + "String_Node_Str" + conversion);
  }
}

Fixed version (ground truth):
private Local _convertTokenArgToJavaArg(Local tokenLocal,ptolemy.data.type.Type tokenType,CachedMethod.ArgumentConversion conversion) throws IllegalActionException {
  if (conversion == CachedMethod.IDENTITY_CONVERSION) {
    Local tempLocal=Jimple.v().newLocal("String_Node_Str",PtolemyUtilities.tokenType);
    _body.getLocals().add(tempLocal);
    _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,tokenLocal),_insertPoint);
    return tempLocal;
  }
 else   if (conversion == CachedMethod.ARRAYTOKEN_CONVERSION) {
    Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.arrayTokenClass));
    _body.getLocals().add(tempLocal);
    Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(RefType.v(PtolemyUtilities.objectClass),1));
    _body.getLocals().add(resultLocal);
    _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v(PtolemyUtilities.arrayTokenClass))),_insertPoint);
    _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.arrayValueMethod)),_insertPoint);
    return resultLocal;
  }
 else   if (conversion == CachedMethod.NATIVE_CONVERSION) {
    if (tokenType == ptolemy.data.type.BaseType.DOUBLE) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.doubleTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",DoubleType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v(PtolemyUtilities.doubleTokenClass))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.doubleValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.UNSIGNED_BYTE) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.unsignedByteTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ByteType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v(PtolemyUtilities.unsignedByteTokenClass))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.unsignedByteValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.INT) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.intTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",IntType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.intValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.LONG) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.longTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",LongType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.longValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.STRING) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.stringTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",RefType.v("String_Node_Str"));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.stringValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.BOOLEAN) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.booleanTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",BooleanType.v());
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.booleanValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.COMPLEX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.complexTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",RefType.v("String_Node_Str"));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.complexValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.FIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.intTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",RefType.v("String_Node_Str"));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.fixValueMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.DOUBLE_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.doubleMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(DoubleType.v(),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.doubleMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.INT_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.intMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(IntType.v(),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.intMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.LONG_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.longMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(LongType.v(),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.longMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.BOOLEAN_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.booleanMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(BooleanType.v(),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.booleanMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.COMPLEX_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.complexMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(RefType.v("String_Node_Str"),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(resultLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.complexMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else     if (tokenType == ptolemy.data.type.BaseType.FIX_MATRIX) {
      Local tempLocal=Jimple.v().newLocal("String_Node_Str",RefType.v(PtolemyUtilities.fixMatrixTokenClass));
      _body.getLocals().add(tempLocal);
      Local resultLocal=Jimple.v().newLocal("String_Node_Str",ArrayType.v(RefType.v("String_Node_Str"),2));
      _body.getLocals().add(resultLocal);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newCastExpr(tokenLocal,RefType.v("String_Node_Str"))),_insertPoint);
      _units.insertBefore(Jimple.v().newAssignStmt(tempLocal,Jimple.v().newVirtualInvokeExpr(tempLocal,PtolemyUtilities.fixMatrixMethod)),_insertPoint);
      return resultLocal;
    }
 else {
      throw new IllegalActionException("String_Node_Str" + "String_Node_Str" + tokenType);
    }
  }
 else {
    throw new IllegalActionException("String_Node_Str" + "String_Node_Str" + conversion);
  }
}