internal void Export(Coherent.UI.Binding.Exporter exporter) { switch (Type) { case ValueType.Null: exporter.Export(this.ActualValue); break; case ValueType.Boolean: exporter.Export((bool)this.ActualValue); break; case ValueType.Integer: exporter.Export((int)this.ActualValue); break; case ValueType.UInteger: exporter.Export((uint)this.ActualValue); break; case ValueType.SByte: exporter.Export((sbyte)this.ActualValue); break; case ValueType.Byte: exporter.Export((byte)this.ActualValue); break; case ValueType.Number: exporter.Export((double)this.ActualValue); break; case ValueType.String: exporter.Export((string)this.ActualValue); break; case ValueType.Array: exporter.Export((Value[])this.ActualValue); break; case ValueType.Object: exporter.Export(((ValueObject)this.ActualValue).Properties); break; } }
internal void Export(Exporter exporter, object value) { exporter.Blob.BeginSequence(Coherent.UI.Mobile.Binding.ValueType.Object, Getters.Length + 1); exporter.Export("__Type"); exporter.Export(RealTypeName); for (var i = 0; i < Getters.Length; ++i) { exporter.Export(Names[i]); Getters[i](value, exporter); } exporter.Blob.EndSequence(); }
private static void ExportByte(Exporter exporter, object value) { exporter.Blob.Write((byte)value); }
private static void ExportBool(Exporter exporter, object value) { exporter.Blob.Write((bool)value); }
private static void ExportUInt(Exporter exporter, object value) { exporter.Blob.Write((uint)value); }
private static void ExportIList(Exporter exporter, object list) { var realList = (System.Collections.IList)list; exporter.Blob.BeginSequence(Coherent.UI.Mobile.Binding.ValueType.Array, realList.Count); foreach (var e in realList) { exporter.Export(e); } exporter.Blob.EndSequence(); }
private static void ExportIDictionary(Exporter exporter, object dict) { var realDict = (System.Collections.IDictionary)dict; exporter.Blob.BeginSequence(Coherent.UI.Mobile.Binding.ValueType.Object, realDict.Count); foreach (System.Collections.DictionaryEntry item in realDict) { exporter.Export(item.Key); exporter.Export(item.Value); } exporter.Blob.EndSequence(); }
private static void ExportArray(Exporter ex, object array) { var realArray = (Array)array; ex.Blob.BeginSequence(Coherent.UI.Mobile.Binding.ValueType.Array, realArray.LongLength); foreach (var e in realArray) { ex.Export(e); } ex.Blob.EndSequence(); }
private static void ExportValue(Exporter exporter, object value) { var realValue = (Coherent.UI.Mobile.Binding.Value)value; realValue.Export(exporter); }
private static void ExportString(Exporter exporter, object value) { exporter.Blob.Write((string)value); }
private static void ExportDouble(Exporter exporter, object value) { exporter.Blob.Write((double)value); }
private static void ExportFloat(Exporter exporter, object value) { exporter.Blob.Write((float)value); }
internal Exporter GetExporter() { Exporter.ResetData(); return(Exporter); }
internal static void ExportObject(Exporter exporter, object value) { exporter.ExecuteExporter(value, value.GetType()); }