Provides streaming UTF8 validation functionality.
More...
#include <utf8_validator.hpp>
|
| | validator () |
| | Construct and initialize the validator.
|
| |
| bool | consume (uint8_t byte) |
| | Advance the state of the validator with the next input byte.
|
| |
| template<typename iterator_type > |
| bool | decode (iterator_type begin, iterator_type end) |
| | Advance validator state with input from an iterator pair.
|
| |
| bool | complete () |
| | Return whether the input sequence ended on a valid utf8 codepoint.
|
| |
| void | reset () |
| | Reset the validator to decode another message.
|
| |
Definition at line 81 of file utf8_validator.hpp.
◆ validator()
| websocketpp::utf8_validator::validator::validator |
( |
| ) |
|
|
inline |
◆ complete()
| bool websocketpp::utf8_validator::validator::complete |
( |
| ) |
|
|
inline |
- Returns
- Whether or not the input sequence ended on a valid codepoint.
Definition at line 124 of file utf8_validator.hpp.
124 {
125 return m_state == utf8_accept;
126 }
◆ consume()
| bool websocketpp::utf8_validator::validator::consume |
( |
uint8_t | byte | ) |
|
|
inline |
- Parameters
-
| byte | The byte to advance the validation state with |
- Returns
- Whether or not the byte resulted in a validation error.
Definition at line 91 of file utf8_validator.hpp.
91 {
93 return false;
94 }
95 return true;
96 }
uint32_t decode(uint32_t *state, uint32_t *codep, uint8_t byte)
Decode the next byte of a UTF8 sequence.
◆ decode()
template<typename iterator_type >
| bool websocketpp::utf8_validator::validator::decode |
( |
iterator_type | begin, |
|
|
iterator_type | end ) |
|
inline |
- Parameters
-
| begin | Input iterator to the start of the input range |
| end | Input iterator to the end of the input range |
- Returns
- Whether or not decoding the bytes resulted in a validation error.
Definition at line 105 of file utf8_validator.hpp.
105 {
106 for (iterator_type it = begin; it != end; ++it) {
108 &m_state,
109 &m_codepoint,
111 );
112
113 if (result == utf8_reject) {
114 return false;
115 }
116 }
117 return true;
118 }
◆ reset()
| void websocketpp::utf8_validator::validator::reset |
( |
| ) |
|
|
inline |
Definition at line 129 of file utf8_validator.hpp.
129 {
130 m_state = utf8_accept;
131 m_codepoint = 0;
132 }
The documentation for this class was generated from the following file: