mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-05-02 07:05:38 +08:00
refs #437 Adjust static assert, caught one more case of CVariant containing CVariant.
This commit is contained in:
@@ -149,7 +149,7 @@ namespace BlackMisc
|
|||||||
bool isEmpty() const { return this->m_values.isEmpty(); }
|
bool isEmpty() const { return this->m_values.isEmpty(); }
|
||||||
|
|
||||||
//! Value
|
//! Value
|
||||||
CVariant value(const CPropertyIndex &index) const { return CVariant::from(this->m_values.value(index)); }
|
CVariant value(const CPropertyIndex &index) const { return this->m_values.value(index); }
|
||||||
|
|
||||||
//! Set value
|
//! Set value
|
||||||
void value(const CPropertyIndex &index, const CVariant &value) { this->m_values.value(index, value); }
|
void value(const CPropertyIndex &index, const CVariant &value) { this->m_values.value(index, value); }
|
||||||
|
|||||||
@@ -174,14 +174,14 @@ namespace BlackMisc
|
|||||||
//! Construct a variant from a value.
|
//! Construct a variant from a value.
|
||||||
template <typename T> static CVariant fromValue(T &&value)
|
template <typename T> static CVariant fromValue(T &&value)
|
||||||
{
|
{
|
||||||
static_assert(!std::is_same<CVariant, T>::value, "CVariant is an illegal type!");
|
static_assert(!std::is_same<CVariant, typename std::decay<T>::type>::value, "CVariant is an illegal type!");
|
||||||
return CVariant(QVariant::fromValue(std::forward<T>(value)));
|
return CVariant(QVariant::fromValue(std::forward<T>(value)));
|
||||||
}
|
}
|
||||||
|
|
||||||
//! Synonym for fromValue().
|
//! Synonym for fromValue().
|
||||||
template <typename T> static CVariant from(T &&value)
|
template <typename T> static CVariant from(T &&value)
|
||||||
{
|
{
|
||||||
static_assert(!std::is_same<CVariant, T>::value, "CVariant is an illegal type!");
|
static_assert(!std::is_same<CVariant, typename std::decay<T>::type>::value, "CVariant is an illegal type!");
|
||||||
return CVariant(QVariant::fromValue(std::forward<T>(value)));
|
return CVariant(QVariant::fromValue(std::forward<T>(value)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user