Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:23987 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 4613 invoked by uid 1010); 8 Jun 2006 10:37:14 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 4598 invoked from network); 8 Jun 2006 10:37:14 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 8 Jun 2006 10:37:14 -0000 X-PHP-List-Original-Sender: hannes.magnusson@gmail.com X-Host-Fingerprint: 66.249.82.202 wx-out-0102.google.com Linux 2.4/2.6 Received: from ([66.249.82.202:34324] helo=wx-out-0102.google.com) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id 17/6A-00946-9DDF7844 for ; Thu, 08 Jun 2006 06:37:13 -0400 Received: by wx-out-0102.google.com with SMTP id s14so321475wxc for ; Thu, 08 Jun 2006 03:37:09 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=onB2Q7Oh3VX8RKZlS1veSxgY5f88Lmr1d6q5PoYVxM/qPrDvlJKoanLoI6gi60Kl320O7qegIUzYanabKOQbaSBhuoYV2XV7g3thsphMdsES0tENmpSWmXJcnsDndqDXVHTHlqahdIGGUQU6kpzzGTkqYz+kT0WWWCz4n7xHouw= Received: by 10.70.95.1 with SMTP id s1mr1876370wxb; Thu, 08 Jun 2006 03:37:09 -0700 (PDT) Received: by 10.70.91.5 with HTTP; Thu, 8 Jun 2006 03:37:09 -0700 (PDT) Message-ID: <7f3ed2c30606080337t67779ba3rfa266232506520cf@mail.gmail.com> Date: Thu, 8 Jun 2006 12:37:09 +0200 Sender: hannes.magnusson@gmail.com To: "Marcus Boerger" Cc: "Andi Gutmans" , "Zeev Suraski" , internals@lists.php.net In-Reply-To: <409415054.20060608004903@marcus-boerger.de> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <7f3ed2c30605291152o2e99b579u6a2b1e38684aaad9@mail.gmail.com> <409415054.20060608004903@marcus-boerger.de> X-Google-Sender-Auth: 58d8536dba2aa082 Subject: Re: [PHP-DEV] [PATCH] arg_info and friends From: bjori@php.net ("Hannes Magnusson") Hi Marcus On 6/8/06, Marcus Boerger wrote: > 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. Thanks! :) > 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? I think ZEND_ACC_MAP_TO_FUNCTION sound like it does more then filter the arginfo..., ZEND_ACC_INFO_MAP_TO_FUNCTION is more clear, imo, that it "only cares about" the arginfo. -Hannes