public void LogFormat(UnityEngine.LogType logType, UnityEngine.Object context, string format, params object[] args) { int stackDepth = 4; if (logType == UnityEngine.LogType.Exception) { stackDepth++; } var level = logType.Cast(); string message = string.Format(format, args); string cmessage; PrepareMessageText(ref message, out cmessage); PostfixDeclaringType(ref message, ref cmessage, stackDepth); PostfixLogLevelInfo(ref message, ref cmessage, level); PostfixStackTrace(ref message, ref cmessage, level, context, stackDepth); PrefixTimeStamp(ref message, ref cmessage); lock (_locker) { using (var file = File.AppendText(LogFilePaths[level])) file.WriteLine(message); } LogRotate(level); if (EchoToConsole && (LogLevel & level) > 0) { cmessage = cmessage.Replace("{", "{{").Replace("}", "}}"); if (logType == UnityEngine.LogType.Exception) { logType = UnityEngine.LogType.Error; } #if UNITY_EDITOR _defaultLogHandler.LogFormat(logType, context, @cmessage); #else _defaultLogHandler.LogFormat(logType, context, @message); #endif } #if DEBUG || PROFILE if (level == LoggerLogLevel.Assert || level == LoggerLogLevel.Exception) { if (BreakOnAssert) { UnityEngine.Debug.Break(); } } else if (level == LoggerLogLevel.Error && BreakOnError) { UnityEngine.Debug.Break(); } #endif }
static int _m_LogFormat(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); UnityEngine.ILogHandler __cl_gen_to_be_invoked = (UnityEngine.ILogHandler)translator.FastGetCSObj(L, 1); try { { UnityEngine.LogType logType; translator.Get(L, 2, out logType); UnityEngine.Object context = (UnityEngine.Object)translator.GetObject(L, 3, typeof(UnityEngine.Object)); string format = LuaAPI.lua_tostring(L, 4); object[] args = translator.GetParams <object>(L, 5); __cl_gen_to_be_invoked.LogFormat(logType, context, format, args); return(0); } } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } }
static StackObject *LogFormat_0(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj) { CSHotFix.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain; StackObject *ptr_of_this_method; StackObject *__ret = ILIntepreter.Minus(__esp, 5); ptr_of_this_method = ILIntepreter.Minus(__esp, 1); System.Object[] @args = (System.Object[]) typeof(System.Object[]).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); ptr_of_this_method = ILIntepreter.Minus(__esp, 2); System.String @format = (System.String) typeof(System.String).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); ptr_of_this_method = ILIntepreter.Minus(__esp, 3); UnityEngine.Object @context = (UnityEngine.Object) typeof(UnityEngine.Object).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); ptr_of_this_method = ILIntepreter.Minus(__esp, 4); UnityEngine.LogType @logType = (UnityEngine.LogType) typeof(UnityEngine.LogType).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); ptr_of_this_method = ILIntepreter.Minus(__esp, 5); UnityEngine.ILogHandler instance_of_this_method = (UnityEngine.ILogHandler) typeof(UnityEngine.ILogHandler).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); instance_of_this_method.LogFormat(@logType, @context, @format, @args); return(__ret); }
static public int LogFormat(IntPtr l) { try { UnityEngine.ILogHandler self = (UnityEngine.ILogHandler)checkSelf(l); UnityEngine.LogType a1; checkEnum(l, 2, out a1); UnityEngine.Object a2; checkType(l, 3, out a2); System.String a3; checkType(l, 4, out a3); System.Object[] a4; checkParams(l, 5, out a4); self.LogFormat(a1, a2, a3, a4); pushValue(l, true); return(1); } catch (Exception e) { return(error(l, e)); } }
static public int LogFormat(IntPtr l) { try { #if DEBUG var method = System.Reflection.MethodBase.GetCurrentMethod(); string methodName = GetMethodName(method); #if UNITY_5_5_OR_NEWER UnityEngine.Profiling.Profiler.BeginSample(methodName); #else Profiler.BeginSample(methodName); #endif #endif UnityEngine.ILogHandler self = (UnityEngine.ILogHandler)checkSelf(l); UnityEngine.LogType a1; a1 = (UnityEngine.LogType)LuaDLL.luaL_checkinteger(l, 2); UnityEngine.Object a2; checkType(l, 3, out a2); System.String a3; checkType(l, 4, out a3); System.Object[] a4; checkParams(l, 5, out a4); self.LogFormat(a1, a2, a3, a4); pushValue(l, true); return(1); } catch (Exception e) { return(error(l, e)); } #if DEBUG finally { #if UNITY_5_5_OR_NEWER UnityEngine.Profiling.Profiler.EndSample(); #else Profiler.EndSample(); #endif } #endif }