[cfe-commits] [PATCH 3/5] [clang.py] Implement Type.arguments()

Gregory Szorc gregory.szorc at gmail.com
Sun Feb 19 10:55:51 PST 2012


On 2/19/2012 12:49 AM, Tobias Grosser wrote:
> On 02/19/2012 05:39 AM, Gregory Szorc wrote:
>> Does anyone else think that "arguments" may not be the best name?
>> Perhaps "argument_types" would be more suitable...
>
> Yes. I agree. Either name it argument_types, or return a class called
> 'argument' that than has a .type() function. Returning a class is
> probably overhead, as it would only have a single function. I would
> just name the iterator argument_types().
>
> Also, I just realized you define the __iter__(self) method. Why is
> that needed? Diagnostic.ranges() gets away without using it?

argument_types() it is. It seems __iter__ has a default implementation
somewhere (I guess in object). In the current patch, I changed the class
to derive from collections.Sequence. This is more appropriate than
deriving from object and the default implementation of __iter__ there
works as expected (it calls __getitem__ from 0..n until __getitem__
throws IndexError).

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0002-clang.py-Implement-Type.argument_types.patch
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120219/0dd38d8b/attachment.ksh>


More information about the cfe-commits mailing list