From: Dan Gohman Date: Tue, 22 Jun 2010 13:57:08 +0000 (+0000) Subject: Add a comment explaining a non-obvious API. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=30f30e43861512d78023c84952e5e524c0003ae9;p=oota-llvm.git Add a comment explaining a non-obvious API. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106539 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Support/MemoryBuffer.h b/include/llvm/Support/MemoryBuffer.h index 38f61935d97..0b6cd12f6f4 100644 --- a/include/llvm/Support/MemoryBuffer.h +++ b/include/llvm/Support/MemoryBuffer.h @@ -26,6 +26,11 @@ namespace llvm { /// into a memory buffer. In addition to basic access to the characters in the /// file, this interface guarantees you can read one character past the end of /// the file, and that this character will read as '\0'. +/// +/// The '\0' guarantee is needed to support an optimization -- it's intended to +/// be more efficient for clients which are reading all the data to stop +/// reading when they encounter a '\0' than to continually check the file +/// position to see if it has reached the end of the file. class MemoryBuffer { const char *BufferStart; // Start of the buffer. const char *BufferEnd; // End of the buffer.