예제 #1
0
        public static JsonBuffer From(JsonToken token)
        {
            JsonTokenClass clazz = token.Class;

            if (clazz == JsonTokenClass.Null)
            {
                return(_null);
            }

            if (!clazz.IsScalar)
            {
                throw new ArgumentException("Token must represent a JSON scalar value or null.", "token");
            }

            if (clazz == JsonTokenClass.Boolean)
            {
                return(token.Equals(JsonToken.True()) ? _true : _false);
            }

            JsonBufferStorage storage = new JsonBufferStorage(1);

            storage.Write(token);
            return(storage.ToBuffer());
        }
예제 #2
0
 protected override void Write(JsonToken token)
 {
     _storage.Write(token);
 }