Lines Matching refs:template
23 template<typename... Ts>
50 template<typename T>
63 template <typename U, typename T>
68 template<typename... Us,
81 template<size_t I> constexpr auto get() const {
113 template<std::size_t... Is>
124 template<std::size_t... Is>
134 template<typename T> struct DecayPointer{
138 template<typename T> using DecayPointerT = typename DecayPointer<T>::type;
140 template<typename C> struct ContiguousMemory { };
141 template<typename T> struct ContiguousMemory<T*> {
146 template<typename T, size_t N> struct ContiguousMemory<T(&)[N]> {
153 template<typename T> struct ContiguousMemory<SkSpan<T>> {
159 template<typename C> struct ContiguousMemory<C&> {
164 template<typename C> using Span = ContiguousMemory<DecayPointerT<C>>;
165 template<typename C> using ValueType = typename Span<C>::value_type;
167 template<typename C, typename... Ts> struct PickOneSize { };
168 template <typename T, typename... Ts> struct PickOneSize<T*, Ts...> {
173 template <typename T, typename... Ts, size_t N> struct PickOneSize<T(&)[N], Ts...> {
176 template<typename T, typename... Ts> struct PickOneSize<SkSpan<T>, Ts...> {
179 template<typename C, typename... Ts> struct PickOneSize<C&, Ts...> {
184 template<typename... Ts>
207 template<typename... Ts>