Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:23985 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 75781 invoked by uid 1010); 7 Jun 2006 22:49:03 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 75766 invoked from network); 7 Jun 2006 22:49:03 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 7 Jun 2006 22:49:03 -0000 X-PHP-List-Original-Sender: helly@php.net X-Host-Fingerprint: 81.169.182.136 ajaxatwork.net Linux 2.4/2.6 Received: from ([81.169.182.136:42323] helo=strato.aixcept.de) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id 13/58-00946-BD757844 for ; Wed, 07 Jun 2006 18:49:00 -0400 Received: from baumbart.mbo (dslb-084-063-006-158.pools.arcor-ip.net [84.63.6.158]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by strato.aixcept.de (Postfix) with ESMTP id 0FA1A35C1EA; Thu, 8 Jun 2006 00:48:56 +0200 (CEST) Date: Thu, 8 Jun 2006 00:49:03 +0200 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <409415054.20060608004903@marcus-boerger.de> To: Hannes Magnusson , Andi Gutmans , Zeev Suraski Cc: internals@lists.php.net In-Reply-To: <7f3ed2c30605291152o2e99b579u6a2b1e38684aaad9@mail.gmail.com> References: <7f3ed2c30605291152o2e99b579u6a2b1e38684aaad9@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] [PATCH] arg_info and friends From: helly@php.net (Marcus Boerger) Hello Hannes, Monday, May 29, 2006, 8:52:51 PM, you wrote: > Hi all > I've created a patch[1] that welcomes new friend into the > zend_arg_info family, resource, and a new flag for ZEND_ME_MAPPING and > pals, ZEND_ACC_INFO_MAP_TO_FUNCTION. > The idea is to make it easier to define argument info for those > extensions who map methods to functions which require some kind of > resource as its first argument. > Since the methods don't take any resource argument one would need to > define two arg_info, one for the function and one for the method, with > the only difference being the first parameter. > This patch lets you however define the first argument as a resource > (ZEND_ARG_RESOURCE_INFO) and then when you register the method you can > pass the ZEND_ACC_INFO_MAP_TO_FUNCTION flag so the first argument > (*if* it's defined as resource) will be skipped. > On a related note, I find it kinda silly we don't offer argument info > (except from spl) so I made a patch for ext/dom[2], ext/xsl[3] and > ext/reflection[4]. > I'd like to take down the rest, of at least the OO once.. > Any thoughts? > -Hannes > [1] http://php.is/bugs/arg_info/ZEND_ARG_RESOURCE.HEAD.patch.txt > [2] http://php.is/bugs/arg_info/arginfo.dom.patch.txt > [3] http://php.is/bugs/arg_info/arginfo.xsl.patch.txt > [4] http://php.is/bugs/arg_info/arginfo.reflection.patch.txt I comitted the last one and you have commit rights so you can apply the rest to php-src. For the engine stuff you still need somebody else to commit but first you need to discuss the change. To me that patch looks good, though i'd change ZEND_ACC_INFO_MAP_TO_FUNCTION to ZEND_ACC_MAP_TO_FUNCTION. Andi, Zeev? Best regards, Marcus