Inherits System::Object.
Inherited by System::Text::ICUEncoding, and System::Text::UTF7Encoding.
Public Types | |
typedef System::SharedPtr< Encoding > | Ptr |
RTTI. More... | |
Public Types inherited from System::Object | |
typedef SmartPtr< Object > | ptr |
Alias for smart pointer type. More... | |
Public Member Functions | |
ASPOSECPP_SHARED_API bool | Equals (SharedPtr< Object > obj) override |
ASPOSECPP_SHARED_API int | GetHashCode () const override |
virtual ASPOSECPP_SHARED_API int | get_CodePage () |
virtual ASPOSECPP_SHARED_API int | get_WindowsCodePage () |
virtual ASPOSECPP_SHARED_API String | get_WebName () |
virtual ASPOSECPP_SHARED_API String | get_BodyName () |
virtual ASPOSECPP_SHARED_API String | get_EncodingName () |
virtual ASPOSECPP_SHARED_API String | get_HeaderName () |
virtual ASPOSECPP_SHARED_API bool | get_IsSingleByte () |
virtual ASPOSECPP_SHARED_API bool | get_IsBrowserDisplay () |
virtual ASPOSECPP_SHARED_API bool | get_IsBrowserSave () |
virtual ASPOSECPP_SHARED_API bool | get_IsMailNewsDisplay () |
virtual ASPOSECPP_SHARED_API bool | get_IsMailNewsSave () |
ASPOSECPP_SHARED_API bool | get_IsReadOnly () |
ASPOSECPP_SHARED_API DecoderFallbackPtr | get_DecoderFallback () const |
ASPOSECPP_SHARED_API void | set_DecoderFallback (const DecoderFallbackPtr &value) |
ASPOSECPP_SHARED_API const EncoderFallbackPtr | get_EncoderFallback () const |
ASPOSECPP_SHARED_API void | set_EncoderFallback (const EncoderFallbackPtr &value) |
virtual ASPOSECPP_SHARED_API int | GetByteCount (ArrayPtr< char_t > chars, int index, int count) |
virtual ASPOSECPP_SHARED_API int | GetByteCount (System::Details::ArrayView< char_t > chars, int index, int count) |
template<std::size_t N> | |
int | GetByteCount (const System::Details::StackArray< char_t, N > &chars, int index, int count) |
virtual ASPOSECPP_SHARED_API int | GetByteCount (const String &s) |
virtual ASPOSECPP_SHARED_API int | GetByteCount (ArrayPtr< char_t > chars) |
virtual ASPOSECPP_SHARED_API int | GetByteCount (const char_t *chars, int count) |
virtual ASPOSECPP_SHARED_API int | GetBytes (ArrayPtr< char_t > chars, int char_index, int char_count, ArrayPtr< uint8_t > bytes, int byte_index) |
virtual ASPOSECPP_SHARED_API int | GetBytes (System::Details::ArrayView< char_t > chars, int char_index, int char_count, System::Details::ArrayView< uint8_t > bytes, int byte_index) |
template<std::size_t SC, std::size_t SB> | |
int | GetBytes (System::Details::StackArray< char_t, SC > &chars, int char_index, int char_count, System::Details::StackArray< uint8_t, SB > &bytes, int byte_index) |
virtual ASPOSECPP_SHARED_API int | GetBytes (const String &s, int char_index, int char_count, ArrayPtr< uint8_t > bytes, int byte_index) |
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > | GetBytes (const String &s) |
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > | GetBytes (ArrayPtr< char_t > chars, int index, int count) |
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > | GetBytes (const System::Details::ArrayView< char_t > &chars, int index, int count) |
template<std::size_t N> | |
ArrayPtr< uint8_t > | GetBytes (const System::Details::StackArray< char_t, N > &chars, int index, int count) |
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > | GetBytes (ArrayPtr< char_t > chars) |
virtual ASPOSECPP_SHARED_API int | GetBytes (const char_t *chars, int char_count, uint8_t *bytes, int byte_count) |
virtual ASPOSECPP_SHARED_API int | GetCharCount (ArrayPtr< uint8_t > bytes, int index, int count) |
virtual ASPOSECPP_SHARED_API int | GetCharCount (ArrayPtr< uint8_t > bytes) |
virtual ASPOSECPP_SHARED_API int | GetCharCount (const uint8_t *bytes, int count) |
virtual ASPOSECPP_SHARED_API int | GetChars (ArrayPtr< uint8_t > bytes, int byte_index, int byte_count, ArrayPtr< char_t > chars, int char_index) |
virtual ASPOSECPP_SHARED_API ArrayPtr< char_t > | GetChars (ArrayPtr< uint8_t > bytes, int index, int count) |
virtual ASPOSECPP_SHARED_API ArrayPtr< char_t > | GetChars (ArrayPtr< uint8_t > bytes) |
virtual ASPOSECPP_SHARED_API int | GetChars (const uint8_t *bytes, int byte_count, char_t *chars, int char_count) |
virtual ASPOSECPP_SHARED_API DecoderPtr | GetDecoder () |
virtual ASPOSECPP_SHARED_API EncoderPtr | GetEncoder () |
virtual ASPOSECPP_SHARED_API String | GetString (uint8_t *bytes, int byte_count) |
virtual ASPOSECPP_SHARED_API String | GetString (ArrayPtr< uint8_t > bytes) |
virtual ASPOSECPP_SHARED_API String | GetString (const System::Details::ArrayView< uint8_t > &bytes) |
template<std::size_t N> | |
String | GetString (System::Details::StackArray< uint8_t, N > &bytes) |
virtual ASPOSECPP_SHARED_API String | GetString (ArrayPtr< uint8_t > bytes, int index, int count) |
virtual ASPOSECPP_SHARED_API String | GetString (const System::Details::ArrayView< uint8_t > &bytes, int index, int count) |
template<std::size_t N> | |
String | GetString (System::Details::StackArray< uint8_t, N > bytes, int index, int count) |
virtual ASPOSECPP_SHARED_API int | GetMaxByteCount (int char_count)=0 |
virtual ASPOSECPP_SHARED_API int | GetMaxCharCount (int byte_count)=0 |
virtual ASPOSECPP_SHARED_API SharedPtr< Object > | Clone () |
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > | GetPreamble () |
Public Member Functions inherited from System::Object | |
ASPOSECPP_SHARED_API | Object () |
Creates object. Initializes all internal data structures. More... | |
virtual ASPOSECPP_SHARED_API | ~Object () |
Destroys object. Frees all internal data structures. More... | |
ASPOSECPP_SHARED_API | Object (Object const &x) |
Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More... | |
Object & | operator= (Object const &x) |
Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More... | |
Object * | SharedRefAdded () |
Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More... | |
int | SharedRefRemovedSafe () |
Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More... | |
int | RemovedSharedRefs (int count) |
Decreases shared reference count by specified value. More... | |
Detail::SmartPtrCounter * | WeakRefAdded () |
Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More... | |
void | WeakRefRemoved () |
Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More... | |
Detail::SmartPtrCounter * | GetCounter () |
Gets reference counter data structure associated with the object. More... | |
int | SharedCount () const |
Gets current value of shared reference counter. More... | |
ASPOSECPP_SHARED_API void | Lock () |
Implements C# lock() statement locking. Call directly or use LockContext sentry object. More... | |
ASPOSECPP_SHARED_API void | Unlock () |
Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More... | |
virtual ASPOSECPP_SHARED_API bool | Equals (ptr obj) |
Compares objects using C# Object.Equals semantics. More... | |
virtual ASPOSECPP_SHARED_API String | ToString () const |
Analog of C# Object.ToString() method. Enables converting custom objects to string. More... | |
virtual ASPOSECPP_SHARED_API ptr | MemberwiseClone () const |
Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More... | |
virtual ASPOSECPP_SHARED_API const TypeInfo & | GetType () const |
Gets actual type of object. Analog of C# System.Object.GetType() call. More... | |
virtual ASPOSECPP_SHARED_API bool | Is (const TypeInfo &targetType) const |
Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More... | |
virtual ASPOSECPP_SHARED_API void | SetTemplateWeakPtr (uint32_t argument) |
Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More... | |
virtual ASPOSECPP_SHARED_API bool | FastCast (const Details::FastRttiBase &helper, void **out_ptr) const |
For internal purposes only. More... | |
template<> | |
bool | Equals (float const &objA, float const &objB) |
template<> | |
bool | Equals (double const &objA, double const &objB) |
template<> | |
bool | ReferenceEquals (String const &str, std::nullptr_t) |
template<> | |
bool | ReferenceEquals (String const &str1, String const &str2) |
Static Public Member Functions | |
static ASPOSECPP_SHARED_API ArrayPtr< uint8_t > | Convert (const EncodingPtr &src_encoding, const EncodingPtr &dst_encoding, const ArrayPtr< uint8_t > &bytes) |
static ASPOSECPP_SHARED_API ArrayPtr< uint8_t > | Convert (const EncodingPtr &src_encoding, const EncodingPtr &dst_encoding, const ArrayPtr< uint8_t > &bytes, int index, int count) |
static ASPOSECPP_SHARED_API EncodingPtr | get_ASCII () |
static ASPOSECPP_SHARED_API EncodingPtr | get_BigEndianUnicode () |
static ASPOSECPP_SHARED_API EncodingPtr | get_Unicode () |
static ASPOSECPP_SHARED_API EncodingPtr | get_UTF8 () |
static ASPOSECPP_SHARED_API EncodingPtr | get_UTF8Unmarked () |
static ASPOSECPP_SHARED_API EncodingPtr | get_UTF32 () |
static ASPOSECPP_SHARED_API EncodingPtr | get_BigEndianUTF32 () |
static ASPOSECPP_SHARED_API EncodingPtr | get_UTF7 () |
static EncodingPtr | get_Latin1 () |
Gets Latin1 encoding. FOR INTERNAL USE. More... | |
static ASPOSECPP_SHARED_API EncodingPtr | GetEncoding (const String &name) |
static ASPOSECPP_SHARED_API EncodingPtr | GetEncoding (int codepage) |
static ASPOSECPP_SHARED_API EncodingPtr | GetEncoding (int codepage, const EncoderFallbackPtr &encoder_fallback, const DecoderFallbackPtr &decoder_fallback) |
static ASPOSECPP_SHARED_API EncodingPtr | GetEncoding (const String &name, const EncoderFallbackPtr &encoder_fallback, const DecoderFallbackPtr &decoder_fallback) |
static ASPOSECPP_SHARED_API EncodingPtr | get_Default () |
static ASPOSECPP_SHARED_API ArrayPtr< EncodingInfoPtr > | GetEncodings () |
Static Public Member Functions inherited from System::Object | |
static bool | ReferenceEquals (ptr const &objA, ptr const &objB) |
Compares objects by reference. More... | |
template<typename T > | |
static std::enable_if<!IsSmartPtr< T >::value, bool >::type | ReferenceEquals (T const &objA, T const &objB) |
Compares objects by reference. More... | |
template<typename T > | |
static std::enable_if<!IsSmartPtr< T >::value, bool >::type | ReferenceEquals (T const &objA, std::nullptr_t) |
Reference-compares value type object with nullptr. More... | |
template<typename T1 , typename T2 > | |
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type | Equals (T1 const &objA, T2 const &objB) |
Compares reference type objects in C# style. More... | |
template<typename T1 , typename T2 > | |
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type | Equals (T1 const &objA, T2 const &objB) |
Compares value type objects in C# style. More... | |
static const TypeInfo & | Type () |
Implements C# typeof(System.Object) construct. More... | |
Static Public Attributes | |
static constexpr int | DEFAULT_CODE_PAGE = 0 |
Default codepage value. More... | |
Protected Member Functions | |
ASPOSECPP_SHARED_API | Encoding () |
Default constructor. More... | |
ASPOSECPP_SHARED_API | Encoding (int codepage) |
ASPOSECPP_SHARED_API | Encoding (int codepage, const EncoderFallbackPtr &encoder_fallback, const DecoderFallbackPtr &decoder_fallback) |
Encoding (const Details::EncodingInfoInternal *info) | |
Protected Attributes | |
const Details::EncodingInfoInternal * | m_info |
Pointer to internal encoding info. More... | |
const int | m_codepage |
Code page identifier. More... | |
bool | m_is_read_only = true |
Read-only flag. More... | |
Encoding services.
RTTI.
Pointer type.
|
protected |
Default constructor.
|
protected |
Constructor.
codepage | The code page of the preferred encoding. |
|
protected |
Constructor.
codepage | The code page of the preferred encoding. |
encoder_fallback | Fallback to use for encoding. |
decoder_fallback | Fallback to use for decoding. |
|
protected |
Internal constructor.
info | Encoding internal info. |
Clones encoding object.
Reimplemented in System::Text::UTF7Encoding, System::Text::UnicodeEncoding, System::Text::UTF32Encoding, and System::Text::UTF8Encoding.
|
static |
Converts bytes between two encodings.
src_encoding | Source encoding. |
dst_encoding | Destination encoding. |
bytes | Bytes to convert. |
|
static |
Converts bytes between two encodings.
src_encoding | Source encoding. |
dst_encoding | Destination encoding. |
bytes | Bytes to convert. |
index | Slice beginning. |
count | Slice size. |
Compares encodings.
obj | Object to compare to. |
|
static |
Gets ASCII encoding.
|
static |
Gets the standard big-endian Unicode encoding object.
|
static |
Gets the standard big-endian UTF-32 encoding object.
|
virtual |
Gets mail agent body compatible encoding name.
|
virtual |
Gets Windows codepage ID.
ASPOSECPP_SHARED_API DecoderFallbackPtr System::Text::Encoding::get_DecoderFallback | ( | ) | const |
Gets decoder fallback.
|
static |
Gets default encoding.
ASPOSECPP_SHARED_API const EncoderFallbackPtr System::Text::Encoding::get_EncoderFallback | ( | ) | const |
Gets encoder fallback.
|
virtual |
Gets human-readable encoding name.
|
virtual |
Gets mail agent header compatible encoding name.
|
virtual |
Checks whether encoding can be used in browser to display content.
|
virtual |
Checks whether encoding can be used in browser to save content.
|
virtual |
Checks whether encoding can be used in mail client to display content.
|
virtual |
Checks whether encoding can be used in mail client to save content.
ASPOSECPP_SHARED_API bool System::Text::Encoding::get_IsReadOnly | ( | ) |
Checks whether encoding is read-only.
|
virtual |
Checks whether encoding is single byte.
|
static |
Gets Latin1 encoding. FOR INTERNAL USE.
|
static |
Gets the standard Unicode encoding object.
|
static |
|
static |
Gets the standard UTF-7 encoding object.
|
static |
Gets the standard UTF-8 encoding object.
|
static |
Only internal, to be used by the class libraries: Unmarked and non-input-validating
|
virtual |
Gets IANA-compatible encoding name.
|
virtual |
Gets Windows codepage ID.
|
virtual |
Get the number of characters needed to encode a character buffer.
chars | Characters buffer. |
index | Slice begin. |
count | Slice size. |
|
virtual |
Get the number of characters needed to encode a character buffer.
chars | Characters buffer. |
index | Slice begin. |
count | Slice size. |
|
inline |
Get the number of characters needed to encode a character buffer.
chars | Characters buffer. |
index | Slice begin. |
count | Slice size. |
|
virtual |
Get the number of characters needed to encode a string.
s | String to encode. |
|
virtual |
Get the number of characters needed to encode a character buffer.
chars | Characters buffer. |
|
virtual |
Get the number of characters needed to encode a character buffer.
chars | Characters buffer. |
count | Buffer size. |
Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.
|
virtual |
Get the bytes that result from encoding a character buffer.
chars | Characters to encode. |
char_index | Character slice beginning. |
char_count | Number of characters to convert. |
bytes | Buffer to put characters to. |
byte_index | Output buffer offset. |
Reimplemented in System::Text::UTF7Encoding.
|
virtual |
Get the bytes that result from encoding a character buffer.
chars | Characters to encode. |
char_index | Character slice beginning. |
char_count | Number of characters to convert. |
bytes | Buffer to put characters to. |
byte_index | Output buffer offset. |
|
inline |
Get the bytes that result from encoding a character buffer.
chars | Characters to encode. |
char_index | Character slice beginning. |
char_count | Number of characters to convert. |
bytes | Buffer to put characters to. |
byte_index | Output buffer offset. |
|
virtual |
Get the bytes that result from encoding a character buffer.
s | String to encode. |
char_index | Character slice beginning. |
char_count | Number of characters to convert. |
bytes | Buffer to put characters to. |
byte_index | Output buffer offset. |
Reimplemented in System::Text::UTF7Encoding.
|
virtual |
Get the bytes that result from encoding a character buffer.
chars | Characters to encode. |
index | Character slice beginning. |
count | Number of characters to convert. |
|
virtual |
Get the bytes that result from encoding a character buffer.
chars | Characters to encode. |
index | Character slice beginning. |
count | Number of characters to convert. |
|
inline |
Get the bytes that result from encoding a character buffer.
chars | Characters to encode. |
index | Character slice beginning. |
count | Number of characters to convert. |
|
virtual |
Get the bytes that result from encoding a character buffer.
chars | Characters to encode. |
|
virtual |
Get the bytes that result from encoding a character buffer.
chars | Characters to encode. |
char_count | Number of characters to convert. |
bytes | Buffer to put characters to. |
byte_count | Output buffer size. |
Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.
|
virtual |
Get the number of characters needed to decode a byte buffer.
bytes | Bytes to decode. |
index | Slice beginning. |
count | Slice size. |
Reimplemented in System::Text::UTF7Encoding.
|
virtual |
Get the number of characters needed to decode a byte buffer.
bytes | Bytes to decode. |
|
virtual |
Get the number of characters needed to decode a byte buffer.
bytes | Bytes to decode. |
count | Bytes count. |
Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.
|
virtual |
Get the characters that result from decoding a byte buffer.
bytes | Buffer to read bytes from. |
byte_index | Input buffer offset. |
byte_count | Input buffer size. |
chars | Buffer to put characters to. |
char_index | Output buffer offset. |
Reimplemented in System::Text::UTF7Encoding.
|
virtual |
Get the characters that result from decoding a byte buffer.
bytes | Buffer to read bytes from. |
byte_count | Input buffer size. |
chars | Buffer to put characters to. |
char_count | Output buffer size. |
Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.
|
virtual |
Get a decoder that forwards requests to this object.
Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.
|
virtual |
Get an encoder that forwards requests to this object.
Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.
|
static |
|
static |
Gets encoding by codepage.
codepage | Codepage number. |
|
static |
Gets encoding by codepage.
codepage | Codepage number. |
encoder_fallback | Fallback to use for encoding. |
decoder_fallback | Fallback to use for decoding. |
|
static |
|
static |
Gets list of known encodings.
|
overridevirtual |
Hashes encoding.
Reimplemented from System::Object.
Reimplemented in System::Text::UTF7Encoding, System::Text::UTF8Encoding, System::Text::UTF32Encoding, and System::Text::UnicodeEncoding.
|
pure virtual |
Get the maximum number of bytes needed to encode a specified number of characters.
char_count | Number of characters to encode. |
Implemented in System::Text::UTF7Encoding, System::Text::ICUEncoding, System::Text::UTF8Encoding, System::Text::UnicodeEncoding, and System::Text::ASCIIEncoding.
|
pure virtual |
Get the maximum number of characters needed to decode a specified number of bytes.
byte_count | Number of bytes to decode. |
Implemented in System::Text::UTF7Encoding, System::Text::ICUEncoding, System::Text::UTF8Encoding, System::Text::UnicodeEncoding, and System::Text::ASCIIEncoding.
|
virtual |
Returns a sequence of bytes that denotes the encoding (e. g. BOM).
Reimplemented in System::Text::ICUEncoding, System::Text::UTF32Encoding, System::Text::UTF8Encoding, and System::Text::UnicodeEncoding.
|
virtual |
|
virtual |
|
inline |
|
virtual |
Decodes a buffer of bytes into a string.
bytes | Buffer to read bytes from. |
index | Input buffer offset. |
count | Input buffer size. |
Reimplemented in System::Text::UTF7Encoding.
|
virtual |
|
inline |
ASPOSECPP_SHARED_API void System::Text::Encoding::set_DecoderFallback | ( | const DecoderFallbackPtr & | value | ) |
Sets decoder fallback.
value | Decoder fallback object. |
ASPOSECPP_SHARED_API void System::Text::Encoding::set_EncoderFallback | ( | const EncoderFallbackPtr & | value | ) |
Sets encoder fallback.
value | Encoder fallback object. |
|
static |
Default codepage value.
|
protected |
Code page identifier.
|
protected |
Pointer to internal encoding info.
|
protected |
Read-only flag.