private object Devalize(VAL val) { if (this.devalizer is string) { VAL x = Script.Run(val, (string)devalizer, new Memory()); return(x.HostValue); } if (this.devalizer is Devalizer) { Devalizer devalizer = (Devalizer)this.devalizer; return(devalizer(val)); } if (this.valizer is IValizer) { IValizer I = (IValizer)this.valizer; return(I.Devalizer(val)); } return(null); }
/// <summary> /// Register valizer and devalizer /// </summary> /// <param name="type"></param> /// <param name="valizer"></param> /// <param name="devalizer"></param> /// <returns></returns> public static VAL Register(Type type, Valizer valizer, Devalizer devalizer) { return(ValizerScript.Register(type, valizer, devalizer)); }