Project

General

Profile

Bug #4824

Updated by Greg Shah almost 4 years ago

If we have a property defined as an indeterminate extent the generated code doesn't (fully) work. It will generate a 'getter' that have one input parameter (int64) and two methods @lengthOf@ and @resize@ for the property. Those seems to solve the use case when items from the array are being accessed as well as finding out the length or resize the array. There is nothing that returns the whole array:

<pre>
public object<? extends com.goldencode.p2j.oo.lang._BaseObject_> getValue_1(final int64 _idx);
</pre>

Shouldn't something like this be added as well?
<pre>
public object<? extends com.goldencode.p2j.oo.lang._BaseObject_>[] getValue_1();
</pre>

This is how the call is being made when accessing that property, not just one element of the array:
<pre>
oaObject[0] = (object<? extends _BaseObject_>[]) assignMulti(oaObject[0], inst.ref().getValue_1());
</pre>

Well, I'm cheating here since the generated code uses the 4GL class name (Progress.Lang.Object) instead of the FWD equivalent (_BaseObject_) but I think we already reported that one.

Back