/// <summary> /// Creates a userdata DynValue from the specified object, using a specific descriptor /// </summary> /// <param name="o">The object</param> /// <param name="descr">The descriptor.</param> /// <returns></returns> public static DynValue Create(object o, IUserDataDescriptor descr) { return(DynValue.NewUserData(new UserData() { Descriptor = descr, Object = o })); }
/// <summary> /// Creates a static userdata DynValue from the specified IUserDataDescriptor /// </summary> /// <param name="descr">The IUserDataDescriptor</param> /// <returns></returns> public static DynValue CreateStatic(IUserDataDescriptor descr) { if (descr == null) { return(DynValue.Invalid); } var userData = UserDataRef.Request(); userData.Descriptor = descr; return(DynValue.NewUserData(userData)); }
/// <summary> /// Creates a static userdata DynValue from the specified IUserDataDescriptor /// </summary> /// <param name="descr">The IUserDataDescriptor</param> /// <returns></returns> public static DynValue CreateStatic(IUserDataDescriptor descr) { if (descr == null) { return(DynValue.Nil); } return(DynValue.NewUserData(new UserData() { Descriptor = descr, Object = null })); }
public static DynValue Create(object o) { var descr = GetDescriptorForObject(o); if (descr == null) { return(null); } return(DynValue.NewUserData(new UserData() { Descriptor = descr, Object = o })); }
public static DynValue CreateStatic(Type t) { var descr = GetDescriptorForType(t, false); if (descr == null) { return(null); } return(DynValue.NewUserData(new UserData() { Descriptor = descr, Object = null })); }
/// <summary> /// Creates a userdata DynValue from the specified object, using a specific descriptor /// </summary> /// <param name="o">The object</param> /// <param name="descr">The descriptor.</param> /// <returns></returns> public static DynValue CreateWithDescriptor <T>(T o, IUserDataDescriptor descr) { IUserData userData; if (typeof(T).IsValueType) { userData = UserDataStruct <T> .Request(); } else { userData = UserDataRef.Request(); } userData.Descriptor = descr; userData.TrySet(o); return(DynValue.NewUserData(userData)); }