Boost.Locale
|
Classes | |
class | boost::locale::boundary::boundary_point< IteratorType > |
This class represents a boundary point in the text. More... | |
struct | boost::locale::boundary::break_info |
This structure is used for representing boundary point that follows the offset. More... | |
class | boost::locale::boundary::boundary_indexing< CharType > |
This facet generates an index for boundary analysis for a given text. More... | |
class | boost::locale::boundary::segment_index< BaseIterator > |
This class holds an index of segments in the text range and allows to iterate over them. More... | |
class | boost::locale::boundary::boundary_point_index< BaseIterator > |
This class holds an index of boundary points and allows iterating over them. More... | |
class | boost::locale::boundary::segment< IteratorType > |
a segment object that represents a pair of two iterators that define the range where this segment exits and a rule that defines it. More... | |
Typedefs | |
typedef std::vector< break_info > | boost::locale::boundary::index_type |
typedef BaseIterator | boost::locale::boundary::segment_index< BaseIterator >::base_iterator |
typedef unspecified_iterator_type | boost::locale::boundary::segment_index< BaseIterator >::iterator |
typedef unspecified_iterator_type | boost::locale::boundary::segment_index< BaseIterator >::const_iterator |
typedef segment< base_iterator > | boost::locale::boundary::segment_index< BaseIterator >::value_type |
typedef BaseIterator | boost::locale::boundary::boundary_point_index< BaseIterator >::base_iterator |
typedef unspecified_iterator_type | boost::locale::boundary::boundary_point_index< BaseIterator >::iterator |
typedef unspecified_iterator_type | boost::locale::boundary::boundary_point_index< BaseIterator >::const_iterator |
typedef boundary_point < base_iterator > | boost::locale::boundary::boundary_point_index< BaseIterator >::value_type |
typedef segment_index < std::string::const_iterator > | boost::locale::boundary::ssegment_index |
convenience typedef | |
typedef segment_index < std::wstring::const_iterator > | boost::locale::boundary::wssegment_index |
convenience typedef | |
typedef segment_index < std::u16string::const_iterator > | boost::locale::boundary::u16ssegment_index |
convenience typedef | |
typedef segment_index < std::u32string::const_iterator > | boost::locale::boundary::u32ssegment_index |
convenience typedef | |
typedef segment_index< char const * > | boost::locale::boundary::csegment_index |
convenience typedef | |
typedef segment_index< wchar_t const * > | boost::locale::boundary::wcsegment_index |
convenience typedef | |
typedef segment_index < char16_t const * > | boost::locale::boundary::u16csegment_index |
convenience typedef | |
typedef segment_index < char32_t const * > | boost::locale::boundary::u32csegment_index |
convenience typedef | |
typedef boundary_point_index < std::string::const_iterator > | boost::locale::boundary::sboundary_point_index |
convenience typedef | |
typedef boundary_point_index < std::wstring::const_iterator > | boost::locale::boundary::wsboundary_point_index |
convenience typedef | |
typedef boundary_point_index < std::u16string::const_iterator > | boost::locale::boundary::u16sboundary_point_index |
convenience typedef | |
typedef boundary_point_index < std::u32string::const_iterator > | boost::locale::boundary::u32sboundary_point_index |
convenience typedef | |
typedef boundary_point_index < char const * > | boost::locale::boundary::cboundary_point_index |
convenience typedef | |
typedef boundary_point_index < wchar_t const * > | boost::locale::boundary::wcboundary_point_index |
convenience typedef | |
typedef boundary_point_index < char16_t const * > | boost::locale::boundary::u16cboundary_point_index |
convenience typedef | |
typedef boundary_point_index < char32_t const * > | boost::locale::boundary::u32cboundary_point_index |
convenience typedef | |
typedef segment < std::string::const_iterator > | boost::locale::boundary::ssegment |
convenience typedef | |
typedef segment < std::wstring::const_iterator > | boost::locale::boundary::wssegment |
convenience typedef | |
typedef segment < std::u16string::const_iterator > | boost::locale::boundary::u16ssegment |
convenience typedef | |
typedef segment < std::u32string::const_iterator > | boost::locale::boundary::u32ssegment |
convenience typedef | |
typedef segment< char const * > | boost::locale::boundary::csegment |
convenience typedef | |
typedef segment< wchar_t const * > | boost::locale::boundary::wcsegment |
convenience typedef | |
typedef segment< char16_t const * > | boost::locale::boundary::u16csegment |
convenience typedef | |
typedef segment< char32_t const * > | boost::locale::boundary::u32csegment |
convenience typedef | |
typedef uint32_t | boost::locale::boundary::rule_type |
Flags used with word boundary analysis – the type of the word, line or sentence boundary found. More... | |
Enumerations | |
enum | boost::locale::boundary::boundary_type { boost::locale::boundary::character, boost::locale::boundary::word, boost::locale::boundary::sentence, boost::locale::boundary::line } |
Functions | |
template<typename BaseIterator > | |
bool | boost::locale::boundary::operator== (BaseIterator const &l, boundary_point< BaseIterator > const &r) |
template<typename BaseIterator > | |
bool | boost::locale::boundary::operator!= (BaseIterator const &l, boundary_point< BaseIterator > const &r) |
boost::locale::boundary::segment_index< BaseIterator >::segment_index () | |
boost::locale::boundary::segment_index< BaseIterator >::segment_index (boundary_type type, base_iterator begin, base_iterator end, rule_type mask, std::locale const &loc=std::locale()) | |
boost::locale::boundary::segment_index< BaseIterator >::segment_index (boundary_type type, base_iterator begin, base_iterator end, std::locale const &loc=std::locale()) | |
boost::locale::boundary::segment_index< BaseIterator >::segment_index (boundary_point_index< base_iterator > const &) | |
segment_index const & | boost::locale::boundary::segment_index< BaseIterator >::operator= (boundary_point_index< base_iterator > const &) |
void | boost::locale::boundary::segment_index< BaseIterator >::map (boundary_type type, base_iterator begin, base_iterator end, std::locale const &loc=std::locale()) |
iterator | boost::locale::boundary::segment_index< BaseIterator >::begin () const |
iterator | boost::locale::boundary::segment_index< BaseIterator >::end () const |
iterator | boost::locale::boundary::segment_index< BaseIterator >::find (base_iterator p) const |
rule_type | boost::locale::boundary::segment_index< BaseIterator >::rule () const |
void | boost::locale::boundary::segment_index< BaseIterator >::rule (rule_type v) |
bool | boost::locale::boundary::segment_index< BaseIterator >::full_select () const |
void | boost::locale::boundary::segment_index< BaseIterator >::full_select (bool v) |
boost::locale::boundary::boundary_point_index< BaseIterator >::boundary_point_index () | |
boost::locale::boundary::boundary_point_index< BaseIterator >::boundary_point_index (boundary_type type, base_iterator begin, base_iterator end, rule_type mask, std::locale const &loc=std::locale()) | |
boost::locale::boundary::boundary_point_index< BaseIterator >::boundary_point_index (boundary_type type, base_iterator begin, base_iterator end, std::locale const &loc=std::locale()) | |
boost::locale::boundary::boundary_point_index< BaseIterator >::boundary_point_index (segment_index< base_iterator > const &other) | |
boundary_point_index const & | boost::locale::boundary::boundary_point_index< BaseIterator >::operator= (segment_index< base_iterator > const &other) |
void | boost::locale::boundary::boundary_point_index< BaseIterator >::map (boundary_type type, base_iterator begin, base_iterator end, std::locale const &loc=std::locale()) |
iterator | boost::locale::boundary::boundary_point_index< BaseIterator >::begin () const |
iterator | boost::locale::boundary::boundary_point_index< BaseIterator >::end () const |
iterator | boost::locale::boundary::boundary_point_index< BaseIterator >::find (base_iterator p) const |
rule_type | boost::locale::boundary::boundary_point_index< BaseIterator >::rule () const |
void | boost::locale::boundary::boundary_point_index< BaseIterator >::rule (rule_type v) |
template<typename IteratorL , typename IteratorR > | |
bool | boost::locale::boundary::operator== (segment< IteratorL > const &l, segment< IteratorR > const &r) |
Compare two segments. | |
template<typename IteratorL , typename IteratorR > | |
bool | boost::locale::boundary::operator!= (segment< IteratorL > const &l, segment< IteratorR > const &r) |
Compare two segments. | |
template<typename IteratorL , typename IteratorR > | |
bool | boost::locale::boundary::operator< (segment< IteratorL > const &l, segment< IteratorR > const &r) |
Compare two segments. | |
template<typename IteratorL , typename IteratorR > | |
bool | boost::locale::boundary::operator<= (segment< IteratorL > const &l, segment< IteratorR > const &r) |
Compare two segments. | |
template<typename IteratorL , typename IteratorR > | |
bool | boost::locale::boundary::operator> (segment< IteratorL > const &l, segment< IteratorR > const &r) |
Compare two segments. | |
template<typename IteratorL , typename IteratorR > | |
bool | boost::locale::boundary::operator>= (segment< IteratorL > const &l, segment< IteratorR > const &r) |
Compare two segments. | |
template<typename CharType , typename Traits , typename Alloc , typename IteratorR > | |
bool | boost::locale::boundary::operator== (std::basic_string< CharType, Traits, Alloc > const &l, segment< IteratorR > const &r) |
Compare string and segment. | |
template<typename CharType , typename Traits , typename Alloc , typename IteratorR > | |
bool | boost::locale::boundary::operator!= (std::basic_string< CharType, Traits, Alloc > const &l, segment< IteratorR > const &r) |
Compare string and segment. | |
template<typename CharType , typename Traits , typename Alloc , typename IteratorR > | |
bool | boost::locale::boundary::operator< (std::basic_string< CharType, Traits, Alloc > const &l, segment< IteratorR > const &r) |
Compare string and segment. | |
template<typename CharType , typename Traits , typename Alloc , typename IteratorR > | |
bool | boost::locale::boundary::operator<= (std::basic_string< CharType, Traits, Alloc > const &l, segment< IteratorR > const &r) |
Compare string and segment. | |
template<typename CharType , typename Traits , typename Alloc , typename IteratorR > | |
bool | boost::locale::boundary::operator> (std::basic_string< CharType, Traits, Alloc > const &l, segment< IteratorR > const &r) |
Compare string and segment. | |
template<typename CharType , typename Traits , typename Alloc , typename IteratorR > | |
bool | boost::locale::boundary::operator>= (std::basic_string< CharType, Traits, Alloc > const &l, segment< IteratorR > const &r) |
Compare string and segment. | |
template<typename Iterator , typename CharType , typename Traits , typename Alloc > | |
bool | boost::locale::boundary::operator== (segment< Iterator > const &l, std::basic_string< CharType, Traits, Alloc > const &r) |
Compare string and segment. | |
template<typename Iterator , typename CharType , typename Traits , typename Alloc > | |
bool | boost::locale::boundary::operator!= (segment< Iterator > const &l, std::basic_string< CharType, Traits, Alloc > const &r) |
Compare string and segment. | |
template<typename Iterator , typename CharType , typename Traits , typename Alloc > | |
bool | boost::locale::boundary::operator< (segment< Iterator > const &l, std::basic_string< CharType, Traits, Alloc > const &r) |
Compare string and segment. | |
template<typename Iterator , typename CharType , typename Traits , typename Alloc > | |
bool | boost::locale::boundary::operator<= (segment< Iterator > const &l, std::basic_string< CharType, Traits, Alloc > const &r) |
Compare string and segment. | |
template<typename Iterator , typename CharType , typename Traits , typename Alloc > | |
bool | boost::locale::boundary::operator> (segment< Iterator > const &l, std::basic_string< CharType, Traits, Alloc > const &r) |
Compare string and segment. | |
template<typename Iterator , typename CharType , typename Traits , typename Alloc > | |
bool | boost::locale::boundary::operator>= (segment< Iterator > const &l, std::basic_string< CharType, Traits, Alloc > const &r) |
Compare string and segment. | |
template<typename CharType , typename IteratorR > | |
bool | boost::locale::boundary::operator== (CharType const *l, segment< IteratorR > const &r) |
Compare C string and segment. | |
template<typename CharType , typename IteratorR > | |
bool | boost::locale::boundary::operator!= (CharType const *l, segment< IteratorR > const &r) |
Compare C string and segment. | |
template<typename CharType , typename IteratorR > | |
bool | boost::locale::boundary::operator< (CharType const *l, segment< IteratorR > const &r) |
Compare C string and segment. | |
template<typename CharType , typename IteratorR > | |
bool | boost::locale::boundary::operator<= (CharType const *l, segment< IteratorR > const &r) |
Compare C string and segment. | |
template<typename CharType , typename IteratorR > | |
bool | boost::locale::boundary::operator> (CharType const *l, segment< IteratorR > const &r) |
Compare C string and segment. | |
template<typename CharType , typename IteratorR > | |
bool | boost::locale::boundary::operator>= (CharType const *l, segment< IteratorR > const &r) |
Compare C string and segment. | |
template<typename Iterator , typename CharType > | |
bool | boost::locale::boundary::operator== (segment< Iterator > const &l, CharType const *r) |
Compare C string and segment. | |
template<typename Iterator , typename CharType > | |
bool | boost::locale::boundary::operator!= (segment< Iterator > const &l, CharType const *r) |
Compare C string and segment. | |
template<typename Iterator , typename CharType > | |
bool | boost::locale::boundary::operator< (segment< Iterator > const &l, CharType const *r) |
Compare C string and segment. | |
template<typename Iterator , typename CharType > | |
bool | boost::locale::boundary::operator<= (segment< Iterator > const &l, CharType const *r) |
Compare C string and segment. | |
template<typename Iterator , typename CharType > | |
bool | boost::locale::boundary::operator> (segment< Iterator > const &l, CharType const *r) |
Compare C string and segment. | |
template<typename Iterator , typename CharType > | |
bool | boost::locale::boundary::operator>= (segment< Iterator > const &l, CharType const *r) |
Compare C string and segment. | |
template<typename CharType , typename TraitsType , typename Iterator > | |
std::basic_ostream< CharType, TraitsType > & | boost::locale::boundary::operator<< (std::basic_ostream< CharType, TraitsType > &out, segment< Iterator > const &tok) |
rule_type | boost::locale::boundary::boundary_rule (boundary_type t) |
Flags that describe a type of word selected | |
static const rule_type | boost::locale::boundary::word_none = 0x0000F |
Not a word, like white space or punctuation mark. | |
static const rule_type | boost::locale::boundary::word_number = 0x000F0 |
Word that appear to be a number. | |
static const rule_type | boost::locale::boundary::word_letter = 0x00F00 |
Word that contains letters, excluding kana and ideographic characters. | |
static const rule_type | boost::locale::boundary::word_kana = 0x0F000 |
Word that contains kana characters. | |
static const rule_type | boost::locale::boundary::word_ideo = 0xF0000 |
Word that contains ideographic characters. | |
static const rule_type | boost::locale::boundary::word_any = 0xFFFF0 |
Any word including numbers, 0 is special flag, equivalent to 15. | |
static const rule_type | boost::locale::boundary::word_letters = 0xFFF00 |
Any word, excluding numbers but including letters, kana and ideograms. | |
static const rule_type | boost::locale::boundary::word_kana_ideo = 0xFF000 |
Word that includes kana or ideographic characters. | |
static const rule_type | boost::locale::boundary::word_mask = 0xFFFFF |
Flags that describe a type of line break | |
static const rule_type | boost::locale::boundary::line_soft = 0x0F |
Soft line break: optional but not required. | |
static const rule_type | boost::locale::boundary::line_hard = 0xF0 |
Hard line break: like break is required (as per CR/LF) | |
static const rule_type | boost::locale::boundary::line_any = 0xFF |
Soft or Hard line break. | |
static const rule_type | boost::locale::boundary::line_mask = 0xFF |
Select all types of line breaks. | |
Flags that describe a type of sentence break | |
static const rule_type | boost::locale::boundary::sentence_term = 0x0F |
The sentence was terminated with a sentence terminator like ".", "!" possible followed by hard separator like CR, LF, PS. | |
static const rule_type | boost::locale::boundary::sentence_sep = 0xF0 |
The sentence does not contain terminator like ".", "!" but ended with hard separator like CR, LF, PS or end of input. | |
static const rule_type | boost::locale::boundary::sentence_any = 0xFF |
Either first or second sentence break type;. | |
static const rule_type | boost::locale::boundary::sentence_mask = 0xFF |
Select all sentence breaking points. | |
Flags that describe a type of character break. | |
At this point break iterator does not distinguish different kinds of characters so it is used for consistency. | |
static const rule_type | boost::locale::boundary::character_any = 0xF |
Not in use, just for consistency. | |
static const rule_type | boost::locale::boundary::character_mask = 0xF |
Select all character breaking points. | |
This module contains all operations required for boundary analysis of text: character, word, like and sentence boundaries
This module contains all operations required for boundary analysis of text: character, word, like and sentence boundaries
typedef BaseIterator boost::locale::boundary::segment_index< BaseIterator >::base_iterator |
The type of the iterator used to iterate over the original text
typedef BaseIterator boost::locale::boundary::boundary_point_index< BaseIterator >::base_iterator |
The type of the iterator used to iterate over the original text
typedef unspecified_iterator_type boost::locale::boundary::segment_index< BaseIterator >::const_iterator |
The bidirectional iterator that iterates over value_type objects.
typedef unspecified_iterator_type boost::locale::boundary::boundary_point_index< BaseIterator >::const_iterator |
The bidirectional iterator that iterates over value_type objects.
typedef std::vector<break_info> boost::locale::boundary::index_type |
This type holds the analysis of the text - all its break points with marks
typedef unspecified_iterator_type boost::locale::boundary::segment_index< BaseIterator >::iterator |
The bidirectional iterator that iterates over value_type objects.
typedef unspecified_iterator_type boost::locale::boundary::boundary_point_index< BaseIterator >::iterator |
The bidirectional iterator that iterates over value_type objects.
typedef uint32_t boost::locale::boundary::rule_type |
Flags used with word boundary analysis – the type of the word, line or sentence boundary found.
It is a bit-mask that represents various combinations of rules used to select this specific boundary.
typedef segment<base_iterator> boost::locale::boundary::segment_index< BaseIterator >::value_type |
The type dereferenced by the iterator and const_iterator. It is an object that represents selected segment.
typedef boundary_point<base_iterator> boost::locale::boundary::boundary_point_index< BaseIterator >::value_type |
The type dereferenced by the iterator and const_iterator. It is an object that represents the selected boundary point.
|
inline |
Get the iterator on the beginning of the segments range.
Preconditions: the segment_index should have a mapping
The returned iterator is invalidated by access to any non-const member functions of this object
|
inline |
Get the iterator on the beginning of the boundary points range.
Preconditions: this boundary_point_index should have a mapping
The returned iterator is invalidated by access to any non-const member functions of this object
|
inline |
|
inline |
Create a segment_index for boundary analysis type of the text in range [begin,end) using a rule mask for locale loc.
|
inline |
Create a segment_index for boundary analysis type of the text in range [begin,end) selecting all possible boundary points (full mask) for locale loc.
boost::locale::boundary::boundary_point_index< BaseIterator >::boundary_point_index | ( | segment_index< base_iterator > const & | other | ) |
Create a boundary_point_index from a segment_index. It copies all indexing information and uses the default rule (all possible boundary points)
This operation is very cheap, so if you use boundary_point_index and segment_index on same text range it is much better to create one from another rather then indexing the same range twice.
|
inline |
This function returns the mask that covers all variants for specific boundary type
|
inline |
Get the iterator on the ending of the segments range.
Preconditions: the segment_index should have a mapping
The returned iterator is invalidated by access to any non-const member functions of this object
|
inline |
Get the iterator on the ending of the boundary points range.
Preconditions: this boundary_point_index should have a mapping
The returned iterator is invalidated by access to any non-const member functions of this object
|
inline |
Find a first valid segment following a position p.
If p is inside a valid segment this segment is selected:
For example: For word boundary analysis with word_any rule():
Preconditions: the segment_index should have a mapping and p should be valid iterator to the text in the mapped range.
The returned iterator is invalidated by access to any non-const member functions of this object
|
inline |
Find a first valid boundary point on a position p or following it.
For example: For word boundary analysis of the text "to be or"
Preconditions: the boundary_point_index should have a mapping and p should be valid iterator to the text in the mapped range.
The returned iterator is invalidated by access to any non-const member functions of this object
|
inline |
Get the full_select property value - should segment include in the range values that not belong to specific rule() or not.
The default value is false.
For example for sentence boundary with rule sentence_term the segments of text "Hello! How\nare you?" are "Hello!\", "are you?" when full_select() is false because "How\n" is selected as sentence by a rule spits the text by line feed. If full_select() is true the returned segments are "Hello! ", "How\nare you?" where "How\n" is joined with the following part "are you?"
|
inline |
Set the full_select property value - should segment include in the range values that not belong to specific rule() or not.
The default value is false.
For example for sentence boundary with rule sentence_term the segments of text "Hello! How\nare you?" are "Hello!\", "are you?" when full_select() is false because "How\n" is selected as sentence by a rule spits the text by line feed. If full_select() is true the returned segments are "Hello! ", "How\nare you?" where "How\n" is joined with the following part "are you?"
|
inline |
Create a new index for boundary analysis type of the text in range [begin,end) for locale loc.
|
inline |
bool boost::locale::boundary::operator!= | ( | BaseIterator const & | l, |
boundary_point< BaseIterator > const & | r | ||
) |
Check if the boundary point r points to different location from an iterator l
std::basic_ostream<CharType,TraitsType>& boost::locale::boundary::operator<< | ( | std::basic_ostream< CharType, TraitsType > & | out, |
segment< Iterator > const & | tok | ||
) |
Write the segment to the stream character by character
segment_index const& boost::locale::boundary::segment_index< BaseIterator >::operator= | ( | boundary_point_index< base_iterator > const & | ) |
Copy an index from a boundary_point_index. It copies all indexing information and uses the default rule (all possible segments)
This operation is very cheap, so if you use boundary_point_index and segment_index on same text range it is much better to create one from another rather then indexing the same range twice.
boundary_point_index const& boost::locale::boundary::boundary_point_index< BaseIterator >::operator= | ( | segment_index< base_iterator > const & | other | ) |
Copy a boundary_point_index from a segment_index. It copies all indexing information and keeps the current rule() unchanged
This operation is very cheap, so if you use boundary_point_index and segment_index on same text range it is much better to create one from another rather then indexing the same range twice.
bool boost::locale::boundary::operator== | ( | BaseIterator const & | l, |
boundary_point< BaseIterator > const & | r | ||
) |
Check if the boundary point r points to same location as an iterator l
|
inline |
Get the mask of rules that are used
|
inline |
Set the mask of rules that are used
|
inline |
Get the mask of rules that are used
|
inline |
Set the mask of rules that are used
|
inline |
|
inline |
Create a segment_index for boundary analysis type of the text in range [begin,end) using a rule mask for locale loc.
|
inline |
Create a segment_index for boundary analysis type of the text in range [begin,end) selecting all possible segments (full mask) for locale loc.
boost::locale::boundary::segment_index< BaseIterator >::segment_index | ( | boundary_point_index< base_iterator > const & | ) |
Create a segment_index from a boundary_point_index. It copies all indexing information and used default rule (all possible segments)
This operation is very cheap, so if you use boundary_point_index and segment_index on same text range it is much better to create one from another rather then indexing the same range twice.
|
static |
Full word mask - select all possible variants