Feature #1984
make methods to act as "read-only" attributes
0%
Related issues
History
#1 Updated by Constantin Asofiei over 11 years ago
In 4GL, a code which has a method name as a l-value compiles correctly:
h:get-signature("f0") = "bogus".
and on rutime gets the message:
**GET-SIGNATURE is not a setable attribute for PROCEDURE widget. (4052)
Looks like 4GL treats methods as read-only attributes.
#2 Updated by Constantin Asofiei about 11 years ago
From #1920 (note 76):
GES
1. The read_only_attribute function in common-progress.rules seems like it will be painful to maintain over time, since every time we add support for a new writable attribute, we have to add something there. I'd prefer something more complete. A better approach might be to add a boolean flag into the progress.g sym.addAttributeOrMethod() method call. Then we can use that database to add an annotation at parse time. Whatever we decide, I will have someone else fill out the changes to make things complete (it involves going through every attribute in the 4GL reference and I need you to work on other things). But I want to come up with the best approach as part of your work on this task.
The estimate is:
- for note 1, 10 hours
- for the progress.g changes regarding sym.addAttributeOrMethod() ~20 hours
- for the implementation of the sym.addAttributeOrMethod() related changes: 8 hours