[DEV] some normalisation
This commit is contained in:
parent
fac7b19bf8
commit
2cac9e69dd
@ -11,7 +11,7 @@
|
|||||||
#include <etk/unicode.h>
|
#include <etk/unicode.h>
|
||||||
#include <etk/Debug.h>
|
#include <etk/Debug.h>
|
||||||
|
|
||||||
int32_t strlen(const uniChar_t * _data)
|
int32_t strlen(const etk::UniChar * _data)
|
||||||
{
|
{
|
||||||
if (NULL == _data) {
|
if (NULL == _data) {
|
||||||
return 0;
|
return 0;
|
||||||
@ -128,7 +128,7 @@ etk::UString::UString(const etk::UString& _obj)
|
|||||||
m_data = _obj.m_data;
|
m_data = _obj.m_data;
|
||||||
}
|
}
|
||||||
|
|
||||||
etk::UString::UString(const uniChar_t _inputData)
|
etk::UString::UString(const etk::UniChar& _inputData)
|
||||||
{
|
{
|
||||||
m_data.PushBack(_inputData);
|
m_data.PushBack(_inputData);
|
||||||
m_data.PushBack('\0');
|
m_data.PushBack('\0');
|
||||||
@ -261,7 +261,7 @@ void etk::UString::Set(const uint64_t& _inputData, etk::UString::printMode_te _m
|
|||||||
}
|
}
|
||||||
|
|
||||||
// multiple element add
|
// multiple element add
|
||||||
etk::UString::UString(const uniChar_t* _inputData, int32_t _len)
|
etk::UString::UString(const etk::UniChar* _inputData, int32_t _len)
|
||||||
{
|
{
|
||||||
Set(_inputData, _len);
|
Set(_inputData, _len);
|
||||||
}
|
}
|
||||||
@ -281,7 +281,7 @@ etk::UString::UString(const etk::Vector<int8_t>& _inputData)
|
|||||||
Set(_inputData);
|
Set(_inputData);
|
||||||
}
|
}
|
||||||
|
|
||||||
etk::UString::UString(const etk::Vector<uniChar_t>& _inputData)
|
etk::UString::UString(const etk::Vector<etk::UniChar>& _inputData)
|
||||||
{
|
{
|
||||||
Set(_inputData);
|
Set(_inputData);
|
||||||
}
|
}
|
||||||
@ -293,7 +293,7 @@ void etk::UString::Set(const etk::Vector<char>& _inputData)
|
|||||||
Clear();
|
Clear();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
etk::Vector<uniChar_t> output_Unicode;
|
etk::Vector<etk::UniChar> output_Unicode;
|
||||||
unicode::convertUtf8ToUnicode(_inputData, output_Unicode);
|
unicode::convertUtf8ToUnicode(_inputData, output_Unicode);
|
||||||
Set(output_Unicode);
|
Set(output_Unicode);
|
||||||
}
|
}
|
||||||
@ -304,13 +304,13 @@ void etk::UString::Set(const etk::Vector<int8_t>& _inputData)
|
|||||||
Clear();
|
Clear();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
etk::Vector<uniChar_t> output_Unicode;
|
etk::Vector<etk::UniChar> output_Unicode;
|
||||||
unicode::convertUtf8ToUnicode(_inputData, output_Unicode);
|
unicode::convertUtf8ToUnicode(_inputData, output_Unicode);
|
||||||
Set(output_Unicode);
|
Set(output_Unicode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void etk::UString::Set(const etk::Vector<uniChar_t>& _inputData)
|
void etk::UString::Set(const etk::Vector<etk::UniChar>& _inputData)
|
||||||
{
|
{
|
||||||
m_data = _inputData;
|
m_data = _inputData;
|
||||||
if (m_data.Size()>0) {
|
if (m_data.Size()>0) {
|
||||||
@ -357,7 +357,7 @@ void etk::UString::Set(const char* _inputData, int32_t _len)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void etk::UString::Set(const uniChar_t* _inputData, int32_t _len)
|
void etk::UString::Set(const etk::UniChar* _inputData, int32_t _len)
|
||||||
{
|
{
|
||||||
// clear all the data
|
// clear all the data
|
||||||
m_data.Clear();
|
m_data.Clear();
|
||||||
@ -397,8 +397,8 @@ bool etk::UString::operator> (const etk::UString& _obj) const
|
|||||||
if( this != &_obj ) {
|
if( this != &_obj ) {
|
||||||
for (int32_t iii=0; iii < m_data.Size() && iii < _obj.m_data.Size(); iii++) {
|
for (int32_t iii=0; iii < m_data.Size() && iii < _obj.m_data.Size(); iii++) {
|
||||||
//TK_DEBUG(" compare : '" << (char)m_data[iii] << "'>'" << (char)_obj.m_data[iii] << "' ==> " << changeOrder(m_data[iii]) << ">" << changeOrder(_obj.m_data[iii]) << "");
|
//TK_DEBUG(" compare : '" << (char)m_data[iii] << "'>'" << (char)_obj.m_data[iii] << "' ==> " << changeOrder(m_data[iii]) << ">" << changeOrder(_obj.m_data[iii]) << "");
|
||||||
uniChar_t elemA = m_data[iii].ChangeOrder();
|
etk::UniChar elemA = m_data[iii].ChangeOrder();
|
||||||
uniChar_t elemB = _obj.m_data[iii].ChangeOrder();
|
etk::UniChar elemB = _obj.m_data[iii].ChangeOrder();
|
||||||
if (elemA != elemB) {
|
if (elemA != elemB) {
|
||||||
if (elemA > elemB) {
|
if (elemA > elemB) {
|
||||||
return true;
|
return true;
|
||||||
@ -417,8 +417,8 @@ bool etk::UString::operator>= (const etk::UString& _obj) const
|
|||||||
{
|
{
|
||||||
if( this != &_obj ) {
|
if( this != &_obj ) {
|
||||||
for (int32_t iii=0; iii < m_data.Size() && iii < _obj.m_data.Size(); iii++) {
|
for (int32_t iii=0; iii < m_data.Size() && iii < _obj.m_data.Size(); iii++) {
|
||||||
uniChar_t elemA = m_data[iii].ChangeOrder();
|
etk::UniChar elemA = m_data[iii].ChangeOrder();
|
||||||
uniChar_t elemB = _obj.m_data[iii].ChangeOrder();
|
etk::UniChar elemB = _obj.m_data[iii].ChangeOrder();
|
||||||
if (elemA != elemB) {
|
if (elemA != elemB) {
|
||||||
if (elemA > elemB) {
|
if (elemA > elemB) {
|
||||||
return true;
|
return true;
|
||||||
@ -437,8 +437,8 @@ bool etk::UString::operator< (const etk::UString& _obj) const
|
|||||||
{
|
{
|
||||||
if( this != &_obj ) {
|
if( this != &_obj ) {
|
||||||
for (int32_t iii=0; iii < m_data.Size() && iii < _obj.m_data.Size(); iii++) {
|
for (int32_t iii=0; iii < m_data.Size() && iii < _obj.m_data.Size(); iii++) {
|
||||||
uniChar_t elemA = m_data[iii].ChangeOrder();
|
etk::UniChar elemA = m_data[iii].ChangeOrder();
|
||||||
uniChar_t elemB = _obj.m_data[iii].ChangeOrder();
|
etk::UniChar elemB = _obj.m_data[iii].ChangeOrder();
|
||||||
if (elemA != elemB) {
|
if (elemA != elemB) {
|
||||||
if (elemA < elemB) {
|
if (elemA < elemB) {
|
||||||
return true;
|
return true;
|
||||||
@ -457,8 +457,8 @@ bool etk::UString::operator<= (const etk::UString& _obj) const
|
|||||||
{
|
{
|
||||||
if( this != &_obj ) {
|
if( this != &_obj ) {
|
||||||
for (int32_t iii=0; iii < m_data.Size() && iii < _obj.m_data.Size(); iii++) {
|
for (int32_t iii=0; iii < m_data.Size() && iii < _obj.m_data.Size(); iii++) {
|
||||||
uniChar_t elemA = m_data[iii].ChangeOrder();
|
etk::UniChar elemA = m_data[iii].ChangeOrder();
|
||||||
uniChar_t elemB = _obj.m_data[iii].ChangeOrder();
|
etk::UniChar elemB = _obj.m_data[iii].ChangeOrder();
|
||||||
if (elemA != elemB) {
|
if (elemA != elemB) {
|
||||||
if (elemA < elemB) {
|
if (elemA < elemB) {
|
||||||
return true;
|
return true;
|
||||||
@ -543,6 +543,18 @@ const etk::UString& etk::UString::operator+= (const etk::UString &_obj)
|
|||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
const etk::UString& etk::UString::operator+= (const etk::UniChar& _obj)
|
||||||
|
{
|
||||||
|
// remove the last '\0'
|
||||||
|
m_data.PopBack();
|
||||||
|
// copy the data ...
|
||||||
|
m_data.PushBack(_obj);
|
||||||
|
// add the last '\0' element
|
||||||
|
m_data.PushBack('\0');
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
etk::UString etk::UString::operator+ (const etk::UString &_obj) const
|
etk::UString etk::UString::operator+ (const etk::UString &_obj) const
|
||||||
{
|
{
|
||||||
@ -580,7 +592,7 @@ void etk::UString::Add(int32_t _currentID, const char* _inputData)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void etk::UString::Add(int32_t _currentID, const uniChar_t* _inputData)
|
void etk::UString::Add(int32_t _currentID, const etk::UniChar* _inputData)
|
||||||
{
|
{
|
||||||
// get the input lenght
|
// get the input lenght
|
||||||
int32_t len = strlen(_inputData);
|
int32_t len = strlen(_inputData);
|
||||||
@ -599,9 +611,9 @@ void etk::UString::Add(int32_t _currentID, const uniChar_t* _inputData)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void etk::UString::Add(int32_t _currentID, const uniChar_t _inputData)
|
void etk::UString::Add(int32_t _currentID, const etk::UniChar _inputData)
|
||||||
{
|
{
|
||||||
uniChar_t data[2];
|
etk::UniChar data[2];
|
||||||
data[0] = _inputData;
|
data[0] = _inputData;
|
||||||
data[1] = 0;
|
data[1] = 0;
|
||||||
Add(_currentID, data);
|
Add(_currentID, data);
|
||||||
@ -630,7 +642,7 @@ void etk::UString::Clear(void)
|
|||||||
m_data.PushBack('\0');
|
m_data.PushBack('\0');
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t etk::UString::FindForward(const uniChar_t _element, int32_t _startPos) const
|
int32_t etk::UString::FindForward(const etk::UniChar _element, int32_t _startPos) const
|
||||||
{
|
{
|
||||||
if (_startPos < 0) {
|
if (_startPos < 0) {
|
||||||
_startPos = 0;
|
_startPos = 0;
|
||||||
@ -645,7 +657,7 @@ int32_t etk::UString::FindForward(const uniChar_t _element, int32_t _startPos) c
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t etk::UString::FindBack(const uniChar_t _element, int32_t _startPos) const
|
int32_t etk::UString::FindBack(const etk::UniChar _element, int32_t _startPos) const
|
||||||
{
|
{
|
||||||
if (_startPos < 0) {
|
if (_startPos < 0) {
|
||||||
return -1;
|
return -1;
|
||||||
@ -680,9 +692,9 @@ etk::UString etk::UString::Extract(int32_t _posStart, int32_t _posEnd) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
etk::Vector<uniChar_t> etk::UString::GetVector(void)
|
etk::Vector<etk::UniChar> etk::UString::GetVector(void)
|
||||||
{
|
{
|
||||||
etk::Vector<uniChar_t> out = m_data;
|
etk::Vector<etk::UniChar> out = m_data;
|
||||||
out.PopBack();
|
out.PopBack();
|
||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
@ -875,7 +887,7 @@ double etk::UString::ToDouble(void) const
|
|||||||
{
|
{
|
||||||
double ret=0;
|
double ret=0;
|
||||||
bool isOdd = false;
|
bool isOdd = false;
|
||||||
int32_t dotPos = -1;
|
float dotPos = -1;
|
||||||
for (int32_t iii=0; iii<m_data.Size(); iii++) {
|
for (int32_t iii=0; iii<m_data.Size(); iii++) {
|
||||||
if( iii==0
|
if( iii==0
|
||||||
&& ( m_data[iii] == '-'
|
&& ( m_data[iii] == '-'
|
||||||
@ -884,9 +896,10 @@ double etk::UString::ToDouble(void) const
|
|||||||
isOdd = true;
|
isOdd = true;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
TK_DEBUG( *this << " curent val " << m_data[iii] << "out=" << ret);
|
||||||
if (dotPos == -1) {
|
if (dotPos == -1) {
|
||||||
if (m_data[iii] == '.') {
|
if (m_data[iii] == '.') {
|
||||||
dotPos = 1;
|
dotPos = 0.1;
|
||||||
// jump at the next element
|
// jump at the next element
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -894,9 +907,9 @@ double etk::UString::ToDouble(void) const
|
|||||||
if (true==m_data[iii].IsInteger()) {
|
if (true==m_data[iii].IsInteger()) {
|
||||||
int32_t val = m_data[iii].ToInt32();
|
int32_t val = m_data[iii].ToInt32();
|
||||||
double val2 = val;
|
double val2 = val;
|
||||||
if (dotPos>=0) {
|
if (dotPos>0) {
|
||||||
ret += (val2*(((double)dotPos)*0.1));
|
ret += val2*dotPos;
|
||||||
dotPos++;
|
dotPos/=10.0;
|
||||||
} else {
|
} else {
|
||||||
ret = ret*10.0 + val2;
|
ret = ret*10.0 + val2;
|
||||||
}
|
}
|
||||||
@ -908,6 +921,7 @@ double etk::UString::ToDouble(void) const
|
|||||||
if (isOdd == true) {
|
if (isOdd == true) {
|
||||||
ret *= -1.0;
|
ret *= -1.0;
|
||||||
}
|
}
|
||||||
|
TK_DEBUG( *this << " end =" << ret);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ namespace etk
|
|||||||
|
|
||||||
// single element adding
|
// single element adding
|
||||||
UString(const bool _inputData, printMode_te _mode=printModeString, bool _preset=false);
|
UString(const bool _inputData, printMode_te _mode=printModeString, bool _preset=false);
|
||||||
UString(const uniChar_t _inputData);
|
UString(const etk::UniChar& _inputData);
|
||||||
UString(const char* _data, unicode::charset_te _inputCharset);
|
UString(const char* _data, unicode::charset_te _inputCharset);
|
||||||
UString(const float _inputData);
|
UString(const float _inputData);
|
||||||
UString(const double _inputData);
|
UString(const double _inputData);
|
||||||
@ -52,17 +52,17 @@ namespace etk
|
|||||||
UString(const uint32_t& _inputData, printMode_te _mode=printModeDecimal, bool _preset=false) { Set((uint64_t)_inputData, _mode, _preset); };
|
UString(const uint32_t& _inputData, printMode_te _mode=printModeDecimal, bool _preset=false) { Set((uint64_t)_inputData, _mode, _preset); };
|
||||||
UString(const uint64_t& _inputData, printMode_te _mode=printModeDecimal, bool _preset=false) { Set(_inputData, _mode, _preset); };
|
UString(const uint64_t& _inputData, printMode_te _mode=printModeDecimal, bool _preset=false) { Set(_inputData, _mode, _preset); };
|
||||||
// multiple element add
|
// multiple element add
|
||||||
UString(const uniChar_t* _inputData, int32_t _len = -1);
|
UString(const etk::UniChar* _inputData, int32_t _len = -1);
|
||||||
UString(const char* _inputData, int32_t _len = -1);
|
UString(const char* _inputData, int32_t _len = -1);
|
||||||
UString(const etk::Vector<char>& _inputData);
|
UString(const etk::Vector<char>& _inputData);
|
||||||
UString(const etk::Vector<int8_t>& _inputData);
|
UString(const etk::Vector<int8_t>& _inputData);
|
||||||
UString(const etk::Vector<uniChar_t>& _inputData);
|
UString(const etk::Vector<etk::UniChar>& _inputData);
|
||||||
// generic setter
|
// generic setter
|
||||||
void Set(const uniChar_t* _inputData, int32_t _len=-1);
|
void Set(const etk::UniChar* _inputData, int32_t _len=-1);
|
||||||
void Set(const char* _inputData, int32_t _len=-1);
|
void Set(const char* _inputData, int32_t _len=-1);
|
||||||
void Set(const etk::Vector<char>& _inputData);
|
void Set(const etk::Vector<char>& _inputData);
|
||||||
void Set(const etk::Vector<int8_t>& _inputData);
|
void Set(const etk::Vector<int8_t>& _inputData);
|
||||||
void Set(const etk::Vector<uniChar_t>& _inputData);
|
void Set(const etk::Vector<etk::UniChar>& _inputData);
|
||||||
private:
|
private:
|
||||||
void SetNumber(bool _negative, const uint64_t& _inputData, etk::UString::printMode_te _mode, bool _preset);
|
void SetNumber(bool _negative, const uint64_t& _inputData, etk::UString::printMode_te _mode, bool _preset);
|
||||||
public:
|
public:
|
||||||
@ -93,6 +93,7 @@ namespace etk
|
|||||||
* += operator
|
* += operator
|
||||||
*****************************************************/
|
*****************************************************/
|
||||||
const etk::UString& operator+= (const etk::UString& _obj);
|
const etk::UString& operator+= (const etk::UString& _obj);
|
||||||
|
//const etk::UString& operator+= (const etk::UniChar& _obj);
|
||||||
/*****************************************************
|
/*****************************************************
|
||||||
* + operator
|
* + operator
|
||||||
*****************************************************/
|
*****************************************************/
|
||||||
@ -131,8 +132,8 @@ namespace etk
|
|||||||
// End With ...
|
// End With ...
|
||||||
bool EndWith(const etk::UString& _data, bool _caseSensitive=true) const ;
|
bool EndWith(const etk::UString& _data, bool _caseSensitive=true) const ;
|
||||||
// Find element
|
// Find element
|
||||||
int32_t FindForward(const uniChar_t _data, int32_t _startPos=0) const;
|
int32_t FindForward(const etk::UniChar _data, int32_t _startPos=0) const;
|
||||||
int32_t FindBack(const uniChar_t _data, int32_t _startPos=0x7FFFFFFF) const;
|
int32_t FindBack(const etk::UniChar _data, int32_t _startPos=0x7FFFFFFF) const;
|
||||||
|
|
||||||
bool IsEmpty(void) const;
|
bool IsEmpty(void) const;
|
||||||
int32_t Size(void) const;
|
int32_t Size(void) const;
|
||||||
@ -141,14 +142,14 @@ namespace etk
|
|||||||
* Generic modification function
|
* Generic modification function
|
||||||
*****************************************************/
|
*****************************************************/
|
||||||
void Add(int32_t _currentID, const char* _inputData);
|
void Add(int32_t _currentID, const char* _inputData);
|
||||||
void Add(int32_t _currentID, const uniChar_t* _inputData);
|
void Add(int32_t _currentID, const etk::UniChar* _inputData);
|
||||||
void Add(int32_t _currentID, const uniChar_t _inputData);
|
void Add(int32_t _currentID, const etk::UniChar _inputData);
|
||||||
void Remove(int32_t _currentID, int32_t _len);
|
void Remove(int32_t _currentID, int32_t _len);
|
||||||
void Clear(void);
|
void Clear(void);
|
||||||
void Append(const etk::UniChar& _inputData);
|
void Append(const etk::UniChar& _inputData);
|
||||||
|
|
||||||
etk::Vector<etk::UniChar> GetVector(void);
|
etk::Vector<etk::UniChar> GetVector(void);
|
||||||
uniChar_t* pointer(void) { return &m_data[0]; };
|
etk::UniChar* pointer(void) { return &m_data[0]; };
|
||||||
|
|
||||||
etk::Char c_str(void) const;
|
etk::Char c_str(void) const;
|
||||||
|
|
||||||
@ -221,7 +222,7 @@ namespace etk
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t strlen(const uniChar_t * _data);
|
int32_t strlen(const etk::UniChar * _data);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user