src/basics.h

changeset 354
91053052bb28
parent 339
4787d05e9c89
child 362
e1d646a4cbd8
equal deleted inserted replaced
353:c229d38f04c6 354:91053052bb28
343 343
344 inline Message logError(const QString text) 344 inline Message logError(const QString text)
345 { 345 {
346 return Message{.time = QDateTime::currentDateTime(), .type = Message::Error, .text = text}; 346 return Message{.time = QDateTime::currentDateTime(), .type = Message::Error, .text = text};
347 } 347 }
348
349 template<typename BaseType, typename MemberType, typename DataType>
350 struct MemberData
351 {
352 std::size_t member;
353 DataType payload;
354 constexpr MemberType memberInstance(BaseType* instance) const
355 {
356 return *reinterpret_cast<MemberType*>(reinterpret_cast<char*>(instance) + this->member);
357 }
358 };

mercurial