public byte[] getBytes() {
byte str[]=new byte[count];
- for(int i=0;i<value.length;i++)
+ for(int i=0;i<count;i++)
str[i]=(byte)value[i+offset];
return str;
}
char x=st.charAt(i);
if (x=='\n')
new_st+="\\n";
+ else if (x=='\r')
+ new_st+="\\r";
else if (x=='"')
new_st+="'"+'"'+"'";
else new_st+=x;
throw new Error("Cannot have non-object argument to a task");
ClassDescriptor cd=param_type.getClassDesc();
checkFlagExpressionNode(cd, fen);
- checkFlagEffects(td, td.getFlagEffects());
-
- /* Check that the task code is valid */
- BlockNode bn=state.getMethodBody(td);
- checkBlockNode(td, td.getParameterTable(),bn);
}
+
+ checkFlagEffects(td, td.getFlagEffects());
+ /* Check that the task code is valid */
+ BlockNode bn=state.getMethodBody(td);
+ checkBlockNode(td, td.getParameterTable(),bn);
}
public void checkFlagExpressionNode(ClassDescriptor cd, FlagExpressionNode fen) {
throw new Error("Error with method call to "+min.getMethodName());
ClassDescriptor classtolookin=typetolookin.getClassDesc();
System.out.println("Method name="+min.getMethodName());
+
Set methoddescriptorset=classtolookin.getMethodTable().getSet(min.getMethodName());
MethodDescriptor bestmd=null;
NextMethod:
newindex=j;
} else {
RuntimeHashiterator(pw->objectset, &iteratorarray[j]);
- if (RunhasNext(&iteratorarray[j]))
- taskpointerarray[j]=(void *) Runnext(&iteratorarray[j]);
- else
+ if (RunhasNext(&iteratorarray[j])) {
+ taskpointerarray[j]=(void *) Runkey(&iteratorarray[j]);
+ Runnext(&iteratorarray[j]);
+ } else {
+ done=0;
break; /* No tasks to dispatch */
+ }
}
}
/* Queue task items... */
if (!gencontains(failedtasks, tpd))
addNewItem(activetasks, tpd);
- /* This loop iterates to the next paramter combination */
+ /* This loop iterates to the next parameter combination */
for(j=0;j<numparams;j++) {
if (j==newindex) {
if ((j+1)==numparams)
continue;
}
if (RunhasNext(&iteratorarray[j])) {
- taskpointerarray[j]=(void *) Runnext(&iteratorarray[j]);
+ taskpointerarray[j]=(void *) Runkey(&iteratorarray[j]);
+ Runnext(&iteratorarray[j]);
break;
} else if ((j+1)!=numparams) {
RuntimeHashiterator(task->descriptorarray[j]->queue, &iteratorarray[j]);