public TyonAddress RequestAddress(TyonDehydrater dehydrater) { if (GetTyonAddress() == null) { SetTyonAddress(dehydrater.GetNewInternalAddress()); } return(GetTyonAddress()); }
public TyonObject(object obj, TyonDehydrater dehydrater) : this() { dehydrater.RegisterInternalObject(obj, this); SetTyonType(TyonType.CreateTyonType(obj.GetType())); SetTyonVariables( dehydrater.GetDesignatedVariables(obj.GetType()) .Convert(v => new TyonVariable(v.CreateStrongInstance(obj), dehydrater)) ); }
public override TyonValue Dehydrate(Type field_type, object value, TyonDehydrater dehydrater) { if (value.IsToStringOverridden()) { if (field_type.CanHaveChildTypes()) { return(new TyonValue_Surrogate(value, dehydrater)); } return(new TyonValue_String(value, dehydrater)); } return(new TyonValue_Object(value, dehydrater)); }
public override TyonValue Dehydrate(Type field_type, object value, TyonDehydrater dehydrater) { return(new TyonValue_Array(field_type.GetIEnumerableType(), value, dehydrater)); }
public TyonValue_Boolean(object value, TyonDehydrater dehydrater) : this() { SetBool(value.ConvertEX <bool>()); }
public TyonValueList(Type element_type, IEnumerable <object> values, TyonDehydrater dehydrater) : this() { SetTyonValues(values.Convert(v => dehydrater.CreateTyonValue(element_type, v))); }
public override TyonValue Dehydrate(Type field_type, object value, TyonDehydrater dehydrater) { return(new TyonValue_ExternalAddress(dehydrater.RegisterExternalObject(value), dehydrater)); }
public override TyonValue Dehydrate(Type field_type, object value, TyonDehydrater dehydrater) { return(new TyonValue_Type(value.ConvertEX <Type>(), dehydrater)); }
public TyonValue_Decimal(object value, TyonDehydrater dehydrater) : this() { SetDecimal(value.ConvertEX <decimal>()); }
public TyonValue_Type(Type type, TyonDehydrater dehydrater) { SetTyonType(TyonType.CreateTyonType(type)); }
public TyonValue_Surrogate(object value, TyonDehydrater dehydrater) : this() { SetTyonSurrogate(new TyonSurrogate(value, dehydrater)); }
public TyonValue_Float(object value, TyonDehydrater dehydrater) : this() { SetFloat(value.ConvertEX <float>()); }
public TyonValue_ExternalAddress(TyonAddress a, TyonDehydrater dehydrater) : this() { SetTyonAddress(a); }
public TyonValue_String(object value, TyonDehydrater dehydrater) : this() { SetString(value.ToStringEX()); }
public TyonArray(Type element_type, object value, TyonDehydrater dehydrater) : this() { SetTyonType(TyonType.CreateTyonType(element_type)); SetTyonValueList(new TyonValueList(element_type, value.ToEnumerable <object>(), dehydrater)); }
public TyonVariable(VariableInstance variable, TyonDehydrater dehydrater) : this() { SetId(variable.GetVariable().GetVariableName()); SetTyonValue(dehydrater.CreateTyonValue(variable.GetVariableType(), variable.GetContents())); }
public abstract TyonValue Dehydrate(Type field_type, object value, TyonDehydrater dehydrater);
public TyonSurrogate(object value, TyonDehydrater dehydrater) : this() { SetTyonType(TyonType.CreateTyonType(value.GetTypeEX())); SetTyonValue(new TyonValue_String(value, dehydrater)); }
public TyonValue_Long(object value, TyonDehydrater dehydrater) : this() { SetLong(value.ConvertEX <long>()); }
public TyonValue_Array(Type element_type, object value, TyonDehydrater dehydrater) : this() { SetTyonArray(new TyonArray(element_type, value, dehydrater)); }
public override TyonValue Dehydrate(Type field_type, object value, TyonDehydrater dehydrater) { value = deconstruction_invokers.Fetch(value.GetType())(value); return(dehydrater.CreateTyonValue(value.GetTypeEX(), value)); }
public override TyonValue Dehydrate(Type field_type, object value, TyonDehydrater dehydrater) { value = Substitute(value); return(dehydrater.CreateTyonValue(value.GetTypeEX(), value)); }
public TyonValue_InternalAddress(TyonAddress address, TyonDehydrater dehydrater) : this() { SetTyonAddress(address); }
public override TyonValue Dehydrate(Type field_type, object value, TyonDehydrater dehydrater) { return(new TyonValue_Decimal(value, dehydrater)); }
public TyonValue_Double(object value, TyonDehydrater dehydrater) : this() { SetDouble(value.ConvertEX <double>()); }
public TyonValue_Int(object value, TyonDehydrater dehydrater) : this() { SetInt(value.ConvertEX <int>()); }
public TyonValue_Object(object value, TyonDehydrater dehydrater) : this() { SetTyonObject(new TyonObject(value, dehydrater)); }