Allow moving of string converter objects
They are still not copyable, but can be moved. Change-Id: Id66e35be4ecdaa781ecb9212d646d224b1767913 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
7b93bedb60
commit
99632c2217
@ -66,6 +66,25 @@ public:
|
||||
constexpr State(Flags f = DefaultConversion)
|
||||
: flags(f), state_data{0, 0, 0, 0} {}
|
||||
~State() { clear(); }
|
||||
State(State &&other)
|
||||
: flags(other.flags),
|
||||
remainingChars(other.remainingChars),
|
||||
invalidChars(other.invalidChars),
|
||||
d{other.d[0], other.d[1]},
|
||||
clearFn(other.clearFn)
|
||||
{ other.clearFn = nullptr; }
|
||||
State &operator=(State &&other)
|
||||
{
|
||||
clear();
|
||||
flags = other.flags;
|
||||
remainingChars = other.remainingChars;
|
||||
invalidChars = other.invalidChars;
|
||||
d[0] = other.d[0];
|
||||
d[1] = other.d[1];
|
||||
clearFn = other.clearFn;
|
||||
other.clearFn = nullptr;
|
||||
return *this;
|
||||
}
|
||||
Q_CORE_EXPORT void clear();
|
||||
|
||||
Flags flags;
|
||||
|
Loading…
Reference in New Issue
Block a user