acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
aaa___ch.h
1#pragma once
2
3
4#include "acme/prototype/string/x/x_charcategory.h"
5#include "acme/prototype/string/x/x_defines.h"
6#include "acme/prototype/string/x/x_tables.h"
7
8
9
30
31
32CLASS_DECL_ACME ::i32 trailingBytesForUTF8(::ansi_character ch);
33
34
35inline ::i32 ch_unicode_len(::i32 c)
36{
37
38 return trailingBytesForUTF8(c) + 1;
39
40}
41
42
43inline ::i32 str_uni_len(const ::scoped_string & scopedstrUtf8)
44{
45
46 return ch_unicode_len(*pszUtf8);
47
48}
49
50
51
52template < typename CHAR_STRING >
53inline bool is_trimmed_string_empty(CHAR_STRING p);
54
55
56inline bool is_trimmed_empty(const ::ansi_character * p) { return is_trimmed_string_empty(p); }
57inline bool is_trimmed_empty(const ::wd16_character * p) { return is_trimmed_string_empty(p); }
58inline bool is_trimmed_empty(const ::wd32_character * p) { return is_trimmed_string_empty(p); }
59
60
61