﻿class System.Text.Encoding System.Text.ASCIIEncoding System.Text.UTF8Encoding System.Text.UTF32Encoding System.Text.UnicodeEncoding
	java java.nio.charset.Charset
	python str
	js String
	php string
	rust ignore

property static get Encoding UTF8
	java java.nio.charset.Charset.forName("UTF-8")
	python "UTF-8"
	js "UTF-8"
	php "UTF-8"
	rust "UTF-8"
property static get Encoding ASCII
	java java.nio.charset.Charset.forName("ASCII")
	python "ASCII" ///error ASCII not supported in python
	js "ASCII" ///error ASCII not supported in js
	php "ASCII" ///error ASCII not supported in php
property static get Encoding Unicode
	java java.nio.charset.Charset.forName("UTF-16LE")
	python "UTF-16LE" ///error this encoding not supported in python
	js "UTF-16LE" ///error this encoding not supported in js
	php "UTF-16LE" ///error this encoding not supported in php
property static get Encoding BigEndianUnicode
	java java.nio.charset.Charset.forName("UTF-16BE")
	python "UTF-16BE" ///error this encoding not supported in python
	js "UTF-16BE" ///error this encoding not supported in js
	php "UTF-16BE" ///error this encoding not supported in js

method byte[] GetBytes(string)
	java Utils.encodeCharset({!}, {0})
	python hardcode EncodingGetBytesPython
	js Utils.encodeString({!}, {0})
	php Utils.EncodeString({!}, {0})
	rust {0}.get_utf8()

method char[] GetChars(byte[], *)
	java Utils.decodeCharsetArr({!}, {0}, {1=0}, {2=-1})
	python hardcode EncodingGetStringPython
	js Array.from(Utils.decodeString({!}, {0}, 0, -1))

method string GetString(byte[])
	java Utils.decodeCharset({!}, {0}, 0, -1)
	python hardcode EncodingGetStringPython
	js Utils.decodeString({!}, {0}, 0, -1)
	php Utils.DecodeString({!}, {0}, 0, -1)
	rust NString::from_utf8({0&}, 0, -1)

method string GetString(byte[], int)
	java Utils.decodeCharset({!}, {0}, {1}, -1)
	python hardcode EncodingGetStringPython
	js Utils.decodeString({!}, {0}, {1}, -1)
	php Utils.DecodeString({!}, {0}, {1}, -1)
	rust NString::from_utf8({0&}, {1}, -1)

method string GetString(byte[], int, int)
	java Utils.decodeCharset({!}, {0}, {1}, {2})
	python hardcode EncodingGetStringPython
	js Utils.decodeString({!}, {0}, {1}, {2})
	php Utils.DecodeString({!}, {0}, {1}, {2})
	rust NString::from_utf8({0&}, {1}, {2})

method byte[] GetPreamble()
	java Utils.preambleCharset({!})
	python Utils.preambleCharset({!})
	js Utils.getEncodingPreamble({!})
	php Utils.GetEncodingPreamble({!})

method static Encoding GetEncoding(int) throws ArgumentException
	java Utils.getCharsetByName("windows-" + {0})

method static Encoding GetEncoding(string) throws ArgumentException
	java Utils.getCharsetByName({0})
	js Utils.getCharsetByName({0})
