summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
f78488b)
No functional change.
Signed-off-by: Marco Costalba <mcostalba@gmail.com>
-/// Book::get_number() reads sizeof(T) chars from the file's binary byte
+/// Book::operator>>() reads sizeof(T) chars from the file's binary byte
/// stream and converts them in a number of type T.
template<typename T>
/// stream and converts them in a number of type T.
template<typename T>
-void Book::get_number(T& n) {
+Book& Book::operator>>(T& n) {
n = 0;
for (size_t i = 0; i < sizeof(T); i++)
n = (n << 8) + (T)bookFile.get();
n = 0;
for (size_t i = 0; i < sizeof(T); i++)
n = (n << 8) + (T)bookFile.get();
bookFile.seekg(idx * sizeof(BookEntry), ios_base::beg);
bookFile.seekg(idx * sizeof(BookEntry), ios_base::beg);
- get_number(e.key);
- get_number(e.move);
- get_number(e.count);
- get_number(e.learn);
+ *this >> e.key >> e.move >> e.count >> e.learn;
const std::string name() const { return bookName; }
private:
const std::string name() const { return bookName; }
private:
- template<typename T> void get_number(T& n);
+ template<typename T> Book& operator>>(T& n);
BookEntry read_entry(int idx);
int find_entry(uint64_t key);
BookEntry read_entry(int idx);
int find_entry(uint64_t key);