stdex
Additional custom or not Standard C++ covered algorithms
|
Test for SI Reference. More...
#include <stdex/parser.hpp>
Public Member Functions | |
basic_si_reference (const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale()) | |
virtual bool | match (_In_reads_or_z_(end) const T *text, size_t start=0, size_t end=(size_t) -1, int flags=match_default) |
virtual void | invalidate () |
![]() | |
basic_parser (const std::locale &locale=std::locale()) | |
bool | search (_In_reads_or_z_(end) const T *text, size_t start=0, size_t end=(size_t) -1, int flags=match_default) |
template<class _Traits , class _Ax > | |
bool | match (const std::basic_string< T, _Traits, _Ax > &text, size_t start=0, size_t end=(size_t) -1, int flags=match_default) |
Public Attributes | |
T | model [3] |
Reference model. | |
basic_si_reference_part< T > | part1 |
Reference data part 1 (P1) | |
basic_si_reference_part< T > | part2 |
Reference data part 2 (P2) | |
basic_si_reference_part< T > | part3 |
Reference data part 3 (P3) | |
bool | is_valid |
Is reference valid. | |
![]() | |
interval< size_t > | interval |
Region of the last match. | |
Static Protected Member Functions | |
static bool | check11 (const T *part1, size_t num_part1) |
static bool | check11 (const T *part1, size_t num_part1, const T *part2, size_t num_part2) |
static bool | check11 (const T *part1, size_t num_part1, const T *part2, size_t num_part2, const T *part3, size_t num_part3) |
Protected Attributes | |
std::shared_ptr< basic_parser< T > > | m_space |
basic_si_reference_delimiter< T > | m_delimiter |
![]() | |
std::locale | m_locale |
Test for SI Reference.
This is one utterly convoluted reference scheme used by Slovenian banks providing only poor integrity detection. 🤦
|
inlinevirtual |
Reimplemented from stdex::parser::basic_parser< T >.
|
inlinevirtual |
Implements stdex::parser::basic_parser< T >.