RE: [PHP-DEV] Re: Constants and static methods for internal classes
| From: | Dmitry Stogov | Date: | Tue, 30 Aug 2005 10:57:48 +0000 |
| Subject: | RE: [PHP-DEV] Re: Constants and static methods for internal classes | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-18557@lists.php.net to get a copy of this message | ||
Hi,
> -----Original Message-----
> From: Michael Wallner [mailto:mike@php.net]
> Sent: Tuesday, August 30, 2005 1:56 PM
> To: internals@lists.php.net; Dmitry Stogov
> Cc: internals@lists.php.net; Andi Gutmans
> Subject: [PHP-DEV] Re: Constants and static methods for
> internal classes
>
>
> Hi Dmitry Stogov, you wrote:
>
> > The patch is maden for "easiest" usage and it doesn't
> support internal
> > array/constants properties (they weren't supported before).
>
> So why burden the weigh of allocation, initialization,
> destruction and freeing on the extension developer? This
> will force every extension writer to implement a kind of my
> dup_zval() function, wouldn't it?
Static members works with this patch (except array and constant properties)
without any additional requirements for extension. See test extension in
first email. Developer should just call zend_declare_property_...() or
zend_declare_class_constant_...() in MINIT (no any special allocation,
initialization, destruction and freeing are required).
To support arrays and constants API should be extended with
zend_declare_property_constant()
zend_declare_class_constant_constant()
zend_declare_property_constant_array()
zend_declare_class_constant_constant_array()
init_constant_array()
constant_array_add_assoc_...()
constant_array_index_insert_...()
constant_array_next_inex_insert_...()
Do we need this?
> And as there's not much
> reference devs will spam the list on how to use static
> properties right. I think we could avoid this by stretching
> the minimalistic approach a bit and provide at least a
> zend_init_static_properties().
We already have zend_declare_property_...() those are good enough to declare
both static and non-static properties.
Why we need new functions?
Dmitry.
> Thanks a lot,
> --
> Michael - < mike(@)php.net >
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>