Add method raw_fd_ostream::seek() for random access within a file.
llvm-svn: 63044
This commit is contained in:
parent
99113fd577
commit
a26699211d
|
@ -181,7 +181,11 @@ public:
|
|||
/// tell - Return the current offset with the file.
|
||||
uint64_t tell() {
|
||||
return pos + (OutBufCur - OutBufStart);
|
||||
}
|
||||
}
|
||||
|
||||
/// seek - Flushes the stream and repositions the underlying file descriptor
|
||||
/// positition to the offset specified from the beginning of the file.
|
||||
uint64_t seek(uint64_t off);
|
||||
};
|
||||
|
||||
/// raw_stdout_ostream - This is a stream that always prints to stdout.
|
||||
|
|
|
@ -255,6 +255,12 @@ void raw_fd_ostream::close() {
|
|||
FD = -1;
|
||||
}
|
||||
|
||||
uint64_t raw_fd_ostream::seek(uint64_t off) {
|
||||
flush();
|
||||
pos = lseek(FD, off, SEEK_SET);
|
||||
return pos;
|
||||
}
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// raw_stdout/err_ostream
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
|
Loading…
Reference in New Issue