nlib
nn::nlib::unicode::StringPrep Class Referencefinal

Implements various tables defined in RFC3454. More...

#include "nn/nlib/unicode/StringPrep.h"

Static Public Member Functions

static bool InTableA1 (uint32_t utf32) noexcept
 Determines whether a code point is described in RFC 3454, A.1. More...
 
static bool InTableB1 (uint32_t utf32) noexcept
 Determines whether a code point is described in RFC 3454, B.1. More...
 
static bool MapTableB2 (uint32_t utf32, StringPrepMapResult *m) noexcept
 Converts utf32 based on the mapping described in RFC 3454, B.2. More...
 
static bool MapTableB3 (uint32_t utf32, StringPrepMapResult *m) noexcept
 Converts utf32 based on the mapping described in RFC 3454, B.3. More...
 
static constexpr bool InTableC11 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.1.1 (ASCII space characters). More...
 
static bool InTableC12 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.1.2 (Non-ASCII space characters). More...
 
static constexpr bool InTableC21 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.2.1 (ASCII control characters). More...
 
static bool InTableC22 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.2.2 (Non-ASCII control characters). More...
 
static bool InTableC3 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.3 (Private use). More...
 
static bool InTableC4 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.4 (Non-character code points). More...
 
static constexpr bool InTableC5 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.5 (Surrogate codes). More...
 
static constexpr bool InTableC6 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.6 (Inappropriate for plain text). More...
 
static constexpr bool InTableC7 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.7 (Inappropriate for canonical representation). More...
 
static bool InTableC8 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.8 (Change display properties or are deprecated). More...
 
static constexpr bool InTableC9 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, C.9 (Tagging characters). More...
 
static bool InTableD1 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, D.1 (Characters with bidirectional property "R" or "AL"). More...
 
static bool InTableD2 (uint32_t utf32) noexcept
 Determines whether the character is described in RFC 3454, D.2 (Characters with bidirectional property "L"). More...
 

Detailed Description

Implements various tables defined in RFC3454.

See also
https://www.ietf.org/rfc/rfc3454.txt (RFC3454)
http://www.jdna.jp/survey/rfc/rfc3454j.html (RFC3454, in Japanese)

Definition at line 29 of file StringPrep.h.

Member Function Documentation

◆ InTableA1()

nn::nlib::unicode::StringPrep::InTableA1 ( uint32_t  utf32)
staticnoexcept

Determines whether a code point is described in RFC 3454, A.1.

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.
Description
Returns whether an unassigned code point is in Unicode 3.2.

◆ InTableB1()

nn::nlib::unicode::StringPrep::InTableB1 ( uint32_t  utf32)
staticnoexcept

Determines whether a code point is described in RFC 3454, B.1.

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.
Description
Returns whether a code point is unmapped.

◆ InTableC11()

nn::nlib::unicode::StringPrep::InTableC11 ( uint32_t  utf32)
inlinestaticnoexcept

Determines whether the character is described in RFC 3454, C.1.1 (ASCII space characters).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

Definition at line 38 of file StringPrep.h.

◆ InTableC12()

nn::nlib::unicode::StringPrep::InTableC12 ( uint32_t  utf32)
staticnoexcept

Determines whether the character is described in RFC 3454, C.1.2 (Non-ASCII space characters).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

◆ InTableC21()

nn::nlib::unicode::StringPrep::InTableC21 ( uint32_t  utf32)
inlinestaticnoexcept

Determines whether the character is described in RFC 3454, C.2.1 (ASCII control characters).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

Definition at line 40 of file StringPrep.h.

◆ InTableC22()

nn::nlib::unicode::StringPrep::InTableC22 ( uint32_t  utf32)
staticnoexcept

Determines whether the character is described in RFC 3454, C.2.2 (Non-ASCII control characters).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

◆ InTableC3()

nn::nlib::unicode::StringPrep::InTableC3 ( uint32_t  utf32)
staticnoexcept

Determines whether the character is described in RFC 3454, C.3 (Private use).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

◆ InTableC4()

nn::nlib::unicode::StringPrep::InTableC4 ( uint32_t  utf32)
staticnoexcept

Determines whether the character is described in RFC 3454, C.4 (Non-character code points).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

◆ InTableC5()

nn::nlib::unicode::StringPrep::InTableC5 ( uint32_t  utf32)
inlinestaticnoexcept

Determines whether the character is described in RFC 3454, C.5 (Surrogate codes).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

Definition at line 47 of file StringPrep.h.

◆ InTableC6()

nn::nlib::unicode::StringPrep::InTableC6 ( uint32_t  utf32)
inlinestaticnoexcept

Determines whether the character is described in RFC 3454, C.6 (Inappropriate for plain text).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

Definition at line 50 of file StringPrep.h.

◆ InTableC7()

nn::nlib::unicode::StringPrep::InTableC7 ( uint32_t  utf32)
inlinestaticnoexcept

Determines whether the character is described in RFC 3454, C.7 (Inappropriate for canonical representation).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

Definition at line 53 of file StringPrep.h.

◆ InTableC8()

nn::nlib::unicode::StringPrep::InTableC8 ( uint32_t  utf32)
staticnoexcept

Determines whether the character is described in RFC 3454, C.8 (Change display properties or are deprecated).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

◆ InTableC9()

nn::nlib::unicode::StringPrep::InTableC9 ( uint32_t  utf32)
inlinestaticnoexcept

Determines whether the character is described in RFC 3454, C.9 (Tagging characters).

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

Definition at line 57 of file StringPrep.h.

◆ InTableD1()

nn::nlib::unicode::StringPrep::InTableD1 ( uint32_t  utf32)
staticnoexcept

Determines whether the character is described in RFC 3454, D.1 (Characters with bidirectional property "R" or "AL").

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

◆ InTableD2()

nn::nlib::unicode::StringPrep::InTableD2 ( uint32_t  utf32)
staticnoexcept

Determines whether the character is described in RFC 3454, D.2 (Characters with bidirectional property "L").

Parameters
[in]utf32Unicode (UTF-32) code point.
Returns
Returns true if found.

◆ MapTableB2()

nn::nlib::unicode::StringPrep::MapTableB2 ( uint32_t  utf32,
StringPrepMapResult m 
)
staticnoexcept

Converts utf32 based on the mapping described in RFC 3454, B.2.

Parameters
[in]utf32Unicode (UTF-32) code point.
[out]mConversion result.
Returns
Returns true if conversion occurs.
Description
Unifies the case (uppercase or lowercase). Used when unifying the case before kNfkc normalization.
For more information, see RFC 3454.

◆ MapTableB3()

nn::nlib::unicode::StringPrep::MapTableB3 ( uint32_t  utf32,
StringPrepMapResult m 
)
staticnoexcept

Converts utf32 based on the mapping described in RFC 3454, B.3.

Parameters
[in]utf32Unicode (UTF-32) code point.
[out]mConversion result.
Returns
Returns true if conversion occurs.
Description
Unifies the case (uppercase or lowercase). Uses CaseFolding.txt from Unicode 3.2.
For more information, see RFC 3454.

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