CodePorting.Translator Cs2Cpp
CodePorting.Translator.Cs2Cpp.Framework
idn_mapping.h
1
2#pragma once
3
4#include <system/object.h>
5#include <system/string.h>
6#include <system/details/icu_namespace.h>
7
9ASPOSECPP_3RD_PARTY_ICU_NAMESPACE_START{
11 ASPOSECPP_3RD_PARTY_CLASS(IDNA);
12}
13
14namespace System { namespace Globalization {
15
16class IdnMapping;
19
24class ASPOSECPP_SHARED_CLASS IdnMapping final : public Object
25{
27 RTTI_INFO(System::Globalization::IdnMapping, ::System::BaseTypesInfo<System::Object>)
28
29public:
31 ASPOSECPP_SHARED_API IdnMapping();
32
33 IdnMapping(const IdnMapping&) = delete;
34 IdnMapping& operator=(const IdnMapping&) = delete;
35
37 ASPOSECPP_SHARED_API bool get_AllowUnassigned() const;
40 ASPOSECPP_SHARED_API void set_AllowUnassigned(bool value);
42 ASPOSECPP_SHARED_API bool get_UseStd3AsciiRules() const;
45 ASPOSECPP_SHARED_API void set_UseStd3AsciiRules(bool value);
46
50 ASPOSECPP_SHARED_API String GetAscii(const String& unicode) const;
55 ASPOSECPP_SHARED_API String GetAscii(const String& unicode, int index) const;
61 ASPOSECPP_SHARED_API String GetAscii(const String& unicode, int index, int count) const;
62
66 ASPOSECPP_SHARED_API String GetUnicode(const String& ascii) const;
71 ASPOSECPP_SHARED_API String GetUnicode(const String& ascii, int index) const;
77 ASPOSECPP_SHARED_API String GetUnicode(const String& ascii, int index, int count) const;
78
79 // Object interface
83 ASPOSECPP_SHARED_API bool Equals(SharedPtr<Object> value) override;
86 ASPOSECPP_SHARED_API int GetHashCode() const override;
87
88private:
90 bool m_allow_unassigned;
92 bool m_use_std3_ascii_rules;
93
95 std::unique_ptr<codeporting_icu::IDNA> CreateIDNA() const;
96};
97
98}} // namespace System::Globalization
IdnMapping used to map names to Punycode. Objects of this class should only be allocated using System...
Definition: idn_mapping.h:25
bool get_AllowUnassigned() const
Gets flag that indicates if unassigned code points used in operations.
String GetUnicode(const String &ascii) const
Convert ascii domain name to unicode equivalent.
int GetHashCode() const override
Gets hash code for current IdnMapping object.
String GetUnicode(const String &ascii, int index, int count) const
Convert ascii domain name to unicode equivalent.
IdnMapping & operator=(const IdnMapping &)=delete
String GetAscii(const String &unicode, int index, int count) const
Convert unicode domain name to ascii equivalent.
bool get_UseStd3AsciiRules() const
Gets flag that indicates if standard naming conventions used in operations.
bool Equals(SharedPtr< Object > value) override
Compares two IdnMapping objects.
String GetAscii(const String &unicode) const
Convert unicode domain name to ascii equivalent.
IdnMapping(const IdnMapping &)=delete
void set_AllowUnassigned(bool value)
Sets flag that indicates if unassigned code points used in operations.
String GetUnicode(const String &ascii, int index) const
Convert ascii domain name to unicode equivalent.
String GetAscii(const String &unicode, int index) const
Convert unicode domain name to ascii equivalent.
void set_UseStd3AsciiRules(bool value)
Sets flag that indicates if standard naming conventions used in operations.
Base class that enables using methods available for System.Object class in C#. All non-trivial classe...
Definition: object.h:62
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:180
String class used across the library. Is a substitute for C# System.String when translating code....
Definition: string.h:122
SharedPtr< IdnMapping > IdnMappingPtr
IdnMapping pointer type.
Definition: idn_mapping.h:18
Definition: db_command.h:9