ReactOS 0.4.16-dev-1059-gb1cf981
__crt_strtox::c_string_character_source< Character > Class Template Reference

#include <corecrt_internal_strtox.h>

Public Types

typedef Character char_type
 

Public Member Functions

 c_string_character_source (Character const *const string, Character const **const end) throw ()
 
 c_string_character_source (c_string_character_source &&other) throw ()
 
c_string_character_sourceoperator= (c_string_character_source &&other) throw ()
 
 ~c_string_character_source ()
 
bool validate () const throw ()
 
Character get () throw ()
 
void unget (Character const c) throw ()
 
Character constsave_state () const throw ()
 
bool restore_state (Character const *const state) throw ()
 

Private Member Functions

 c_string_character_source (c_string_character_source const &)=delete
 
c_string_character_sourceoperator= (c_string_character_source const &)=delete
 

Private Attributes

Character const_p
 
Character const ** _end
 

Detailed Description

template<typename Character>
class __crt_strtox::c_string_character_source< Character >

Definition at line 1787 of file corecrt_internal_strtox.h.

Member Typedef Documentation

◆ char_type

template<typename Character >
typedef Character __crt_strtox::c_string_character_source< Character >::char_type

Definition at line 1791 of file corecrt_internal_strtox.h.

Constructor & Destructor Documentation

◆ c_string_character_source() [1/3]

template<typename Character >
__crt_strtox::c_string_character_source< Character >::c_string_character_source ( Character const *const  string,
Character const **const  end 
)
throw (
)
inline

Definition at line 1793 of file corecrt_internal_strtox.h.

1797 : _p{string}, _end{end}
1798 {
1799 if (end)
1800 {
1801 *end = string;
1802 }
1803 }
GLuint GLuint end
Definition: gl.h:1545
char string[160]
Definition: util.h:11

◆ c_string_character_source() [2/3]

template<typename Character >
__crt_strtox::c_string_character_source< Character >::c_string_character_source ( c_string_character_source< Character > &&  other)
throw (
)
inline

Definition at line 1805 of file corecrt_internal_strtox.h.

1806 : _p{other._p}, _end{other._end}
1807 {
1808 other._p = nullptr;
1809 other._end = nullptr;
1810 }
int other
Definition: msacm.c:1376

◆ ~c_string_character_source()

template<typename Character >
__crt_strtox::c_string_character_source< Character >::~c_string_character_source ( )
inline

Definition at line 1822 of file corecrt_internal_strtox.h.

1823 {
1824 if (_end)
1825 {
1826 *_end = _p;
1827 }
1828 }

◆ c_string_character_source() [3/3]

template<typename Character >
__crt_strtox::c_string_character_source< Character >::c_string_character_source ( c_string_character_source< Character > const )
privatedelete

Member Function Documentation

◆ get()

template<typename Character >
Character __crt_strtox::c_string_character_source< Character >::get ( )
throw (
)
inline

Definition at line 1836 of file corecrt_internal_strtox.h.

1837 {
1838 return *_p++;
1839 }

◆ operator=() [1/2]

template<typename Character >
c_string_character_source & __crt_strtox::c_string_character_source< Character >::operator= ( c_string_character_source< Character > &&  other)
throw (
)
inline

Definition at line 1812 of file corecrt_internal_strtox.h.

1813 {
1814 _p = other._p;
1815 _end = other._end;
1816
1817 other._p = nullptr;
1818 other._end = nullptr;
1819 return *this;
1820 }

◆ operator=() [2/2]

template<typename Character >
c_string_character_source & __crt_strtox::c_string_character_source< Character >::operator= ( c_string_character_source< Character > const )
privatedelete

◆ restore_state()

template<typename Character >
bool __crt_strtox::c_string_character_source< Character >::restore_state ( Character const *const  state)
throw (
)
inline

Definition at line 1852 of file corecrt_internal_strtox.h.

1853 {
1854 _p = state;
1855 return true;
1856 }
static int state
Definition: maze.c:121

◆ save_state()

template<typename Character >
Character const * __crt_strtox::c_string_character_source< Character >::save_state ( ) const
throw (
)
inline

Definition at line 1847 of file corecrt_internal_strtox.h.

1848 {
1849 return _p;
1850 }

◆ unget()

template<typename Character >
void __crt_strtox::c_string_character_source< Character >::unget ( Character const  c)
throw (
)
inline

Definition at line 1841 of file corecrt_internal_strtox.h.

1842 {
1843 --_p;
1844 _VALIDATE_RETURN_VOID(c == '\0' || *_p == c, EINVAL);
1845 }
#define EINVAL
Definition: acclib.h:90
#define _VALIDATE_RETURN_VOID(expr, errorcode)
const GLubyte * c
Definition: glext.h:8905

◆ validate()

template<typename Character >
bool __crt_strtox::c_string_character_source< Character >::validate ( ) const
throw (
)
inline

Definition at line 1830 of file corecrt_internal_strtox.h.

1831 {
1832 _VALIDATE_RETURN(_p != nullptr, EINVAL, false);
1833 return true;
1834 }
#define _VALIDATE_RETURN(expr, errorcode, retexpr)

Member Data Documentation

◆ _end

◆ _p


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