| Summary: | java compile error when pass record.field as parameter to delegate | ||
|---|---|---|---|
| Product: | z_Archived | Reporter: | Kathy Carroll <carrollk> |
| Component: | EDT | Assignee: | Project Inbox <edt.javagen-inbox> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | jeffdouglas |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
| Whiteboard: | |||
I think this is related
Record Status
code int;
reason String;
end
Library LogResult
private s Status;
function logStdOut(logmsg String)
sysLib.writestdout(logmsg);
end
function assertTrue(failedReason String, testCondition boolean in)
logStdOut("AssertionException message");
logStdOut( s.reason);
end
end
getting: Type mismatch: cannot convert from AnyBoxedObject<String> to String
Java code:
public void assertTrue(AnyBoxedObject<String> failedReason, boolean testCondition) {
AnyBoxedObject<String> eze$Temp1 = null;
eze$Temp1 = EglAny.ezeWrap("AssertionException message");
eze_Lib_mine_LogResult().logStdOut(eze$Temp1);
AnyBoxedObject<String> eze$Temp2 = null;
eze$Temp2 = EglAny.ezeWrap(s.reason);
eze_Lib_mine_LogResult().logStdOut(eze$Temp2);
s.reason = eze$Temp2;
}
fixed verified Closing this defect. |
EGL CODE: package explore; library tester {} function testMain(exeLibTestMtd exLibTestMethod, td TestDescription) ms boolean = exeLibTestMtd(td.name); end end Record TestDescription name String; end delegate exLibTestMethod(testName String) returns (boolean) end Java CODE: boolean ms = false; AnyBoxedObject<java.lang.String> eze$Temp1 = null; eze$Temp1 = EglAny.ezeWrap(td.name); ms = (Boolean)exeLibTestMtd.ezeUnbox().invoke(eze$Temp1); td.name = eze$Temp1; Java Error on last line Type mismatch: cannot convert from AnyBoxedObject<String> to String