Which types should be used in ADT?

Currently it's a mix:

* Most data types use unsigned.
* SetVector use size_type, locally typedef to vector_type::size_type
size_type where vector_type is the template argument to SetVector.
* StringMap use size_type, locally typedef to the global size_t.
* SmallString and StringRef uses size_t.

Yaron




2014-06-06 3:21 GMT+03:00 Richard Smith <[email protected]>:

> On Tue, Jun 3, 2014 at 2:11 PM, Rafael EspĂ­ndola <
> [email protected]> wrote:
>
>> +  /// count -
>>
>> While at it, please drop the name from the comment.
>>
>> I think the patch is OK. Richard, do you know what is the reason the
>> stl uses size_type?
>
>
> I don't know for sure, but probably for consistency and ease of
> specification of the interface.
>
> [It's been like that since Stepanov and Lee's original implementation,
> where the red-black tree implementation shared by set,map,multiset,multimap
> did not distinguish between the unique and non-unique cases in its 'count'
> implementation.]
>
>
>> On 23 December 2013 06:51, Yaron Keren <[email protected]> wrote:
>> > The count() function for STL datatypes returns unsigned, even where it's
>> > only 1/0 result like std::set. Some of the LLVM ADT already return
>> unsigned
>> > count(), while others still return bool count().
>> >
>> > In continuation to r197879, this patch modifies DenseMap, DenseSet,
>> > ScopedHashTable, ValueMap:: count() to return unsigned instead of bool,
>> 1
>> > instead of true and 0 instead of false.
>> >
>> > Yaron
>> >
>> >
>> > _______________________________________________
>> > cfe-commits mailing list
>> > [email protected]
>> > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>> >
>>
>
>
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to