[LLVMdev] Some enhancements to ImmutableSet and FoldingSet

Ted Kremenek kremenek at apple.com
Wed Feb 11 21:18:08 PST 2009


On Feb 11, 2009, at 8:53 PM, Ben Laurie wrote:

> On Thu, Feb 12, 2009 at 4:47 AM, Ted Kremenek <kremenek at apple.com>  
> wrote:
>> On Feb 11, 2009, at 8:14 PM, Ben Laurie wrote:
>>
>>> On Wed, Feb 11, 2009 at 8:24 PM, Ted Kremenek <kremenek at apple.com>  
>>> wrote:
>>>>
>>>> Actually, neither of these methods are needed for ImmutableSet.
>>>> ImmutableSet already has an 'isEmpty()' method and I have never  
>>>> really
>>>> seen
>>>> a case where "size()" needs to be explicitly calculated.  If you  
>>>> need
>>>> size()
>>>> itself, however, this seems like a perfectly valid addition.
>>>
>>> I need to check for size() == 1 (in order to test whether a range  
>>> set
>>> has a single possible value).
>>
>> Ah.  If that is the case, we can implement a 'isSingleton()' method  
>> with
>> constant time performance (i.e., check if we have a root, and check  
>> that the
>> root has no children).  Would that work?
>
> Sure would!


Hi Ben,

I think this should work:

http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090209/073634.html

If you find it isn't doing the right thing just let me know.

Ted



More information about the llvm-dev mailing list