public MethodWrap _GenMethodWrap(Type type, string methodName, IEnumerable <MemberInfo> methodBases, bool forceCheck = false) { List <OverloadMethodWrap> overloads = new List <OverloadMethodWrap>(); foreach (var methodBase in methodBases) { var mb = methodBase as MethodBase; if (mb == null) { continue; } if (mb.IsGenericMethodDefinition #if !ENABLE_IL2CPP && !tryMakeGenericMethod(ref mb) #endif ) { continue; } var overload = new OverloadMethodWrap(translator, type, mb); overload.Init(objCheckers, objCasters); overloads.Add(overload); } return(new MethodWrap(methodName, overloads, forceCheck)); }
static int _g_get_HasDefalutValue(RealStatePtr L) { try { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); XLua.OverloadMethodWrap gen_to_be_invoked = (XLua.OverloadMethodWrap)translator.FastGetCSObj(L, 1); LuaAPI.lua_pushboolean(L, gen_to_be_invoked.HasDefalutValue); } catch (System.Exception gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + gen_e)); } return(1); }
public MethodWrap _GenMethodWrap(Type type, string methodName, IEnumerable <MemberInfo> methodBases) { List <OverloadMethodWrap> overloads = new List <OverloadMethodWrap>(); foreach (var methodBase in methodBases) { if (methodBase is MethodBase && !(methodBase as MethodBase).ContainsGenericParameters) { var overload = new OverloadMethodWrap(translator, type, methodBase as MethodBase); overload.Init(objCheckers, objCasters); overloads.Add(overload); } } return(new MethodWrap(methodName, overloads)); }
static int __CreateInstance(RealStatePtr L) { try { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); if (LuaAPI.lua_gettop(L) == 4 && translator.Assignable <XLua.ObjectTranslator>(L, 2) && translator.Assignable <System.Type>(L, 3) && translator.Assignable <System.Reflection.MethodBase>(L, 4)) { XLua.ObjectTranslator _translator = (XLua.ObjectTranslator)translator.GetObject(L, 2, typeof(XLua.ObjectTranslator)); System.Type _targetType = (System.Type)translator.GetObject(L, 3, typeof(System.Type)); System.Reflection.MethodBase _method = (System.Reflection.MethodBase)translator.GetObject(L, 4, typeof(System.Reflection.MethodBase)); XLua.OverloadMethodWrap gen_ret = new XLua.OverloadMethodWrap(_translator, _targetType, _method); translator.Push(L, gen_ret); return(1); } } catch (System.Exception gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + gen_e)); } return(LuaAPI.luaL_error(L, "invalid arguments to XLua.OverloadMethodWrap constructor!")); }
public MethodWrap _GenMethodWrap(Type type, string methodName, IEnumerable <MemberInfo> methodBases) { List <OverloadMethodWrap> overloads = new List <OverloadMethodWrap>(); foreach (var methodBase in methodBases) { var mb = methodBase as MethodBase; if (mb == null) { continue; } if (mb.ContainsGenericParameters && !tryMakeGenericMethod(ref mb)) { continue; } var overload = new OverloadMethodWrap(translator, type, mb); overload.Init(objCheckers, objCasters); overloads.Add(overload); } return(new MethodWrap(methodName, overloads)); }
static int _m_Check(RealStatePtr L) { try { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); XLua.OverloadMethodWrap gen_to_be_invoked = (XLua.OverloadMethodWrap)translator.FastGetCSObj(L, 1); { System.IntPtr _L = LuaAPI.lua_touserdata(L, 2); bool gen_ret = gen_to_be_invoked.Check(_L); LuaAPI.lua_pushboolean(L, gen_ret); return(1); } } catch (System.Exception gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + gen_e)); } }
static int _m_Init(RealStatePtr L) { try { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); XLua.OverloadMethodWrap gen_to_be_invoked = (XLua.OverloadMethodWrap)translator.FastGetCSObj(L, 1); { XLua.ObjectCheckers _objCheckers = (XLua.ObjectCheckers)translator.GetObject(L, 2, typeof(XLua.ObjectCheckers)); XLua.ObjectCasters _objCasters = (XLua.ObjectCasters)translator.GetObject(L, 3, typeof(XLua.ObjectCasters)); gen_to_be_invoked.Init(_objCheckers, _objCasters); return(0); } } catch (System.Exception gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + gen_e)); } }
public MethodWrap _GenMethodWrap(Type type, string methodName, IEnumerable<MemberInfo> methodBases) { List<OverloadMethodWrap> overloads = new List<OverloadMethodWrap>(); foreach(var methodBase in methodBases) { var mb = methodBase as MethodBase; if (mb == null) continue; if (mb.ContainsGenericParameters && !tryMakeGenericMethod(ref mb)) continue; var overload = new OverloadMethodWrap(translator, type, mb); overload.Init(objCheckers, objCasters); overloads.Add(overload); } return new MethodWrap(methodName, overloads); }