Without this patch, lib.clang_getNumCompletionChunks is called at
each _iteration_ of a 'for chunk in CompletionString' loop. Now we
call it just once.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162200
91177308-0d34-0410-b5e6-
96231b3b80d8
return "<Availability: %s>" % self
def __len__(self):
+ self.num_chunks
+
+ @CachedProperty
+ def num_chunks(self):
return lib.clang_getNumCompletionChunks(self.obj)
def __getitem__(self, key):
- if len(self) <= key:
+ if self.num_chunks <= key:
raise IndexError
return CompletionChunk(self.obj, key)