Jonas Maebe schrieb:
Error: Only class methods, class properties and class variables can be
referred with class references
You have to declare an instance and then call its property. You don't
have to instantiate the instance if the property maps to a class method.
Technically there's some obstacle to allow such construct?
As long as a method doesn't use Self, directly or implicitly, the
absence of an object reference does not cause problems.
Class properties should be accessible from within static class methods.
Having them accessible depending on the getter/setter they use (static
or not) would break orthogonality (the visibility/usability must depend
on the interface, not on the implementation of the interface).
This would mean that in legacy code the non-virtual methods have to be
separated now, into non-virtual, static, class and static class methods,
in order to keep the code compiling?
Non-static class methods cannot be called from static class methods
because you don't know the original class type that was used to call it
(and hence this could have unexpected results).
Does this mean that the new static class methods don't have an Self
parameter?
DoDi
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel