I disagree with you. Most getter functions only do that, get the value without changing anything, but are functions because the resulting value is processed.
A property getter function, can, but should not, change anything.
Even if the getter changes something, it´s up to you, as a developer, to inspect such property or not... I use this every day on Delphi and, in my work, is an invaluable tool, that lazarus should have. May be, for people like you, in the debugger options page, could be an option to disable this funcionatility for tooltip debugging or for all the debugging, but this should be enabled by default.

This is only my point of view.

Horacio

Martin escribió:

Properties that have a function to provide the value can not be inspected.
* And I am more than happy they can not *

Yes Delphi can do this and does do this. And what does it mean? If in Delphi I accidentally hover the mouse over a property, The function is called (actually Delphi calls it twice). As a result all Values on the object change (because many functions do more than just read values, they update values too). The application is in a state that is no longer correct (because the values have changed to something they where not supposed to be). And I have to abort my debug session and start over. What help is that?

What help is it when an IDE (Delphi) silently and without warning does things that change the state of my application. How can I expect any results from debugging if the IDE messes around in such ways with the application that I debug?


As far as I am aware the purpose of debugging is to get the same results as in a normal execution. This is unless I intentionally and explicitly ask the debugger/IDE to modify the data.



--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to