public ArgumentDescription(WoopsaMethodArgumentInfo argumentInfo, Type type, WoopsaConverter converter) { ArgumentInfo = argumentInfo; Type = type; Converter = converter; }
public void RegisterConverter(Type type, WoopsaConverter converter, WoopsaValueType woopsaValueType) { ConverterDescriptions[type] = new WoopsaConverterDescription() { Converter = converter, WoopsaValueType = woopsaValueType }; }
public MethodDescription(WoopsaValueType returnType, ArgumentDescriptions arguments, MethodInfo methodInfo, WoopsaConverter converter) { WoopsaReturnType = returnType; Arguments = arguments; MethodInfo = methodInfo; Converter = converter; }
public PropertyDescription(WoopsaValueType type, PropertyInfo propertyInfo, bool isReadOnly, WoopsaConverter converter) { WoopsaType = type; PropertyInfo = propertyInfo; IsReadOnly = isReadOnly; Converter = converter; }
public virtual bool InferWoopsaType(Type type, out WoopsaValueType woopsaValueType, out WoopsaConverter converter) { if (ConverterDescriptions.TryGetValue(type, out WoopsaConverterDescription converterDescription)) { woopsaValueType = converterDescription.WoopsaValueType; converter = converterDescription.Converter; return(true); } else { converter = WoopsaConverterDefault.Default; return(WoopsaTypeUtils.InferWoopsaType(type, out woopsaValueType)); } }