8#ifndef INCLUDED_BDLB_TOKENIZER
9#define INCLUDED_BDLB_TOKENIZER
566#include <bdlscm_version.h>
568#include <bsl_string.h>
577#include <bsl_iterator.h>
614 char d_charTypes[k_MAX_CHARS];
676#ifdef BSLS_COMPILERFEATURES_SUPPORT_DEFAULTED_FUNCTIONS
705#if defined(BSLS_LIBRARYFEATURES_STDCPP_LIBCSTD)
710 :
public bsl::iterator<bsl::input_iterator_tag,
714 const bslstl::StringRef>
721 const char *d_cursor_p;
722 const char *d_token_p;
723 const char *d_postDelim_p;
838 const char *d_input_p;
839 const char *d_cursor_p;
840 const char *d_prevDelim_p;
841 const char *d_token_p;
842 const char *d_postDelim_p;
856 void resetImpl(
const char *input,
const char *endOfInput);
1028 return d_charTypes[
static_cast<unsigned char>(character)];
1108 if (lhs.d_endFlag != rhs.d_endFlag) {
1113 if (lhs.d_endFlag && rhs.d_endFlag) {
1117 return lhs.d_token_p == rhs.d_token_p;
1124 return !(lhs == rhs);
Definition bdlb_tokenizer.h:716
friend bool operator!=(const TokenizerIterator &, const TokenizerIterator &)
Tokenizer_Proxy pointer
Definition bdlb_tokenizer.h:745
bslstl::StringRef value_type
Definition bdlb_tokenizer.h:743
TokenizerIterator(const TokenizerIterator &origin)
TokenizerIterator & operator++()
const bslstl::StringRef operator*() const
Definition bdlb_tokenizer.h:1053
friend bool operator==(const TokenizerIterator &, const TokenizerIterator &)
Tokenizer_Proxy operator->() const
Definition bdlb_tokenizer.h:1061
bsl::input_iterator_tag iterator_category
Definition bdlb_tokenizer.h:750
const bslstl::StringRef reference
Definition bdlb_tokenizer.h:746
int difference_type
Definition bdlb_tokenizer.h:744
TokenizerIterator & operator=(const TokenizerIterator &rhs)
Definition bdlb_tokenizer.h:608
int inputType(char character) const
Definition bdlb_tokenizer.h:1026
Tokenizer_Data(const bsl::string_view &softDelimiters, const bsl::string_view &hardDelimiters)
Tokenizer_Data(const bsl::string_view &softDelimiters)
Definition bdlb_tokenizer.h:661
Tokenizer_Proxy(const bsl::string_view &obj)
Create a ProxyHolder object with a copy the specified obj.
Definition bdlb_tokenizer.h:1036
const bslstl::StringRef * operator->() const
Return a pointer to the object contained by the Tokenizer_Proxy.
Definition bdlb_tokenizer.h:1043
Definition bdlb_tokenizer.h:834
void reset(const bsl::string_view &input)
bool isValid() const
Definition bdlb_tokenizer.h:1073
~Tokenizer()
Destroy this object.
Tokenizer(const bsl::string_view &input, const bsl::string_view &soft, const bsl::string_view &hard)
bool hasTrailingSoft() const
bslstl::StringRef token() const
Definition bdlb_tokenizer.h:1085
bslstl::StringRef trailingDelimiter() const
Definition bdlb_tokenizer.h:1093
TokenizerIterator iterator
Definition bdlb_tokenizer.h:866
bslstl::StringRef previousDelimiter() const
Definition bdlb_tokenizer.h:1079
Tokenizer(const char *input, const bsl::string_view &soft)
bool isTrailingHard() const
Tokenizer(const bsl::string_view &input, const bsl::string_view &soft)
bool hasPreviousSoft() const
Tokenizer(const char *input, const bsl::string_view &soft, const bsl::string_view &hard)
bool isPreviousHard() const
void reset(const char *input)
Definition bslstl_stringview.h:441
Definition bslstl_stringref.h:372
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
#define BSLS_KEYWORD_DELETED
Definition bsls_keyword.h:609
#define BSLS_REVIEW(X)
Definition bsls_review.h:949
Definition bdlb_algorithmworkaroundutil.h:74
bool operator!=(const BigEndianInt16 &lhs, const BigEndianInt16 &rhs)
FunctionOutputIterator< FUNCTION > & operator++(FunctionOutputIterator< FUNCTION > &iterator)
Do nothing and return specified iterator.
Definition bdlb_functionoutputiterator.h:405
bool operator==(const BigEndianInt16 &lhs, const BigEndianInt16 &rhs)
StringRefImp< char > StringRef
Definition bslstl_stringref.h:699