Iros
 
Loading...
Searching...
No Matches
di::meta::Projected< It, Proj > Struct Template Reference

#include <di/container/meta/projected.h>

Public Types

using Reference = meta::IndirectResult<Proj&, It>
 
using Value = meta::RemoveCVRef<Reference>
 
using SSizeType = meta::IteratorSSizeType<It>
 

Public Member Functions

auto operator* () const -> Reference
 

Friends

constexpr friend auto tag_invoke (types::Tag< container::iterator_value >, InPlaceType< Projected >) -> InPlaceType< Value >
 
constexpr friend auto tag_invoke (types::Tag< container::iterator_ssize_type >, InPlaceType< Projected >) -> SSizeType
 

Member Typedef Documentation

◆ Reference

template<concepts::IndirectlyReadable It, concepts::IndirectlyRegularUnaryInvocable< It > Proj>
using di::meta::Projected< It, Proj >::Reference = meta::IndirectResult<Proj&, It>

◆ SSizeType

template<concepts::IndirectlyReadable It, concepts::IndirectlyRegularUnaryInvocable< It > Proj>
using di::meta::Projected< It, Proj >::SSizeType = meta::IteratorSSizeType<It>

◆ Value

template<concepts::IndirectlyReadable It, concepts::IndirectlyRegularUnaryInvocable< It > Proj>
using di::meta::Projected< It, Proj >::Value = meta::RemoveCVRef<Reference>

Member Function Documentation

◆ operator*()

template<concepts::IndirectlyReadable It, concepts::IndirectlyRegularUnaryInvocable< It > Proj>
auto di::meta::Projected< It, Proj >::operator* ( ) const -> Reference

Friends And Related Symbol Documentation

◆ tag_invoke [1/2]

template<concepts::IndirectlyReadable It, concepts::IndirectlyRegularUnaryInvocable< It > Proj>
friend auto tag_invoke ( types::Tag< container::iterator_ssize_type > ,
InPlaceType< Projected< It, Proj > >  ) -> SSizeType
friend

◆ tag_invoke [2/2]

template<concepts::IndirectlyReadable It, concepts::IndirectlyRegularUnaryInvocable< It > Proj>
friend auto tag_invoke ( types::Tag< container::iterator_value > ,
InPlaceType< Projected< It, Proj > >  ) -> InPlaceType<Value>
friend

The documentation for this struct was generated from the following file: