| 
| template<detail::VectorOrScalarMaybeCvref T>  | 
| constexpr auto &&  | MR::ImGuiMath::getElem (int i, T &&value) | 
|   | 
template<typename F , typename ... P>  
requires detail::ValidOperands<P...> | 
| constexpr auto  | MR::ImGuiMath::applyElementwise (F &&func, P &&... params) -> typename detail::VecFromSize< detail::CommonVecSize< P... >::value >::type | 
|   | 
| template<typename F , detail::VectorOrScalarMaybeCvref T>  | 
| constexpr auto  | MR::ImGuiMath::reduce (F &&func, T &&value) | 
|   | 
| template<MR::ImGuiMath::detail::Vector A>  | 
| constexpr A  | operator+ (A a) | 
|   | 
| template<MR::ImGuiMath::detail::Vector A>  | 
| constexpr A  | operator- (A a) | 
|   | 
template<typename A , typename B >  
requires MR::ImGuiMath::detail::ValidOperands<A, B> | 
| constexpr auto  | operator+ (A a, B b) | 
|   | 
template<typename A , typename B >  
requires MR::ImGuiMath::detail::ValidOperands<A, B> | 
| constexpr auto  | operator- (A a, B b) | 
|   | 
template<typename A , typename B >  
requires MR::ImGuiMath::detail::ValidOperands<A, B> | 
| constexpr auto  | operator* (A a, B b) | 
|   | 
template<typename A , typename B >  
requires MR::ImGuiMath::detail::ValidOperands<A, B> | 
| constexpr auto  | operator/ (A a, B b) | 
|   | 
| template<MR::ImGuiMath::detail::Vector A, MR::ImGuiMath::detail::VectorOrScalar B>  | 
| constexpr A &  | operator+= (A &a, B b) | 
|   | 
| template<MR::ImGuiMath::detail::Vector A, MR::ImGuiMath::detail::VectorOrScalar B>  | 
| constexpr A &  | operator-= (A &a, B b) | 
|   | 
| template<MR::ImGuiMath::detail::Vector A, MR::ImGuiMath::detail::VectorOrScalar B>  | 
| constexpr A &  | operator*= (A &a, B b) | 
|   | 
| template<MR::ImGuiMath::detail::Vector A, MR::ImGuiMath::detail::VectorOrScalar B>  | 
| constexpr A &  | operator/= (A &a, B b) | 
|   | 
| constexpr bool  | operator== (ImVec2 a, ImVec2 b) | 
|   | 
| constexpr bool  | operator== (ImVec4 a, ImVec4 b) | 
|   | 
| template<detail::Vector A>  | 
| constexpr A  | MR::ImGuiMath::round (A a) | 
|   | 
| template<detail::Vector A>  | 
| constexpr A  | MR::ImGuiMath::floor (A a) | 
|   | 
| template<detail::Vector A>  | 
| constexpr A  | MR::ImGuiMath::ceil (A a) | 
|   | 
| template<detail::Vector A>  | 
| constexpr auto  | MR::ImGuiMath::dot (A a, A b) | 
|   | 
| template<detail::Vector A>  | 
| constexpr auto  | MR::ImGuiMath::lengthSq (A a) | 
|   | 
| template<detail::Vector A>  | 
| constexpr auto  | MR::ImGuiMath::length (A a) | 
|   | 
| template<detail::Vector A>  | 
| constexpr A  | MR::ImGuiMath::normalize (A a) | 
|   | 
| constexpr ImVec2  | MR::ImGuiMath::rot90 (ImVec2 a) | 
|   | 
| template<detail::Vector A, detail::Scalar B>  | 
| constexpr A  | MR::ImGuiMath::mix (B t, A a, A b) | 
|   | 
template<typename A , typename B >  
requires detail::ValidOperands<A, B> | 
| constexpr auto  | MR::ImGuiMath::min (A a, B b) | 
|   | 
template<typename A , typename B >  
requires detail::ValidOperands<A, B> | 
| constexpr auto  | MR::ImGuiMath::max (A a, B b) | 
|   | 
template<detail::Vector T, typename A , typename B >  
requires detail::ValidOperands<T, A, B> | 
| constexpr T  | MR::ImGuiMath::clamp (T value, A a, B b) | 
|   | 
| template<detail::VectorOrScalar A>  | 
|   | MR::ImGuiMath::CompareAll (A) -> CompareAll< A > | 
|   | 
| template<detail::VectorOrScalar A>  | 
|   | MR::ImGuiMath::CompareAny (A) -> CompareAny< A > | 
|   |