Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:98 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 63854 invoked from network); 18 Mar 2003 22:16:34 -0000 Received: from unknown (HELO carmine.bestweb.net) (209.94.102.73) by pb1.pair.com with SMTP; 18 Mar 2003 22:16:34 -0000 Received: from [192.168.1.100] (unknown [216.179.71.153]) by carmine.bestweb.net (Postfix) with ESMTP id 4A65B2543A; Tue, 18 Mar 2003 17:17:43 -0500 (EST) To: Andrei Zmievski Cc: PHP Internals In-Reply-To: <20030318221048.GA9149@hyperion.gravitonic.com> References: <20030318215420.GA8409@hyperion.gravitonic.com> <20030318215701.GA8449@hyperion.gravitonic.com> <1048024128.26326.4.camel@hasele> <20030318221048.GA9149@hyperion.gravitonic.com> Content-Type: text/plain Organization: Message-ID: <1048024720.26326.9.camel@hasele> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.2.2 Date: 18 Mar 2003 16:58:40 -0500 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] function registration patch From: sterling@bumblebury.com (Sterling Hughes) On Tue, 2003-03-18 at 17:10, Andrei Zmievski wrote: > On Tue, 18 Mar 2003, Sterling Hughes wrote: > > Don't do that. :) > > > > The other problem is (besides what derick said) with Ze2 it is not > > assured that accesses will be lowercased, that's an optional thing. One > > can overload classes, and be CS (I do it with ext/mono). > > I realize that I can overload get_constructor and get_method handlers > and do all that stuff. But, seriously, this is screwed up. Given the > situation where class is "GtkButton", if I specify constructor all > lowercased, it won't be called at all! If I make it the same as the > class name, then "parent::GtkButton" stuff stops working. Something must > be done. You're missing my point. Your patch doesn't allow for one to use get_constructor and get_method handlers to implement case-sensitive handlers, as you are lowercasing the stuff on insert, the patch is limiting. I think the best solution is just to play nice with the engine, register it as "gtkbutton" or "__constructor" in the code itself. Then, add an introspection callback to the engine, which can handle all the accesses to function tables, etc. -Sterling > -Andrei http://www.gravitonic.com/ > > "Everything is a matter of a little programming" -- Rasmus Lerdorf -- -- "That stuff's easy compared to installing horde :)" - Alan Knowles, In response to my applause for creating a LALR parser for PHP.