This documentation is automatically generated by competitive-verifier/competitive-verifier
#include "src/Internal/modint_traits.hpp"
名前 | 概要 |
---|---|
is_modint_v<T> |
T が ModInt (Runtimeでも可) なら true |
is_staticmodint_v<T> |
T が ModInt (Runtimeは不可) なら true |
#pragma once
#include <type_traits>
namespace math_internal {
struct m_b {};
struct s_b: m_b {};
}
template <class mod_t> constexpr bool is_modint_v= std::is_base_of_v<math_internal::m_b, mod_t>;
template <class mod_t> constexpr bool is_staticmodint_v= std::is_base_of_v<math_internal::s_b, mod_t>;
#line 2 "src/Internal/modint_traits.hpp"
#include <type_traits>
namespace math_internal {
struct m_b {};
struct s_b: m_b {};
}
template <class mod_t> constexpr bool is_modint_v= std::is_base_of_v<math_internal::m_b, mod_t>;
template <class mod_t> constexpr bool is_staticmodint_v= std::is_base_of_v<math_internal::s_b, mod_t>;