mirror of
https://github.com/g-truc/glm.git
synced 2024-11-23 01:14:34 +00:00
Merge branch '0.9.3' into swizzle
This commit is contained in:
commit
b4206636b7
@ -165,82 +165,101 @@ namespace detail
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator=
|
||||
(
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x = T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator+=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x += s;
|
||||
this->x += T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator+=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x += v.x;
|
||||
this->x += T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator-=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x -= s;
|
||||
this->x -= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator-=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x -= v.x;
|
||||
this->x -= T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator*=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x *= s;
|
||||
this->x *= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator*=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x *= v.x;
|
||||
this->x *= T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator/=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x /= s;
|
||||
this->x /= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator/=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x /= v.x;
|
||||
this->x /= T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
@ -285,122 +304,134 @@ namespace detail
|
||||
// Unary bit operators
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator%=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x %= s;
|
||||
this->x %= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator%=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x %= v.x;
|
||||
this->x %= T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator&=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x &= s;
|
||||
this->x &= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator&=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x &= v.x;
|
||||
this->x &= T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator|=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x |= s;
|
||||
this->x |= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator|=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x |= v.x;
|
||||
this->x |= U(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator^=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x ^= s;
|
||||
this->x ^= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator^=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x ^= v.x;
|
||||
this->x ^= T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator<<=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x <<= s;
|
||||
this->x <<= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator<<=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x <<= v.x;
|
||||
this->x <<= T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator>>=
|
||||
(
|
||||
value_type const & s
|
||||
U const & s
|
||||
)
|
||||
{
|
||||
this->x >>= s;
|
||||
this->x >>= T(s);
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator>>=
|
||||
(
|
||||
tvec1<T> const & v
|
||||
tvec1<U> const & v
|
||||
)
|
||||
{
|
||||
this->x >>= v.x;
|
||||
this->x >>= T(v.x);
|
||||
return *this;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user