scnlib  0.1.2
FormattedinputformodernC++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
scn::ranges Namespace Reference

Namespaces

 detail
 

Classes

class  ranges_result
 
struct  erased_stream_context_type
 
class  get_value_result
 
class  basic_erased_range_stream
 
class  basic_bidirectional_range_stream
 
class  basic_sized_bidirectional_range_stream
 
class  basic_forward_range_stream
 

Typedefs

template<typename CharT >
using basic_erased_stream_context = basic_context< erased_range_stream< CharT >>
 
template<typename CharT >
using basic_erased_sized_stream_context = basic_context< erased_sized_range_stream< CharT >>
 
using erased_stream_context = basic_erased_stream_context< char >
 
using werased_stream_context = basic_erased_stream_context< wchar_t >
 
using erased_sized_stream_context = basic_erased_sized_stream_context< char >
 
using werased_sized_stream_context = basic_erased_sized_stream_context< wchar_t >
 
template<typename CharT >
using erased_range_stream = basic_erased_range_stream< CharT, false >
 
template<typename CharT >
using erased_sized_range_stream = basic_erased_range_stream< CharT, true >
 

Functions

template<typename Iterator , typename Range >
auto subrange_from (Iterator it, const Range &r)
 
scan_result vscan (erased_stream_context &)
 
scan_result vscan (werased_stream_context &)
 
template<typename Range , typename... Args>
ranges_result
<::ranges::iterator_t< const
Range >,::ranges::sentinel_t
< const Range > > 
scan (const Range &range, basic_string_view< ::ranges::value_type_t<::ranges::iterator_t< Range >>> f, Args &...a)
 
template<typename Range , typename... Args>
ranges_result
<::ranges::iterator_t< const
Range >,::ranges::sentinel_t
< const Range > > 
scan (options opt, const Range &range, basic_string_view< ::ranges::value_type_t<::ranges::iterator_t< Range >>> f, Args &...a)
 
template<typename Range , typename... Args>
ranges_result
<::ranges::iterator_t< const
Range >,::ranges::sentinel_t
< const Range > > 
scan (const Range &range,::scn::detail::default_t, Args &...a)
 
template<typename Range , typename... Args>
ranges_result
<::ranges::iterator_t< const
Range >,::ranges::sentinel_t
< const Range > > 
scan (options opt, const Range &range,::scn::detail::default_t, Args &...a)
 
template<typename Range , typename... Args>
ranges_result
<::ranges::iterator_t< const
Range >,::ranges::sentinel_t
< const Range > > 
scanf (const Range &range, basic_string_view< ::ranges::value_type_t<::ranges::iterator_t< Range >>> f, Args &...a)
 
template<typename Range , typename... Args>
ranges_result
<::ranges::iterator_t< const
Range >,::ranges::sentinel_t
< const Range > > 
scanf (options opt, const Range &range, basic_string_view< ::ranges::value_type_t<::ranges::iterator_t< Range >>> f, Args &...a)
 
template<typename T , typename Range >
get_value_result< T,::ranges::iterator_t
< const Range >
,::ranges::sentinel_t< const
Range > > 
get_value (const Range &r)
 
template<typename T , typename CharT >
auto from_string (basic_string_view< CharT > str)
 
template<typename R , typename CharT = SCN_RANGES_NS::value_type_t<SCN_RANGES_NS::iterator_t<R>>>
auto make_stream (R &r)
 
 CPP_template (typename R)(requires SCN_RANGES_NS
 
template<typename Range , typename Traits , typename Allocator , typename Iterator = SCN_RANGES_NS::iterator_t<Range>, typename CharT = SCN_RANGES_NS::value_type_t<Iterator>>
SCN_BEGIN_NAMESPACE expected
< Iterator > 
getline (Range &r, std::basic_string< CharT, Traits, Allocator > &str, CharT until)
 
template<typename Range , typename Traits , typename Allocator , typename CharT = SCN_RANGES_NS::value_type_t< SCN_RANGES_NS::iterator_t<Range>>>
auto getline (Range &r, std::basic_string< CharT, Traits, Allocator > &str)
 

Typedef Documentation

Definition at line 77 of file ranges.h.

template<typename CharT >
using scn::ranges::basic_erased_stream_context = typedef basic_context<erased_range_stream<CharT>>

Definition at line 74 of file ranges.h.

template<typename CharT >
using scn::ranges::erased_range_stream = typedef basic_erased_range_stream<CharT, false>

Definition at line 108 of file stream.h.

template<typename CharT >
using scn::ranges::erased_sized_range_stream = typedef basic_erased_range_stream<CharT, true>

Definition at line 111 of file stream.h.

Definition at line 79 of file ranges.h.

Definition at line 84 of file ranges.h.

Definition at line 80 of file ranges.h.

Function Documentation

scn::ranges::CPP_template ( typename R  )

Definition at line 329 of file stream.h.

template<typename T , typename CharT >
auto scn::ranges::from_string ( basic_string_view< CharT >  str)

Definition at line 316 of file ranges.h.

template<typename T , typename Range >
get_value_result<T, ::ranges::iterator_t<const Range>, ::ranges::sentinel_t<const Range> > scn::ranges::get_value ( const Range &  r)

Definition at line 289 of file ranges.h.

template<typename Range , typename Traits , typename Allocator , typename Iterator = SCN_RANGES_NS::iterator_t<Range>, typename CharT = SCN_RANGES_NS::value_type_t<Iterator>>
SCN_BEGIN_NAMESPACE expected<Iterator> scn::ranges::getline ( Range &  r,
std::basic_string< CharT, Traits, Allocator > &  str,
CharT  until 
)

Definition at line 34 of file types.h.

template<typename Range , typename Traits , typename Allocator , typename CharT = SCN_RANGES_NS::value_type_t< SCN_RANGES_NS::iterator_t<Range>>>
auto scn::ranges::getline ( Range &  r,
std::basic_string< CharT, Traits, Allocator > &  str 
)

Definition at line 56 of file types.h.

template<typename R , typename CharT = SCN_RANGES_NS::value_type_t<SCN_RANGES_NS::iterator_t<R>>>
auto scn::ranges::make_stream ( R &  r)

Definition at line 324 of file stream.h.

template<typename Range , typename... Args>
ranges_result<::ranges::iterator_t<const Range>, ::ranges::sentinel_t<const Range> > scn::ranges::scan ( const Range &  range,
basic_string_view< ::ranges::value_type_t<::ranges::iterator_t< Range >>>  f,
Args &...  a 
)

Definition at line 103 of file ranges.h.

template<typename Range , typename... Args>
ranges_result<::ranges::iterator_t<const Range>, ::ranges::sentinel_t<const Range> > scn::ranges::scan ( options  opt,
const Range &  range,
basic_string_view< ::ranges::value_type_t<::ranges::iterator_t< Range >>>  f,
Args &...  a 
)

Definition at line 127 of file ranges.h.

template<typename Range , typename... Args>
ranges_result<::ranges::iterator_t<const Range>, ::ranges::sentinel_t<const Range> > scn::ranges::scan ( const Range &  range,
::scn::detail::default_t  ,
Args &...  a 
)

Definition at line 155 of file ranges.h.

template<typename Range , typename... Args>
ranges_result<::ranges::iterator_t<const Range>, ::ranges::sentinel_t<const Range> > scn::ranges::scan ( options  opt,
const Range &  range,
::scn::detail::default_t  ,
Args &...  a 
)

Definition at line 175 of file ranges.h.

template<typename Range , typename... Args>
ranges_result<::ranges::iterator_t<const Range>, ::ranges::sentinel_t<const Range> > scn::ranges::scanf ( const Range &  range,
basic_string_view< ::ranges::value_type_t<::ranges::iterator_t< Range >>>  f,
Args &...  a 
)

Definition at line 201 of file ranges.h.

template<typename Range , typename... Args>
ranges_result<::ranges::iterator_t<const Range>, ::ranges::sentinel_t<const Range> > scn::ranges::scanf ( options  opt,
const Range &  range,
basic_string_view< ::ranges::value_type_t<::ranges::iterator_t< Range >>>  f,
Args &...  a 
)

Definition at line 223 of file ranges.h.

template<typename Iterator , typename Range >
auto scn::ranges::subrange_from ( Iterator  it,
const Range &  r 
)

Definition at line 67 of file ranges.h.

scan_result scn::ranges::vscan ( erased_stream_context &  )
scan_result scn::ranges::vscan ( werased_stream_context &  )