Encoding

Encoding class

Encoding services.

class Encoding : public System::Object

Methods

MethodDescription
virtual SharedPtr<Object> Clone()Clones encoding object.
static ArrayPtr<uint8_t> Convert(const EncodingPtr&, const EncodingPtr&, const ArrayPtr<uint8_t>&)Converts bytes between two encodings.
static ArrayPtr<uint8_t> Convert(const EncodingPtr&, const EncodingPtr&, const ArrayPtr<uint8_t>&, int, int)Converts bytes between two encodings.
bool Equals(SharedPtr<Object>) overrideCompares encodings.
virtual bool Equals(ptr)Compares objects using C# Object.Equals semantics.
static std::enable_if<IsSmartPtr<T1>::value&&IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&)Compares reference type objects in C# style.
static bool Equals(float const&, float const&)Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN.
static bool Equals(double const&, double const&)Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN.
virtual bool FastCast(const Details::FastRttiBase&, void **) constFor internal purposes only.
static EncodingPtr get_ASCII()Gets ASCII encoding.
static EncodingPtr get_BigEndianUnicode()Gets the standard big-endian Unicode encoding object.
static EncodingPtr get_BigEndianUTF32()Gets the standard big-endian UTF-32 encoding object.
virtual String get_BodyName()Gets mail agent body compatible encoding name.
virtual int get_CodePage()Gets Windows codepage ID.
DecoderFallbackPtr get_DecoderFallback() constGets decoder fallback.
static EncodingPtr get_Default()Gets default encoding.
const EncoderFallbackPtr get_EncoderFallback() constGets encoder fallback.
virtual String get_EncodingName()Gets human-readable encoding name.
virtual String get_HeaderName()Gets mail agent header compatible encoding name.
virtual bool get_IsBrowserDisplay()Checks whether encoding can be used in browser to display content.
virtual bool get_IsBrowserSave()Checks whether encoding can be used in browser to save content.
virtual bool get_IsMailNewsDisplay()Checks whether encoding can be used in mail client to display content.
virtual bool get_IsMailNewsSave()Checks whether encoding can be used in mail client to save content.
bool get_IsReadOnly()Checks whether encoding is read-only.
virtual bool get_IsSingleByte()Checks whether encoding is single byte.
static EncodingPtr get_Latin1()Gets Latin1 encoding. FOR INTERNAL USE.
static EncodingPtr get_Unicode()Gets the standard Unicode encoding object.
static EncodingPtr get_UTF32()
static EncodingPtr get_UTF7()Gets the standard UTF-7 encoding object.
static EncodingPtr get_UTF8()Gets the standard UTF-8 encoding object.
static EncodingPtr get_UTF8Unmarked()Only internal, to be used by the class libraries: Unmarked and non-input-validating.
virtual String get_WebName()Gets IANA-compatible encoding name.
virtual int get_WindowsCodePage()Gets Windows codepage ID.
virtual int GetByteCount(ArrayPtr<char_t>, int, int)Get the number of characters needed to encode a character buffer.
virtual int GetByteCount(System::Details::ArrayView<char_t>, int, int)Get the number of characters needed to encode a character buffer.
int GetByteCount(const System::Details::StackArray<char_t, N>&, int, int)Get the number of characters needed to encode a character buffer.
virtual int GetByteCount(const String&)Get the number of characters needed to encode a string.
virtual int GetByteCount(ArrayPtr<char_t>)Get the number of characters needed to encode a character buffer.
virtual int GetByteCount(const char_t *, int)Get the number of characters needed to encode a character buffer.
virtual int GetBytes(ArrayPtr<char_t>, int, int, ArrayPtr<uint8_t>, int)Get the bytes that result from encoding a character buffer.
virtual int GetBytes(System::Details::ArrayView<char_t>, int, int, System::Details::ArrayView<uint8_t>, int)Get the bytes that result from encoding a character buffer.
int GetBytes(System::Details::StackArray<char_t, SC>&, int, int, System::Details::StackArray<uint8_t, SB>&, int)Get the bytes that result from encoding a character buffer.
virtual int GetBytes(const String&, int, int, ArrayPtr<uint8_t>, int)Get the bytes that result from encoding a character buffer.
virtual ArrayPtr<uint8_t> GetBytes(const String&)Get the bytes that result from encoding a character buffer.
virtual ArrayPtr<uint8_t> GetBytes(ArrayPtr<char_t>, int, int)Get the bytes that result from encoding a character buffer.
virtual ArrayPtr<uint8_t> GetBytes(const System::Details::ArrayView<char_t>&, int, int)Get the bytes that result from encoding a character buffer.
ArrayPtr<uint8_t> GetBytes(const System::Details::StackArray<char_t, N>&, int, int)Get the bytes that result from encoding a character buffer.
virtual ArrayPtr<uint8_t> GetBytes(ArrayPtr<char_t>)Get the bytes that result from encoding a character buffer.
virtual int GetBytes(const char_t *, int, uint8_t *, int)Get the bytes that result from encoding a character buffer.
virtual int GetCharCount(ArrayPtr<uint8_t>, int, int)Get the number of characters needed to decode a byte buffer.
virtual int GetCharCount(ArrayPtr<uint8_t>)Get the number of characters needed to decode a byte buffer.
virtual int GetCharCount(const uint8_t *, int)Get the number of characters needed to decode a byte buffer.
virtual int GetChars(ArrayPtr<uint8_t>, int, int, ArrayPtr<char_t>, int)Get the characters that result from decoding a byte buffer.
virtual ArrayPtr<char_t> GetChars(ArrayPtr<uint8_t>, int, int)Get the characters that result from decoding a byte buffer.
virtual ArrayPtr<char_t> GetChars(ArrayPtr<uint8_t>)Get the characters that result from decoding a byte buffer.
virtual int GetChars(const uint8_t *, int, char_t *, int)Get the characters that result from decoding a byte buffer.
Detail::SmartPtrCounter * GetCounter()Gets reference counter data structure associated with the object.
virtual DecoderPtr GetDecoder()Get a decoder that forwards requests to this object.
virtual EncoderPtr GetEncoder()Get an encoder that forwards requests to this object.
static EncodingPtr GetEncoding(const String&)Gets encoding by name.
static EncodingPtr GetEncoding(int)Gets encoding by codepage.
static EncodingPtr GetEncoding(int, const EncoderFallbackPtr&, const DecoderFallbackPtr&)Gets encoding by codepage.
static EncodingPtr GetEncoding(const String&, const EncoderFallbackPtr&, const DecoderFallbackPtr&)Gets encoding by name.
static ArrayPtr<EncodingInfoPtr> GetEncodings()Gets list of known encodings.
int GetHashCode() const overrideHashes encoding.
virtual int GetMaxByteCount(int)Get the maximum number of bytes needed to encode a specified number of characters.
virtual int GetMaxCharCount(int)Get the maximum number of characters needed to decode a specified number of bytes.
virtual ArrayPtr<uint8_t> GetPreamble()Returns a sequence of bytes that denotes the encoding (e. g. BOM).
virtual String GetString(uint8_t *, int)Decodes a buffer of bytes into a string.
virtual String GetString(ArrayPtr<uint8_t>)Decodes a buffer of bytes into a string.
virtual String GetString(const System::Details::ArrayView<uint8_t>&)Decodes a buffer of bytes into a string.
String GetString(System::Details::StackArray<uint8_t, N>&)Decodes a buffer of bytes into a string.
virtual String GetString(ArrayPtr<uint8_t>, int, int)Decodes a buffer of bytes into a string.
virtual String GetString(const System::Details::ArrayView<uint8_t>&, int, int)Decodes a buffer of bytes into a string.
String GetString(System::Details::StackArray<uint8_t, N>, int, int)Decodes a buffer of bytes into a string.
virtual const TypeInfo& GetType() constGets actual type of object. Analog of C# System.Object.GetType() call.
virtual bool Is(const TypeInfo&) constCheck if object represents an instance of type described by targetType. Analog of C# ‘is’ operator.
void Lock()Implements C# lock() statement locking. Call directly or use LockContext sentry object.
virtual ptr MemberwiseClone() constAnalog of C# Object.MemberwiseClone() method. Enables cloning custom types.
Object()Creates object. Initializes all internal data structures.
Object(Object const&)Copy constructor. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses.
Object& operator=(Object const&)Assignment operator. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses.
static bool ReferenceEquals(ptr const&, ptr const&)Compares objects by reference.
static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, T const&)Compares objects by reference.
static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, std::nullptr_t)Reference-compares value type object with nullptr.
bool ReferenceEquals(String const&, std::nullptr_t)Specialization of Object::ReferenceEquals for case of string and nullptr.
bool ReferenceEquals(String const&, String const&)Specialization of Object::ReferenceEquals for case of strings.
int RemovedSharedRefs(int)Decreases shared reference count by specified value.
void set_DecoderFallback(const DecoderFallbackPtr&)Sets decoder fallback.
void set_EncoderFallback(const EncoderFallbackPtr&)Sets encoder fallback.
virtual void SetTemplateWeakPtr(uint32_t)Set n’th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode.
int SharedCount() constGets current value of shared reference counter.
Object * SharedRefAdded()Increments shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
int SharedRefRemovedSafe()Decrements and returns shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
virtual String ToString() constAnalog of C# Object.ToString() method. Enables converting custom objects to string.
static const TypeInfo& Type()Implements C# typeof(System.Object) construct.
void Unlock()Implements C# lock() statement unlocking. Call directly or use LockContext sentry object.
Detail::SmartPtrCounter * WeakRefAdded()Increments weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
void WeakRefRemoved()Decrements weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
virtual ~Object()Destroys object. Frees all internal data structures.

Fields

FieldDescription
static constexpr DEFAULT_CODE_PAGEDefault codepage value.

Typedefs

TypedefDescription
PtrRTTI.

See Also