diff options
Diffstat (limited to 'Assets/ThirdParty/VRM/VRM/UniJSON/Scripts/Utf8String/Utf8StringBuilder.cs')
-rw-r--r-- | Assets/ThirdParty/VRM/VRM/UniJSON/Scripts/Utf8String/Utf8StringBuilder.cs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/Assets/ThirdParty/VRM/VRM/UniJSON/Scripts/Utf8String/Utf8StringBuilder.cs b/Assets/ThirdParty/VRM/VRM/UniJSON/Scripts/Utf8String/Utf8StringBuilder.cs new file mode 100644 index 00000000..59a58b7e --- /dev/null +++ b/Assets/ThirdParty/VRM/VRM/UniJSON/Scripts/Utf8String/Utf8StringBuilder.cs @@ -0,0 +1,33 @@ +using System.Text; + +namespace UniJSON +{ + public class Utf8StringBuilder + { + ByteBuffer m_buffer = new ByteBuffer(); + + public void Ascii(char c) + { + m_buffer.Push((byte)c); + } + + static Encoding s_utf8 = new UTF8Encoding(false); + + public void Quote(string text) + { + Ascii('"'); + m_buffer.Push(s_utf8.GetBytes(text)); + Ascii('"'); + } + + public void Add(Utf8String str) + { + m_buffer.Push(str.Bytes); + } + + public Utf8String ToUtf8String() + { + return new Utf8String(m_buffer.Bytes); + } + } +} |