mirror of
https://github.com/eried/portapack-mayhem.git
synced 2025-05-17 06:02:19 -04:00
File: Remove puts(), add write_line(), cascade changes in interface.
This commit is contained in:
parent
c2d971d59e
commit
ffa797b926
5 changed files with 26 additions and 21 deletions
|
@ -101,13 +101,18 @@ File::Result<uint64_t> File::seek(const uint64_t new_position) {
|
||||||
return { static_cast<uint64_t>(old_position) };
|
return { static_cast<uint64_t>(old_position) };
|
||||||
}
|
}
|
||||||
|
|
||||||
File::Result<size_t> File::puts(const std::string& string) {
|
Optional<File::Error> File::write_line(const std::string& s) {
|
||||||
const auto result = f_puts(string.c_str(), &f);
|
const auto result_s = write(s.c_str(), s.size());
|
||||||
if( result >= 0 ) {
|
if( result_s.is_error() ) {
|
||||||
return { static_cast<size_t>(result) };
|
return { result_s.error() };
|
||||||
} else {
|
|
||||||
return { static_cast<Error>(FR_EOF) };
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const auto result_crlf = write("\r\n", 2);
|
||||||
|
if( result_crlf.is_error() ) {
|
||||||
|
return { result_crlf.error() };
|
||||||
|
}
|
||||||
|
|
||||||
|
return { };
|
||||||
}
|
}
|
||||||
|
|
||||||
Optional<File::Error> File::sync() {
|
Optional<File::Error> File::sync() {
|
||||||
|
|
|
@ -207,7 +207,7 @@ public:
|
||||||
return write(data.data(), N);
|
return write(data.data(), N);
|
||||||
}
|
}
|
||||||
|
|
||||||
Result<size_t> puts(const std::string& string);
|
Optional<Error> write_line(const std::string& s);
|
||||||
|
|
||||||
// TODO: Return Result<>.
|
// TODO: Return Result<>.
|
||||||
Optional<Error> sync();
|
Optional<Error> sync();
|
||||||
|
|
|
@ -23,15 +23,15 @@
|
||||||
|
|
||||||
#include "string_format.hpp"
|
#include "string_format.hpp"
|
||||||
|
|
||||||
File::Result<size_t> LogFile::write_entry(const rtc::RTC& datetime, const std::string& entry) {
|
Optional<File::Error> LogFile::write_entry(const rtc::RTC& datetime, const std::string& entry) {
|
||||||
std::string timestamp = to_string_timestamp(datetime);
|
std::string timestamp = to_string_timestamp(datetime);
|
||||||
return write(timestamp + " " + entry + "\r\n");
|
return write_line(timestamp + " " + entry);
|
||||||
}
|
}
|
||||||
|
|
||||||
File::Result<size_t> LogFile::write(const std::string& message) {
|
Optional<File::Error> LogFile::write_line(const std::string& message) {
|
||||||
auto puts_result = file.puts(message);
|
auto error = file.write_line(message);
|
||||||
if( puts_result.is_ok() ) {
|
if( !error.is_valid() ) {
|
||||||
file.sync();
|
file.sync();
|
||||||
}
|
}
|
||||||
return puts_result;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,12 +35,12 @@ public:
|
||||||
return file.append(filename);
|
return file.append(filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
File::Result<size_t> write_entry(const rtc::RTC& datetime, const std::string& entry);
|
Optional<File::Error> write_entry(const rtc::RTC& datetime, const std::string& entry);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
File file;
|
File file;
|
||||||
|
|
||||||
File::Result<size_t> write(const std::string& message);
|
Optional<File::Error> write_line(const std::string& message);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif/*__LOG_FILE_H__*/
|
#endif/*__LOG_FILE_H__*/
|
||||||
|
|
|
@ -320,13 +320,13 @@ Optional<File::Error> RecordView::write_metadata_file(const std::string& filenam
|
||||||
if( create_error.is_valid() ) {
|
if( create_error.is_valid() ) {
|
||||||
return create_error;
|
return create_error;
|
||||||
} else {
|
} else {
|
||||||
const auto puts_result1 = file.puts("sample_rate=" + to_string_dec_uint(sampling_rate) + "\n");
|
const auto error_line1 = file.write_line("sample_rate=" + to_string_dec_uint(sampling_rate));
|
||||||
if( puts_result1.is_error() ) {
|
if( error_line1.is_valid() ) {
|
||||||
return { puts_result1.error() };
|
return error_line1;
|
||||||
}
|
}
|
||||||
const auto puts_result2 = file.puts("center_frequency=" + to_string_dec_uint(receiver_model.tuning_frequency()) + "\n");
|
const auto error_line2 = file.write_line("center_frequency=" + to_string_dec_uint(receiver_model.tuning_frequency()));
|
||||||
if( puts_result2.is_error() ) {
|
if( error_line2.is_valid() ) {
|
||||||
return { puts_result2.error() };
|
return error_line2;
|
||||||
}
|
}
|
||||||
return { };
|
return { };
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue