Rename "reverse_endianness" to "endian_reverse". Shorter but still plenty explicit. See bikeshed.txt for alternatives considered.

This commit is contained in:
Beman
2014-12-10 08:30:30 -05:00
parent e4466edf4e
commit dcca2835a9
8 changed files with 191 additions and 182 deletions
+34 -32
View File
@@ -20,52 +20,54 @@ using std::cout;
using std::endl;
using boost::int32_t;
class UDT
namespace user
{
public:
UDT() : id_(0), value_(0.0) {desc_[0] = '\0';}
UDT(int32_t id, float value, const char* desc) : id_(id), value_(value)
class UDT
{
std::strncpy(desc_, desc, sizeof(desc_)-1);
desc_[sizeof(desc_)-1] = '\0';
}
int32_t id() const {return id_;}
float value() const {return value_;}
const char* desc() const {return desc_;}
void id(int32_t x) {id_ = x;}
void value(float v) {value_ = v;}
void desc(const char* s)
public:
UDT() : id_(0), value_(0.0) {desc_[0] = '\0';}
UDT(int32_t id, float value, const char* desc) : id_(id), value_(value)
{
std::strncpy(desc_, desc, sizeof(desc_)-1);
desc_[sizeof(desc_)-1] = '\0';
}
int32_t id() const {return id_;}
float value() const {return value_;}
const char* desc() const {return desc_;}
void id(int32_t x) {id_ = x;}
void value(float v) {value_ = v;}
void desc(const char* s)
{
std::strncpy(desc_, s, sizeof(desc_)-1);
desc_[sizeof(desc_-1)] = '\0';
}
friend void endian_reverse_in_place(UDT&);
private:
int32_t id_;
float value_;
char desc_[56]; // '/0'
};
void endian_reverse_in_place(UDT& x)
{
std::strncpy(desc_, s, sizeof(desc_)-1);
desc_[sizeof(desc_-1)] = '\0';
boost::endian::endian_reverse_in_place(x.id_);
boost::endian::endian_reverse_in_place(x.value_);
}
friend UDT reverse_endianness(const UDT&);
friend void reverse_endianness_in_place(UDT&);
private:
int32_t id_;
float value_;
char desc_[56]; // '/0'
};
void reverse_endianness_in_place(UDT& x)
{
reverse_endianness_in_place(x.id_);
reverse_endianness_in_place(x.value_);
}
int main(int, char* [])
{
UDT x(1, 1.2345f, "Bingo!");
user::UDT x(1, 1.2345f, "Bingo!");
//cout << std::hex;
cout << "(1) " << x.id() << ' ' << x.value() << ' ' << x.desc() << endl;
reverse_endianness_in_place(x);
user::endian_reverse_in_place(x);
cout << "(2) " << x.id() << ' ' << x.value() << ' ' << x.desc() << endl;
reverse_endianness_in_place(x);
endian_reverse_in_place(x);
cout << "(3) " << x.id() << ' ' << x.value() << ' ' << x.desc() << endl;
conditional_reverse_in_place<order::little, order::big>(x);