Skip to content

Commit b9b6174

Browse files
authored
Merge branch 'main' into add-override
2 parents dc04d03 + 3031e4a commit b9b6174

File tree

7 files changed

+41
-33
lines changed

7 files changed

+41
-33
lines changed

include/dmlc/io.h

+6-5
Original file line numberDiff line numberDiff line change
@@ -32,16 +32,17 @@ class Stream { // NOLINT(*)
3232
/*!
3333
* \brief reads data from a stream
3434
* \param ptr pointer to a memory buffer
35-
* \param size block size
36-
* \return the size of data read
35+
* \param size The maximum number of bytes to read
36+
* \return The number of bytes read from the stream
3737
*/
38-
virtual size_t Read(void *ptr, size_t size) = 0;
38+
virtual size_t Read(void* ptr, size_t size) = 0;
3939
/*!
4040
* \brief writes data to a stream
4141
* \param ptr pointer to a memory buffer
42-
* \param size block size
42+
* \param size The maximum number of bytes to write
43+
* \return The number of bytes written
4344
*/
44-
virtual void Write(const void *ptr, size_t size) = 0;
45+
virtual size_t Write(const void* ptr, size_t size) = 0;
4546
/*! \brief virtual destructor */
4647
virtual ~Stream(void) {}
4748
/*!

include/dmlc/memory_io.h

+12-10
Original file line numberDiff line numberDiff line change
@@ -30,23 +30,24 @@ struct MemoryFixedSizeStream : public SeekStream {
3030
buffer_size_(buffer_size) {
3131
curr_ptr_ = 0;
3232
}
33-
virtual size_t Read(void *ptr, size_t size) {
33+
virtual size_t Read(void *ptr, size_t size) override {
3434
CHECK(curr_ptr_ + size <= buffer_size_);
3535
size_t nread = std::min(buffer_size_ - curr_ptr_, size);
3636
if (nread != 0) std::memcpy(ptr, p_buffer_ + curr_ptr_, nread);
3737
curr_ptr_ += nread;
3838
return nread;
3939
}
40-
virtual void Write(const void *ptr, size_t size) {
41-
if (size == 0) return;
40+
virtual size_t Write(const void *ptr, size_t size) override {
41+
if (size == 0) return 0;
4242
CHECK(curr_ptr_ + size <= buffer_size_);
4343
std::memcpy(p_buffer_ + curr_ptr_, ptr, size);
4444
curr_ptr_ += size;
45+
return size;
4546
}
46-
virtual void Seek(size_t pos) {
47+
virtual void Seek(size_t pos) override {
4748
curr_ptr_ = static_cast<size_t>(pos);
4849
}
49-
virtual size_t Tell(void) {
50+
virtual size_t Tell(void) override {
5051
return curr_ptr_;
5152
}
5253

@@ -73,25 +74,26 @@ struct MemoryStringStream : public dmlc::SeekStream {
7374
: p_buffer_(p_buffer) {
7475
curr_ptr_ = 0;
7576
}
76-
virtual size_t Read(void *ptr, size_t size) {
77+
virtual size_t Read(void *ptr, size_t size) override {
7778
CHECK(curr_ptr_ <= p_buffer_->length());
7879
size_t nread = std::min(p_buffer_->length() - curr_ptr_, size);
7980
if (nread != 0) std::memcpy(ptr, &(*p_buffer_)[0] + curr_ptr_, nread);
8081
curr_ptr_ += nread;
8182
return nread;
8283
}
83-
virtual void Write(const void *ptr, size_t size) {
84-
if (size == 0) return;
84+
virtual size_t Write(const void *ptr, size_t size) override {
85+
if (size == 0) return 0;
8586
if (curr_ptr_ + size > p_buffer_->length()) {
8687
p_buffer_->resize(curr_ptr_+size);
8788
}
8889
std::memcpy(&(*p_buffer_)[0] + curr_ptr_, ptr, size);
8990
curr_ptr_ += size;
91+
return size;
9092
}
91-
virtual void Seek(size_t pos) {
93+
virtual void Seek(size_t pos) override {
9294
curr_ptr_ = static_cast<size_t>(pos);
9395
}
94-
virtual size_t Tell(void) {
96+
virtual size_t Tell(void) override {
9597
return curr_ptr_;
9698
}
9799

src/config.cc

+2-2
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ struct Token {
1919
class TokenizeError : public exception {
2020
public:
2121
explicit TokenizeError(const string& msg = "tokenize error"): msg_(msg) { }
22-
~TokenizeError() throw() {}
23-
virtual const char* what() const throw() {
22+
~TokenizeError() noexcept {}
23+
virtual const char* what() const noexcept {
2424
return msg_.c_str();
2525
}
2626
private:

src/io/hdfs_filesys.cc

+5-4
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ class HDFSStream : public SeekStream {
2828
}
2929
}
3030

31-
virtual size_t Read(void *ptr, size_t size) {
31+
virtual size_t Read(void *ptr, size_t size) override {
3232
char *buf = static_cast<char*>(ptr);
3333
size_t nleft = size;
3434
size_t nmax = static_cast<size_t>(std::numeric_limits<tSize>::max());
@@ -48,7 +48,7 @@ class HDFSStream : public SeekStream {
4848
return size - nleft;
4949
}
5050

51-
virtual void Write(const void *ptr, size_t size) {
51+
virtual size_t Write(const void *ptr, size_t size) override {
5252
const char *buf = reinterpret_cast<const char*>(ptr);
5353
size_t nleft = size;
5454
// When using builtin-java classes to write, the maximum write size
@@ -70,14 +70,15 @@ class HDFSStream : public SeekStream {
7070
LOG(FATAL) << "HDFSStream.hdfsWrite Error:" << strerror(errsv);
7171
}
7272
}
73+
return size - nleft;
7374
}
74-
virtual void Seek(size_t pos) {
75+
virtual void Seek(size_t pos) override {
7576
if (hdfsSeek(fs_, fp_, pos) != 0) {
7677
int errsv = errno;
7778
LOG(FATAL) << "HDFSStream.hdfsSeek Error:" << strerror(errsv);
7879
}
7980
}
80-
virtual size_t Tell(void) {
81+
virtual size_t Tell(void) override {
8182
tOffset offset = hdfsTell(fs_, fp_);
8283
if (offset == -1) {
8384
int errsv = errno;

src/io/local_filesys.cc

+5-4
Original file line numberDiff line numberDiff line change
@@ -31,21 +31,22 @@ class FileStream : public SeekStream {
3131
virtual ~FileStream(void) {
3232
this->Close();
3333
}
34-
virtual size_t Read(void *ptr, size_t size) {
34+
virtual size_t Read(void *ptr, size_t size) override {
3535
return std::fread(ptr, 1, size, fp_);
3636
}
37-
virtual void Write(const void *ptr, size_t size) {
37+
virtual size_t Write(const void *ptr, size_t size) override {
3838
CHECK(std::fwrite(ptr, 1, size, fp_) == size)
3939
<< "FileStream.Write incomplete";
40+
return 0;
4041
}
41-
virtual void Seek(size_t pos) {
42+
virtual void Seek(size_t pos) override {
4243
#ifndef _MSC_VER
4344
CHECK(!std::fseek(fp_, static_cast<long>(pos), SEEK_SET)); // NOLINT(*)
4445
#else // _MSC_VER
4546
CHECK(!_fseeki64(fp_, pos, SEEK_SET));
4647
#endif // _MSC_VER
4748
}
48-
virtual size_t Tell(void) {
49+
virtual size_t Tell(void) override {
4950
#ifndef _MSC_VER
5051
return std::ftell(fp_);
5152
#else // _MSC_VER

src/io/s3_filesys.cc

+9-7
Original file line numberDiff line numberDiff line change
@@ -424,23 +424,24 @@ class CURLReadStreamBase : public SeekStream {
424424
virtual ~CURLReadStreamBase() {
425425
this->Cleanup();
426426
}
427-
virtual size_t Tell(void) {
427+
virtual size_t Tell(void) override {
428428
return curr_bytes_;
429429
}
430430
virtual bool AtEnd(void) const {
431431
return at_end_;
432432
}
433-
virtual void Write(const void *ptr, size_t size) {
433+
virtual size_t Write(const void *ptr, size_t size) override {
434434
LOG(FATAL) << "CURL.ReadStream cannot be used for write";
435+
return 0;
435436
}
436437
// lazy seek function
437-
virtual void Seek(size_t pos) {
438+
virtual void Seek(size_t pos) override {
438439
if (curr_bytes_ != pos) {
439440
this->Cleanup();
440441
curr_bytes_ = pos;
441442
}
442443
}
443-
virtual size_t Read(void *ptr, size_t size);
444+
virtual size_t Read(void *ptr, size_t size) override ;
444445

445446
protected:
446447
CURLReadStreamBase()
@@ -790,11 +791,11 @@ class WriteStream : public Stream {
790791
ecurl_ = curl_easy_init();
791792
this->Init();
792793
}
793-
virtual size_t Read(void *ptr, size_t size) {
794+
virtual size_t Read(void *ptr, size_t size) override {
794795
LOG(FATAL) << "S3.WriteStream cannot be used for read";
795796
return 0;
796797
}
797-
virtual void Write(const void *ptr, size_t size);
798+
virtual size_t Write(const void *ptr, size_t size) override;
798799
// destructor
799800
virtual ~WriteStream() {
800801
this->Close();
@@ -863,13 +864,14 @@ class WriteStream : public Stream {
863864
void Finish(void);
864865
};
865866

866-
void WriteStream::Write(const void *ptr, size_t size) {
867+
size_t WriteStream::Write(const void *ptr, size_t size) {
867868
size_t rlen = buffer_.length();
868869
buffer_.resize(rlen + size);
869870
std::memcpy(BeginPtr(buffer_) + rlen, ptr, size);
870871
if (buffer_.length() >= max_buffer_size_) {
871872
this->Upload();
872873
}
874+
return size;
873875
}
874876

875877
void WriteStream::Run(const std::string &method,

src/io/single_file_split.h

+2-1
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,9 @@ class SingleFileSplit : public InputSplit {
7070
CHECK(part_index == 0 && num_parts == 1);
7171
this->BeforeFirst();
7272
}
73-
virtual void Write(const void * /*ptr*/, size_t /*size*/) {
73+
virtual size_t Write(const void * /*ptr*/, size_t /*size*/) {
7474
LOG(FATAL) << "InputSplit do not support write";
75+
return 0;
7576
}
7677
virtual bool NextRecord(Blob *out_rec) {
7778
if (chunk_begin_ == chunk_end_) {

0 commit comments

Comments
 (0)