18 if (*P ==
'\r' && *(P + 1) ==
'\n')
28 if (*P ==
'\r' && *(P + 1) ==
'\n') {
37 : Buffer(Buffer.getBufferSize() ? &Buffer : nullptr),
38 CommentMarker(CommentMarker), SkipBlanks(SkipBlanks), LineNumber(1),
39 CurrentLine(Buffer.getBufferSize() ? Buffer.getBufferStart() : nullptr,
51 void line_iterator::advance() {
52 assert(Buffer &&
"Cannot advance past the end!");
54 const char *Pos = CurrentLine.
end();
61 }
else if (CommentMarker ==
'\0') {
70 if (*Pos == CommentMarker)
89 while (Pos[Length] !=
'\0' && !
isAtLineEnd(&Pos[Length])) {
This class represents lattice values for constants.
size_t getBufferSize() const
line_iterator()
Default construct an "end" iterator.
static bool isAtLineEnd(const char *P)
This interface provides simple read-only access to a block of memory, and provides simple methods for...
static bool skipIfAtLineEnd(const char *&P)
const char * getBufferEnd() const
const char * getBufferStart() const
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
StringRef - Represent a constant reference to a string, i.e.