Rune Caster 1.0.0
Modern C++ Text Processing Framework
|
Unicode normalization spell using C++20 concepts. More...
#include <spell_core.hpp>
Public Types | |
using | input_type = RuneSequence |
using | output_type = RuneSequence |
Public Types inherited from rune_caster::spell_base< RuneSequence > | |
using | input_type |
using | output_type |
Public Member Functions | |
UnicodeNormalizer (unicode::NormalizationForm form=unicode::NormalizationForm::NFC) | |
Construct a UnicodeNormalizer. | |
RuneSequence | operator() (const RuneSequence &input) const override |
Apply the spell transformation. | |
std::string | description () const override |
Get the spell's description. | |
std::string | name () const override |
Get the spell's name. | |
Public Member Functions inherited from rune_caster::spell_base< RuneSequence > | |
virtual | ~spell_base ()=default |
Additional Inherited Members | |
Static Public Member Functions inherited from rune_caster::spell_base< RuneSequence > | |
static constexpr bool | can_process () noexcept |
Check if this spell can be applied to the given input type (C++20 concepts) | |
static constexpr bool | produces () noexcept |
Check if this spell produces the expected output type (C++20 concepts) | |
static constexpr const char * | input_type_name () noexcept |
Get input type name as compile-time string (C++20) | |
static constexpr const char * | output_type_name () noexcept |
Get output type name as compile-time string (C++20) |
Unicode normalization spell using C++20 concepts.
Applies Unicode normalization (NFC, NFD, NFKC, NFKD) to text.
Definition at line 43 of file spell_core.hpp.
Definition at line 48 of file spell_core.hpp.
Definition at line 49 of file spell_core.hpp.
|
explicit |
Construct a UnicodeNormalizer.
form | The Unicode normalization form to apply |
Definition at line 16 of file unicode_normalizer.cpp.
|
overridevirtual |
Get the spell's description.
Implements rune_caster::spell_base< RuneSequence >.
Definition at line 46 of file unicode_normalizer.cpp.
|
inlineoverridevirtual |
Get the spell's name.
Implements rune_caster::spell_base< RuneSequence >.
Definition at line 59 of file spell_core.hpp.
|
overridevirtual |
Apply the spell transformation.
input | The input data to transform |
Implements rune_caster::spell_base< RuneSequence >.
Definition at line 19 of file unicode_normalizer.cpp.