Feature #6161
add support for DYNAMIC-PROPERTY() built-in function and DYNAMIC-PROPERTY language statement
70%
Related issues
History
#1 Updated by Greg Shah over 2 years ago
- Related to Feature #4373: finish core OO 4GL support added
#2 Updated by Constantin Asofiei about 2 years ago
6129a/13888 adds runtime support for DYNAMIC-PROPERTY getter and setter. Not all argument validation is implemented.
#3 Updated by Greg Shah about 2 years ago
- % Done changed from 0 to 70
Conversion support had previously been added in branch 6129a as part of #6277.
#5 Updated by Constantin Asofiei about 1 month ago
- Assignee set to Constantin Asofiei
- Status changed from New to Review
Created task branch 6161a from trunk rev 15222. rev 15223 fixed validation of the DYNAMIC-PROPERTY arguments for statement and function. Refs #8433
#6 Updated by Greg Shah about 1 month ago
Code Review Task Branch 6161a Revision 15222
The changes look good.
The only concern I have is about performance. In ObjectOps.validDynamicPropertyArgs()
there will be 2 SourceNameMapper
calls for scalar props and 5 for extent props. This plus additional context lookups and some reflection usage makes me worry that this will cause a noticable slowdown.
#7 Updated by Constantin Asofiei about 1 month ago
I've moved the bulk getter/setter to be resolved only if no indexed setter/getter is resolved at all. I'm not sure what else to do at this point.
#8 Updated by Greg Shah about 1 month ago
I think we just watch it in case it becomes a hotspot. One solution would be to group all the details of a property into a single data structure that is returned on the first call. Then the details can be accessed as needed without further calls.
#9 Updated by Greg Shah about 1 month ago
- Status changed from Review to Internal Test
What testing do you propose?
#10 Updated by Constantin Asofiei about 1 month ago
Greg Shah wrote:
What testing do you propose?
DYNAMIC-PROPERTY is not being used in other projects than #8433. Standalone tests are OK.
#11 Updated by Greg Shah about 1 month ago
- Status changed from Internal Test to Merge Pending
You can merge to trunk after 7417b.
#12 Updated by Constantin Asofiei about 1 month ago
Branch 6161a was merged to trunk rev 15229 and archived.