Browse Source

Revert "doc: pile on more Doxygen workarounds."

This reverts commit 0b7831c1ad.
pull/417/head
Vladimír Vondruš 6 years ago
parent
commit
6fbedd8f52
  1. 57
      src/Magnum/Array.h
  2. 12
      src/Magnum/GL/Mesh.h
  3. 12
      src/Magnum/GL/MeshView.h
  4. 8
      src/Magnum/Math/Bezier.h
  5. 4
      src/Magnum/Math/BoolVector.h
  6. 12
      src/Magnum/Math/Complex.h
  7. 16
      src/Magnum/Math/CubicHermite.h
  8. 12
      src/Magnum/Math/Dual.h
  9. 4
      src/Magnum/Math/DualComplex.h
  10. 4
      src/Magnum/Math/DualQuaternion.h
  11. 4
      src/Magnum/Math/Frustum.h
  12. 12
      src/Magnum/Math/Matrix3.h
  13. 16
      src/Magnum/Math/Matrix4.h
  14. 12
      src/Magnum/Math/Quaternion.h
  15. 68
      src/Magnum/Math/Range.h
  16. 8
      src/Magnum/Math/RectangularMatrix.h
  17. 8
      src/Magnum/Math/Vector.h
  18. 15
      src/Magnum/Math/Vector2.h
  19. 28
      src/Magnum/Math/Vector3.h
  20. 44
      src/Magnum/Math/Vector4.h
  21. 4
      src/Magnum/Trade/ObjectData2D.h
  22. 4
      src/Magnum/Trade/ObjectData3D.h

57
src/Magnum/Array.h

@ -94,18 +94,14 @@ template<UnsignedInt dimensions, class T> class Array {
/** @brief Value at given position */
T& operator[](UnsignedInt pos) { return _data[pos]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T operator[](UnsignedInt pos) const { return _data[pos]; }
constexpr T operator[](UnsignedInt pos) const { return _data[pos]; } /**< @overload */
/**
* @brief Raw data
* @return One-dimensional array of `dimensions` length
*/
T* data() { return _data; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return _data; }
constexpr const T* data() const { return _data; } /**< @overload */
#ifndef DOXYGEN_GENERATING_OUTPUT
protected:
@ -137,11 +133,8 @@ template<class T> class Array1D: public Array<1, T> {
/** @brief Copy constructor */
constexpr Array1D(const Array<1, T>& other): Array<1, T>(other) {}
/** @brief X component */
T& x() { return Array<1, T>::_data[0]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T x() const { return Array<1, T>::_data[0]; }
T& x() { return Array<1, T>::_data[0]; } /**< @brief X component */
constexpr T x() const { return Array<1, T>::_data[0]; } /**< @overload */
};
/**
@ -166,17 +159,10 @@ template<class T> class Array2D: public Array<2, T> {
/** @brief Copy constructor */
constexpr Array2D(const Array<2, T>& other): Array<2, T>(other) {}
/** @brief X component */
T& x() { return Array<2, T>::_data[0]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T x() const { return Array<2, T>::_data[0]; }
/** @brief Y component */
T& y() { return Array<2, T>::_data[1]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T y() const { return Array<2, T>::_data[1]; }
T& x() { return Array<2, T>::_data[0]; } /**< @brief X component */
constexpr T x() const { return Array<2, T>::_data[0]; } /**< @overload */
T& y() { return Array<2, T>::_data[1]; } /**< @brief Y component */
constexpr T y() const { return Array<2, T>::_data[1]; } /**< @overload */
};
/**
@ -202,34 +188,21 @@ template<class T> class Array3D: public Array<3, T> {
/** @brief Copy constructor */
constexpr Array3D(const Array<3, T>& other): Array<3, T>(other) {}
/** @brief X component */
T& x() { return Array<3, T>::_data[0]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T x() const { return Array<3, T>::_data[0]; }
/** @brief Y component */
T& y() { return Array<3, T>::_data[1]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T y() const { return Array<3, T>::_data[1]; }
/** @brief Z component */
T& z() { return Array<3, T>::_data[2]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T z() const { return Array<3, T>::_data[2]; }
T& x() { return Array<3, T>::_data[0]; } /**< @brief X component */
constexpr T x() const { return Array<3, T>::_data[0]; } /**< @overload */
T& y() { return Array<3, T>::_data[1]; } /**< @brief Y component */
constexpr T y() const { return Array<3, T>::_data[1]; } /**< @overload */
T& z() { return Array<3, T>::_data[2]; } /**< @brief Z component */
constexpr T z() const { return Array<3, T>::_data[2]; } /**< @overload */
/**
* @brief XY part of the array
* @return First two components of the array
*/
Array2D<T>& xy() { return reinterpret_cast<Array2D<T>&>(*this); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Array2D<T> xy() const {
return {Array<3, T>::_data[0], Array<3, T>::_data[1]};
}
} /**< @overload */
};
/** @debugoperator{Array} */

12
src/Magnum/GL/Mesh.h

@ -890,11 +890,9 @@ class MAGNUM_GL_EXPORT Mesh: public AbstractObject {
Mesh& setIndexBuffer(Buffer&& buffer, GLintptr offset, MeshIndexType type) {
return setIndexBuffer(std::move(buffer), offset, type, 0, 0);
}
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
Mesh& setIndexBuffer(Buffer&& buffer, GLintptr offset, Magnum::MeshIndexType type) {
return setIndexBuffer(std::move(buffer), offset, meshIndexType(type), 0, 0);
}
} /**< @overload */
/**
* @brief Draw the mesh
@ -942,11 +940,9 @@ class MAGNUM_GL_EXPORT Mesh: public AbstractObject {
* available in OpenGL ES or WebGL.
*/
Mesh& draw(AbstractShaderProgram& shader);
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
Mesh& draw(AbstractShaderProgram&& shader) {
return draw(shader);
}
} /**< @overload */
#ifndef MAGNUM_TARGET_GLES
/**
@ -979,11 +975,9 @@ class MAGNUM_GL_EXPORT Mesh: public AbstractObject {
* if @ref instanceCount() is more than `1`.
*/
Mesh& draw(AbstractShaderProgram& shader, TransformFeedback& xfb, UnsignedInt stream = 0);
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
Mesh& draw(AbstractShaderProgram&& shader, TransformFeedback& xfb, UnsignedInt stream = 0) {
return draw(shader, xfb, stream);
}
} /**< @overload */
#endif
private:

12
src/Magnum/GL/MeshView.h

@ -112,9 +112,7 @@ class MAGNUM_GL_EXPORT MeshView {
/** @brief Original mesh */
Mesh& mesh() { return _original; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
const Mesh& mesh() const { return _original; }
const Mesh& mesh() const { return _original; } /**< @overload */
/** @brief Vertex/index count */
Int count() const { return _count; }
@ -259,11 +257,9 @@ class MAGNUM_GL_EXPORT MeshView {
* available in OpenGL ES or WebGL.
*/
MeshView& draw(AbstractShaderProgram& shader);
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
MeshView& draw(AbstractShaderProgram&& shader) {
return draw(shader);
}
} /**< @overload */
#ifndef MAGNUM_TARGET_GLES
/**
@ -284,11 +280,9 @@ class MAGNUM_GL_EXPORT MeshView {
* if @ref instanceCount() is more than `1`.
*/
MeshView& draw(AbstractShaderProgram& shader, TransformFeedback& xfb, UnsignedInt stream = 0);
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
MeshView& draw(AbstractShaderProgram&& shader, TransformFeedback& xfb, UnsignedInt stream = 0) {
return draw(shader, xfb, stream);
}
} /**< @overload */
#endif
private:

8
src/Magnum/Math/Bezier.h

@ -142,9 +142,7 @@ template<UnsignedInt order, UnsignedInt dimensions, class T> class Bezier {
* @see @ref operator[]()
*/
Vector<dimensions, T>* data() { return _data; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const Vector<dimensions, T>* data() const { return _data; }
constexpr const Vector<dimensions, T>* data() const { return _data; } /**< @overload */
/** @brief Equality comparison */
bool operator==(const Bezier<order, dimensions, T>& other) const {
@ -164,10 +162,8 @@ template<UnsignedInt order, UnsignedInt dimensions, class T> class Bezier {
* @p i should not be larger than @ref Order.
*/
Vector<dimensions, T>& operator[](std::size_t i) { return _data[i]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
/* returns const& so [][] operations are also constexpr */
constexpr const Vector<dimensions, T>& operator[](std::size_t i) const { return _data[i]; }
constexpr const Vector<dimensions, T>& operator[](std::size_t i) const { return _data[i]; } /**< @overload */
/**
* @brief Interpolate the curve at given position

4
src/Magnum/Math/BoolVector.h

@ -150,9 +150,7 @@ template<std::size_t size> class BoolVector {
* @see @ref operator[](), @ref set()
*/
UnsignedByte* data() { return _data; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const UnsignedByte* data() const { return _data; }
constexpr const UnsignedByte* data() const { return _data; } /**< @overload */
/** @brief Bit at given position */
constexpr bool operator[](std::size_t i) const {

12
src/Magnum/Math/Complex.h

@ -188,9 +188,7 @@ template<class T> class Complex {
* @see @ref real(), @ref imaginary()
*/
T* data() { return &_real; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return &_real; }
constexpr const T* data() const { return &_real; } /**< @overload */
/** @brief Equality comparison */
bool operator==(const Complex<T>& other) const {
@ -221,9 +219,7 @@ template<class T> class Complex {
* @see @ref data()
*/
T& real() { return _real; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T real() const { return _real; }
constexpr T real() const { return _real; } /**< @overload */
/**
* @brief Imaginary part (@f$ a_i @f$)
@ -231,9 +227,7 @@ template<class T> class Complex {
* @see @ref data()
*/
T& imaginary() { return _imaginary; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T imaginary() const { return _imaginary; }
constexpr T imaginary() const { return _imaginary; } /**< @overload */
/**
* @brief Convert a complex number to vector

16
src/Magnum/Math/CubicHermite.h

@ -151,9 +151,7 @@ template<class T> class CubicHermite {
* @see @ref inTangent(), @ref point(), @ref outTangent()
*/
T* data() { return &_inTangent; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return &_inTangent; }
constexpr const T* data() const { return &_inTangent; } /**< @overload */
/** @brief Equality comparison */
bool operator==(const CubicHermite<T>& other) const;
@ -165,24 +163,18 @@ template<class T> class CubicHermite {
/** @brief In-tangent @f$ \boldsymbol{m} @f$ */
T& inTangent() { return _inTangent; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
/* returns const& so [] operations are also constexpr */
constexpr const T& inTangent() const { return _inTangent; }
constexpr const T& inTangent() const { return _inTangent; } /**< @overload */
/** @brief Point @f$ \boldsymbol{p} @f$ */
T& point() { return _point; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
/* returns const& so [] operations are also constexpr */
constexpr const T& point() const { return _point; }
constexpr const T& point() const { return _point; } /**< @overload */
/** @brief Out-tangent @f$ \boldsymbol{n} @f$ */
T& outTangent() { return _outTangent; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
/* returns const& so [] operations are also constexpr */
constexpr const T& outTangent() const { return _outTangent; }
constexpr const T& outTangent() const { return _outTangent; } /**< @overload */
private:
template<class> friend class CubicHermite;

12
src/Magnum/Math/Dual.h

@ -121,9 +121,7 @@ template<class T> class Dual {
* @see @ref real(), @ref dual()
*/
T* data() { return &_real; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return &_real; }
constexpr const T* data() const { return &_real; } /**< @overload */
/** @brief Equality comparison */
bool operator==(const Dual<T>& other) const {
@ -142,11 +140,9 @@ template<class T> class Dual {
* @see @ref data()
*/
T& real() { return _real; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
/* Returning const so it's possible to call constexpr functions on the
result. WTF, C++?! */
constexpr const T real() const { return _real; }
constexpr const T real() const { return _real; } /**< @overload */
/**
* @brief Dual part (@f$ a_\epsilon @f$)
@ -154,11 +150,9 @@ template<class T> class Dual {
* @see @ref data()
*/
T& dual() { return _dual; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
/* Returning const so it's possible to call constexpr functions on the
result. WTF, C++?! */
constexpr const T dual() const { return _dual; }
constexpr const T dual() const { return _dual; } /**< @overload */
/**
* @brief Add and assign dual number

4
src/Magnum/Math/DualComplex.h

@ -171,9 +171,7 @@ template<class T> class DualComplex: public Dual<Complex<T>> {
* @see @ref real(), @ref dual()
*/
T* data() { return Dual<Complex<T>>::data()->data(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return Dual<Complex<T>>::data()->data(); }
constexpr const T* data() const { return Dual<Complex<T>>::data()->data(); } /**< @overload */
/**
* @brief Whether the dual complex number is normalized

4
src/Magnum/Math/DualQuaternion.h

@ -318,9 +318,7 @@ template<class T> class DualQuaternion: public Dual<Quaternion<T>> {
* @see @ref real(), @ref dual()
*/
T* data() { return Dual<Quaternion<T>>::data()->data(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return Dual<Quaternion<T>>::data()->data(); }
constexpr const T* data() const { return Dual<Quaternion<T>>::data()->data(); } /**< @overload */
/**
* @brief Whether the dual quaternion is normalized

4
src/Magnum/Math/Frustum.h

@ -130,9 +130,7 @@ template<class T> class Frustum {
* @return One-dimensional array of length `24`.
*/
T* data() { return _data[0].data(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return _data[0].data(); }
constexpr const T* data() const { return _data[0].data(); } /**< @overload */
#ifdef MAGNUM_BUILD_DEPRECATED
/**

12
src/Magnum/Math/Matrix3.h

@ -550,9 +550,7 @@ template<class T> class Matrix3: public Matrix3x3<T> {
* @see @ref up(), @ref Vector2::xAxis(), @ref Matrix4::right()
*/
Vector2<T>& right() { return (*this)[0].xy(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector2<T> right() const { return (*this)[0].xy(); }
constexpr Vector2<T> right() const { return (*this)[0].xy(); } /**< @overload */
/**
* @brief Up-pointing 2D vector
@ -568,9 +566,7 @@ template<class T> class Matrix3: public Matrix3x3<T> {
* @see @ref right(), @ref Vector2::yAxis(), @ref Matrix4::up()
*/
Vector2<T>& up() { return (*this)[1].xy(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector2<T> up() const { return (*this)[1].xy(); }
constexpr Vector2<T> up() const { return (*this)[1].xy(); } /**< @overload */
/**
* @brief 2D translation part of the matrix
@ -588,9 +584,7 @@ template<class T> class Matrix3: public Matrix3x3<T> {
* @ref Matrix4::translation()
*/
Vector2<T>& translation() { return (*this)[2].xy(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector2<T> translation() const { return (*this)[2].xy(); }
constexpr Vector2<T> translation() const { return (*this)[2].xy(); } /**< @overload */
/**
* @brief Inverted rigid transformation matrix

16
src/Magnum/Math/Matrix4.h

@ -838,9 +838,7 @@ template<class T> class Matrix4: public Matrix4x4<T> {
* @ref Matrix3::right()
*/
Vector3<T>& right() { return (*this)[0].xyz(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector3<T> right() const { return (*this)[0].xyz(); }
constexpr Vector3<T> right() const { return (*this)[0].xyz(); } /**< @overload */
/**
* @brief Up-pointing 3D vector
@ -858,9 +856,7 @@ template<class T> class Matrix4: public Matrix4x4<T> {
* @ref Matrix3::up()
*/
Vector3<T>& up() { return (*this)[1].xyz(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector3<T> up() const { return (*this)[1].xyz(); }
constexpr Vector3<T> up() const { return (*this)[1].xyz(); } /**< @overload */
/**
* @brief Backward-pointing 3D vector
@ -877,9 +873,7 @@ template<class T> class Matrix4: public Matrix4x4<T> {
* @see @ref right(), @ref up(), @ref Vector3::yAxis()
*/
Vector3<T>& backward() { return (*this)[2].xyz(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector3<T> backward() const { return (*this)[2].xyz(); }
constexpr Vector3<T> backward() const { return (*this)[2].xyz(); } /**< @overload */
/**
* @brief 3D translation part of the matrix
@ -898,9 +892,7 @@ template<class T> class Matrix4: public Matrix4x4<T> {
* @ref Matrix3::translation()
*/
Vector3<T>& translation() { return (*this)[3].xyz(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector3<T> translation() const { return (*this)[3].xyz(); }
constexpr Vector3<T> translation() const { return (*this)[3].xyz(); } /**< @overload */
/**
* @brief Inverted rigid transformation matrix

12
src/Magnum/Math/Quaternion.h

@ -335,9 +335,7 @@ template<class T> class Quaternion {
* @see @ref vector(), @ref scalar()
*/
T* data() { return _vector.data(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return _vector.data(); }
constexpr const T* data() const { return _vector.data(); } /**< @overload */
/** @brief Equality comparison */
bool operator==(const Quaternion<T>& other) const {
@ -363,17 +361,13 @@ template<class T> class Quaternion {
/** @brief Vector part (@f$ \boldsymbol{q}_V @f$) */
Vector3<T>& vector() { return _vector; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
/* Returning const so it's possible to call constexpr functions on the
result. WTF, C++?! */
constexpr const Vector3<T> vector() const { return _vector; }
constexpr const Vector3<T> vector() const { return _vector; } /**< @overload */
/** @brief Scalar part (@f$ q_S @f$) */
T& scalar() { return _scalar; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T scalar() const { return _scalar; }
constexpr T scalar() const { return _scalar; } /**< @overload */
/**
* @brief Rotation angle of a unit quaternion

68
src/Magnum/Math/Range.h

@ -171,11 +171,9 @@ template<UnsignedInt dimensions, class T> class Range {
T* data() {
return dataInternal(typename std::conditional<dimensions == 1, void*, T*>::type{});
}
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const {
return dataInternal(typename std::conditional<dimensions == 1, void*, T*>::type{});
}
} /**< @overload */
/**
* @brief Minimal coordinates (inclusive)
@ -185,9 +183,7 @@ template<UnsignedInt dimensions, class T> class Range {
* @ref Range3D::backBottomLeft()
*/
VectorType& min() { return _min; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const VectorType min() const { return _min; }
constexpr const VectorType min() const { return _min; } /**< @overload */
/**
* @brief Maximal coordinates (exclusive)
@ -197,9 +193,7 @@ template<UnsignedInt dimensions, class T> class Range {
* @ref Range3D::frontTopRight()
*/
VectorType& max() { return _max; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const VectorType max() const { return _max; }
constexpr const VectorType max() const { return _max; } /**< @overload */
/**
* @brief Range size
@ -408,9 +402,7 @@ template<class T> class Range2D: public Range<2, T> {
* Equivalent to @ref min().
*/
Vector2<T>& bottomLeft() { return Range<2, T>::min(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector2<T> bottomLeft() const { return Range<2, T>::min(); }
constexpr Vector2<T> bottomLeft() const { return Range<2, T>::min(); } /**< @overload */
/** @brief Bottom right corner */
constexpr Vector2<T> bottomRight() const {
@ -428,33 +420,23 @@ template<class T> class Range2D: public Range<2, T> {
* Equivalent to @ref max().
*/
Vector2<T>& topRight() { return Range<2, T>::max(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector2<T> topRight() const { return Range<2, T>::max(); }
constexpr Vector2<T> topRight() const { return Range<2, T>::max(); } /**< @overload */
/** @brief Left edge */
T& left() { return Range<2, T>::min().x(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T left() const { return Range<2, T>::min().x(); }
constexpr T left() const { return Range<2, T>::min().x(); } /**< @overload */
/** @brief Right edge */
T& right() { return Range<2, T>::max().x(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T right() const { return Range<2, T>::max().x(); }
constexpr T right() const { return Range<2, T>::max().x(); } /**< @overload */
/** @brief Bottom edge */
T& bottom() { return Range<2, T>::min().y(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T bottom() const { return Range<2, T>::min().y(); }
constexpr T bottom() const { return Range<2, T>::min().y(); } /**< @overload */
/** @brief Top edge */
T& top() { return Range<2, T>::max().y(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T top() const { return Range<2, T>::max().y(); }
constexpr T top() const { return Range<2, T>::max().y(); } /**< @overload */
/** @brief Range in the X axis */
constexpr Range<1, T> x() const {
@ -548,9 +530,7 @@ template<class T> class Range3D: public Range<3, T> {
* Equivalent to @ref min().
*/
Vector3<T>& backBottomLeft() { return Range<3, T>::min(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector3<T> backBottomLeft() const { return Range<3, T>::min(); }
constexpr Vector3<T> backBottomLeft() const { return Range<3, T>::min(); } /**< @overload */
/** @brief Back bottom right corner */
constexpr Vector3<T> backBottomRight() const {
@ -573,9 +553,7 @@ template<class T> class Range3D: public Range<3, T> {
* Equivalent to @ref max().
*/
Vector3<T>& frontTopRight() { return Range<3, T>::max(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr Vector3<T> frontTopRight() const { return Range<3, T>::max(); }
constexpr Vector3<T> frontTopRight() const { return Range<3, T>::max(); } /**< @overload */
/** @brief Front top left corner */
constexpr Vector3<T> frontTopLeft() const {
@ -594,39 +572,27 @@ template<class T> class Range3D: public Range<3, T> {
/** @brief Left edge */
T& left() { return Range<3, T>::min().x(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T left() const { return Range<3, T>::min().x(); }
constexpr T left() const { return Range<3, T>::min().x(); } /**< @overload */
/** @brief Right edge */
T& right() { return Range<3, T>::max().x(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T right() const { return Range<3, T>::max().x(); }
constexpr T right() const { return Range<3, T>::max().x(); } /**< @overload */
/** @brief Bottom edge */
T& bottom() { return Range<3, T>::min().y(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T bottom() const { return Range<3, T>::min().y(); }
constexpr T bottom() const { return Range<3, T>::min().y(); } /**< @overload */
/** @brief Top edge */
T& top() { return Range<3, T>::max().y(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T top() const { return Range<3, T>::max().y(); }
constexpr T top() const { return Range<3, T>::max().y(); } /**< @overload */
/** @brief Back edge */
T& back() { return Range<3, T>::min().z(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T back() const { return Range<3, T>::min().z(); }
constexpr T back() const { return Range<3, T>::min().z(); } /**< @overload */
/** @brief Front edge */
T& front() { return Range<3, T>::max().z(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T front() const { return Range<3, T>::max().z(); }
constexpr T front() const { return Range<3, T>::max().z(); } /**< @overload */
/** @brief Range in the X axis */
constexpr Range<1, T> x() const {

8
src/Magnum/Math/RectangularMatrix.h

@ -157,9 +157,7 @@ template<std::size_t cols, std::size_t rows, class T> class RectangularMatrix {
* @see @ref operator[]()
*/
T* data() { return _data[0].data(); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return _data[0].data(); }
constexpr const T* data() const { return _data[0].data(); } /**< @overload */
/**
* @brief Column at given position
@ -172,10 +170,8 @@ template<std::size_t cols, std::size_t rows, class T> class RectangularMatrix {
* @see @ref row(), @ref data()
*/
Vector<rows, T>& operator[](std::size_t col) { return _data[col]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
/* returns const& so [][] operations are also constexpr */
constexpr const Vector<rows, T>& operator[](std::size_t col) const { return _data[col]; }
constexpr const Vector<rows, T>& operator[](std::size_t col) const { return _data[col]; } /**< @overload */
/**
* @brief Row at given position

8
src/Magnum/Math/Vector.h

@ -231,9 +231,7 @@ template<std::size_t size, class T> class Vector {
* @see @ref operator[]()
*/
T* data() { return _data; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const T* data() const { return _data; }
constexpr const T* data() const { return _data; } /**< @overload */
/**
* @brief Value at given position
@ -241,9 +239,7 @@ template<std::size_t size, class T> class Vector {
* @see @ref data()
*/
T& operator[](std::size_t pos) { return _data[pos]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T operator[](std::size_t pos) const { return _data[pos]; }
constexpr T operator[](std::size_t pos) const { return _data[pos]; } /**< @overload */
/**
* @brief Equality comparison

15
src/Magnum/Math/Vector2.h

@ -141,17 +141,10 @@ template<class T> class Vector2: public Vector<2, T> {
/** @brief Copy constructor */
constexpr /*implicit*/ Vector2(const Vector<2, T>& other) noexcept: Vector<2, T>(other) {}
/** @brief X component */
T& x() { return Vector<2, T>::_data[0]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T x() const { return Vector<2, T>::_data[0]; }
/** @brief Y component */
T& y() { return Vector<2, T>::_data[1]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T y() const { return Vector<2, T>::_data[1]; }
T& x() { return Vector<2, T>::_data[0]; } /**< @brief X component */
constexpr T x() const { return Vector<2, T>::_data[0]; } /**< @overload */
T& y() { return Vector<2, T>::_data[1]; } /**< @brief Y component */
constexpr T y() const { return Vector<2, T>::_data[1]; } /**< @overload */
/**
* @brief Perpendicular vector

28
src/Magnum/Math/Vector3.h

@ -177,9 +177,7 @@ template<class T> class Vector3: public Vector<3, T> {
* @see @ref r()
*/
T& x() { return Vector<3, T>::_data[0]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T x() const { return Vector<3, T>::_data[0]; }
constexpr T x() const { return Vector<3, T>::_data[0]; } /**< @overload */
/**
* @brief Y component
@ -187,9 +185,7 @@ template<class T> class Vector3: public Vector<3, T> {
* @see @ref g()
*/
T& y() { return Vector<3, T>::_data[1]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T y() const { return Vector<3, T>::_data[1]; }
constexpr T y() const { return Vector<3, T>::_data[1]; } /**< @overload */
/**
* @brief Z component
@ -197,9 +193,7 @@ template<class T> class Vector3: public Vector<3, T> {
* @see @ref b()
*/
T& z() { return Vector<3, T>::_data[2]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T z() const { return Vector<3, T>::_data[2]; }
constexpr T z() const { return Vector<3, T>::_data[2]; } /**< @overload */
/**
* @brief R component
@ -207,9 +201,7 @@ template<class T> class Vector3: public Vector<3, T> {
* Equivalent to @ref x().
*/
T& r() { return Vector<3, T>::_data[0]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T r() const { return Vector<3, T>::_data[0]; }
constexpr T r() const { return Vector<3, T>::_data[0]; } /**< @overload */
/**
* @brief G component
@ -217,9 +209,7 @@ template<class T> class Vector3: public Vector<3, T> {
* Equivalent to @ref y().
*/
T& g() { return Vector<3, T>::_data[1]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T g() const { return Vector<3, T>::_data[1]; }
constexpr T g() const { return Vector<3, T>::_data[1]; } /**< @overload */
/**
* @brief B component
@ -227,9 +217,7 @@ template<class T> class Vector3: public Vector<3, T> {
* Equivalent to @ref z().
*/
T& b() { return Vector<3, T>::_data[2]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T b() const { return Vector<3, T>::_data[2]; }
constexpr T b() const { return Vector<3, T>::_data[2]; } /**< @overload */
/**
* @brief XY part of the vector
@ -238,11 +226,9 @@ template<class T> class Vector3: public Vector<3, T> {
* @see @ref swizzle()
*/
Vector2<T>& xy() { return Vector2<T>::from(Vector<3, T>::data()); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const Vector2<T> xy() const {
return {Vector<3, T>::_data[0], Vector<3, T>::_data[1]};
}
} /**< @overload */
MAGNUM_VECTOR_SUBCLASS_IMPLEMENTATION(3, Vector3)
};

44
src/Magnum/Math/Vector4.h

@ -120,9 +120,7 @@ template<class T> class Vector4: public Vector<4, T> {
* @see @ref r()
*/
T& x() { return Vector<4, T>::_data[0]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T x() const { return Vector<4, T>::_data[0]; }
constexpr T x() const { return Vector<4, T>::_data[0]; } /**< @overload */
/**
* @brief Y component
@ -130,9 +128,7 @@ template<class T> class Vector4: public Vector<4, T> {
* @see @ref g()
*/
T& y() { return Vector<4, T>::_data[1]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T y() const { return Vector<4, T>::_data[1]; }
constexpr T y() const { return Vector<4, T>::_data[1]; } /**< @overload */
/**
* @brief Z component
@ -140,9 +136,7 @@ template<class T> class Vector4: public Vector<4, T> {
* @see @ref b()
*/
T& z() { return Vector<4, T>::_data[2]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T z() const { return Vector<4, T>::_data[2]; }
constexpr T z() const { return Vector<4, T>::_data[2]; } /**< @overload */
/**
* @brief W component
@ -150,9 +144,7 @@ template<class T> class Vector4: public Vector<4, T> {
* @see @ref a()
*/
T& w() { return Vector<4, T>::_data[3]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T w() const { return Vector<4, T>::_data[3]; }
constexpr T w() const { return Vector<4, T>::_data[3]; } /**< @overload */
/**
* @brief R component
@ -160,9 +152,7 @@ template<class T> class Vector4: public Vector<4, T> {
* Equivalent to @ref x().
*/
T& r() { return Vector<4, T>::_data[0]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T r() const { return Vector<4, T>::_data[0]; }
constexpr T r() const { return Vector<4, T>::_data[0]; } /**< @overload */
/**
* @brief G component
@ -170,9 +160,7 @@ template<class T> class Vector4: public Vector<4, T> {
* Equivalent to @ref y().
*/
T& g() { return Vector<4, T>::_data[1]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T g() const { return Vector<4, T>::_data[1]; }
constexpr T g() const { return Vector<4, T>::_data[1]; } /**< @overload */
/**
* @brief B component
@ -180,9 +168,7 @@ template<class T> class Vector4: public Vector<4, T> {
* Equivalent to @ref z().
*/
T& b() { return Vector<4, T>::_data[2]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T b() const { return Vector<4, T>::_data[2]; }
constexpr T b() const { return Vector<4, T>::_data[2]; } /**< @overload */
/**
* @brief A component
@ -190,9 +176,7 @@ template<class T> class Vector4: public Vector<4, T> {
* Equivalent to @ref w().
*/
T& a() { return Vector<4, T>::_data[3]; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr T a() const { return Vector<4, T>::_data[3]; }
constexpr T a() const { return Vector<4, T>::_data[3]; } /**< @overload */
/**
* @brief XYZ part of the vector
@ -201,11 +185,9 @@ template<class T> class Vector4: public Vector<4, T> {
* @see @ref swizzle(), @ref rgb()
*/
Vector3<T>& xyz() { return Vector3<T>::from(Vector<4, T>::data()); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const Vector3<T> xyz() const {
return {Vector<4, T>::_data[0], Vector<4, T>::_data[1], Vector<4, T>::_data[2]};
}
} /**< @overload */
/**
* @brief RGB part of the vector
@ -215,11 +197,9 @@ template<class T> class Vector4: public Vector<4, T> {
* @see @ref swizzle()
*/
Vector3<T>& rgb() { return Vector3<T>::from(Vector<4, T>::data()); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const Vector3<T> rgb() const {
return {Vector<4, T>::_data[0], Vector<4, T>::_data[1], Vector<4, T>::_data[2]};
}
} /**< @overload */
/**
* @brief XY part of the vector
@ -228,11 +208,9 @@ template<class T> class Vector4: public Vector<4, T> {
* @see @ref swizzle()
*/
Vector2<T>& xy() { return Vector2<T>::from(Vector<4, T>::data()); }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
constexpr const Vector2<T> xy() const {
return {Vector<4, T>::_data[0], Vector<4, T>::_data[1]};
}
} /**< @overload */
MAGNUM_VECTOR_SUBCLASS_IMPLEMENTATION(4, Vector4)
};

4
src/Magnum/Trade/ObjectData2D.h

@ -160,9 +160,7 @@ class MAGNUM_TRADE_EXPORT ObjectData2D {
/** @brief Child objects */
std::vector<UnsignedInt>& children() { return _children; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
const std::vector<UnsignedInt>& children() const { return _children; }
const std::vector<UnsignedInt>& children() const { return _children; } /**< @overload */
/** @brief Flags */
ObjectFlags2D flags() const { return _flags; }

4
src/Magnum/Trade/ObjectData3D.h

@ -161,9 +161,7 @@ class MAGNUM_TRADE_EXPORT ObjectData3D {
/** @brief Child objects */
std::vector<UnsignedInt>& children() { return _children; }
/** @overload */ /* https://github.com/doxygen/doxygen/issues/7472 */
const std::vector<UnsignedInt>& children() const { return _children; }
const std::vector<UnsignedInt>& children() const { return _children; } /**< @overload */
/** @brief Flags */
ObjectFlags3D flags() const { return _flags; }

Loading…
Cancel
Save