public WriteValue ( object value ) : Cirrus.Future | ||
value | object | |
Результат | Cirrus.Future |
public Future WriteValue(object value)
{
WriteCommaIfNecessary ();
if (value == null) {
buffer.Append ("null");
} else if (value is string) {
WriteString ((string)value);
} else if (value is ValueType) {
// FIXME: enums?
buffer.Append (value.ToString ().ToLowerInvariant ());
} else {
return JsonAdapter.ForType (value.GetType ()).WriteJson (value, this);
}
next_needs_comma = true;
return Future.Fulfilled;
}
public override void WriteJson(object data, JsonWriter writer) { var po = (ParseObject)data; writer.StartObject (); lock (po.property_lock) { foreach (var key in po.updated_properties) { writer.WriteKey (key); var value = po.properties [key]; if (value is DateTime) { throw new NotImplementedException ("Write DateTime"); } else if (value is byte []) { throw new NotImplementedException ("Write byte [] data"); } else if (value is ParseObject) { throw new NotImplementedException ("Write pointer to ParseObject"); } else { writer.WriteValue (value); } } } writer.EndObject (); }