microsoft/onnxruntime-extensions

Public

mirrored fromhttps://github.com/microsoft/onnxruntime-extensionsAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
0f45fef2d9301cc5b479b4df4bd8ecbaac93e1e6

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

base/ustring.cc

69lines · modecode

1// Copyright (c) Microsoft Corporation. All rights reserved.
2// Licensed under the MIT License.
3#include "ustring.h"
4#include <iostream>
5
6
7ustring::ustring() : std::u32string() {
8}
9
10ustring::ustring(char* str) {
11 utf8_converter str_cvt;
12 assign(str_cvt.from_bytes(str));
13}
14
15ustring::ustring(const char* str) {
16 utf8_converter str_cvt;
17 assign(str_cvt.from_bytes(str));
18}
19
20ustring::ustring(std::string& str) {
21 utf8_converter str_cvt;
22 assign(str_cvt.from_bytes(str));
23}
24
25ustring::ustring(const std::string& str) {
26 utf8_converter str_cvt;
27 assign(str_cvt.from_bytes(str));
28}
29
30ustring::ustring(char32_t* str) : std::u32string(str) {}
31
32ustring::ustring(const char32_t* str) : std::u32string(str) {}
33
34ustring::ustring(std::u32string& str) : std::u32string(str) {}
35
36ustring::ustring(std::u32string&& str) : std::u32string(str) {}
37
38ustring::ustring(const std::u32string& str) : std::u32string(str) {}
39
40ustring::ustring(const std::u32string&& str) : std::u32string(str) {}
41
42ustring::ustring(std::string_view& str) {
43 utf8_converter str_cvt;
44 assign(str_cvt.from_bytes(str.data(), str.data() + str.size()));
45}
46
47ustring::ustring(const std::string_view& str) {
48 utf8_converter str_cvt;
49 assign(str_cvt.from_bytes(str.data(), str.data() + str.size()));
50}
51
52ustring::ustring(std::u32string_view& str):std::u32string(str) {}
53
54ustring::ustring(std::u32string_view&& str):std::u32string(str) {}
55
56ustring::ustring(const std::u32string_view& str):std::u32string(str) {}
57
58ustring::ustring(const std::u32string_view&& str):std::u32string(str) {}
59
60ustring::operator std::string() {
61 utf8_converter str_cvt;
62 return str_cvt.to_bytes(*this);
63}
64
65ustring::operator std::string() const {
66 utf8_converter str_cvt;
67 return str_cvt.to_bytes(*this);
68}
69
70