public bool RunIo(string scriptName, Logger.LogDelegate log, float[] inputs, ref float[] outputs) { string bltPath = GetBeltScriptPath(scriptName); m_logger.Log($"Running IO {bltPath}"); return(BeltScriptAdapter.Instance.RunIo(bltPath, inputs, ref outputs, log)); }
public static void AddAppender(Logger.LogDelegate appender) { _appenders += appender; foreach (var logger in _loggers.Values) { logger.OnLog += appender; } }
public static void RemoveAppender(Logger.LogDelegate appender) { _appenders -= appender; foreach (var logger in _loggers.Values) { logger.OnLog -= appender; } }
public bool Run(string scriptName, Logger.LogDelegate log) { string bltPath = GetBeltScriptPath(scriptName); m_logger.Log($"Running {bltPath}"); return(BeltScriptAdapter.Instance.Run(bltPath, log)); }
public bool RunIo(string codeFileName, Logger.LogDelegate log, int inputsCount, float[] inputs, int outputsCount, ref float[] outputs) { if (!IsLoaded) { return(false); } return(m_runIoDelegate(codeFileName, Marshal.GetFunctionPointerForDelegate(log), inputsCount, inputs, outputsCount, ref outputs)); }
public bool Compile(string codeFileName, string code, Logger.LogDelegate log) { if (!IsLoaded) { Debug.LogWarning("Compiler.dll isn't loaded."); return(false); } return(m_compileDelegate(codeFileName, code, Marshal.GetFunctionPointerForDelegate(log))); }
public bool Run(string codeFileName, Logger.LogDelegate log) { if (!IsLoaded) { Debug.LogWarning("Runtime.dll isn't loaded."); return(false); } return(m_runDelegate(codeFileName, Marshal.GetFunctionPointerForDelegate(log))); }
public bool Compile(string scriptName, string code, Logger.LogDelegate log) { if (scriptName.Length == 0) { m_logger.Warn("Attempt to call Compile with empty script name"); return(false); } string bltPath = GetBeltScriptPath(scriptName); m_logger.Log($"Compiling \"{bltPath}\"..."); bool result = BeltScriptAdapter.Instance.Compile(bltPath, code, log); // save code file in the case of successful compilation if (result) { string sourceCodePath = GetSourceCodePath(scriptName); m_logger.Log($"Saving code sources with name {sourceCodePath}"); try { StreamWriter fileStream = File.CreateText(sourceCodePath); fileStream.Write(code); fileStream.Close(); // update or add script hash to the list m_scriptList[scriptName] = GetHashString(code); } catch (Exception e) { Debug.LogError(e); return(false); } // remove cashed code from Runtime.dll BeltScriptAdapter.Instance.Reset(bltPath); } else { m_logger.Log("Compilation failed."); } return(result); }
void context_LoggerFactory() { before = () => { LoggerFactory.Reset(); LoggerFactory.globalLogLevel = LogLevel.On; }; it["creates a new logger"] = () => { var logger = LoggerFactory.GetLogger("MyLogger"); logger.should_not_be_null(); logger.GetType().should_be_same(typeof(Logger)); logger.name.should_be("MyLogger"); logger.logLevel.should_be(LogLevel.On); }; it["returns same logger when name is equal"] = () => { var logger1 = LoggerFactory.GetLogger("MyLogger"); var logger2 = LoggerFactory.GetLogger("MyLogger"); logger1.should_be_same(logger2); }; it["clears created loggers"] = () => { var logger1 = LoggerFactory.GetLogger("MyLogger"); LoggerFactory.Reset(); var logger2 = LoggerFactory.GetLogger("MyLogger"); logger1.should_not_be_same(logger2); }; it["creates a new logger with globalLogLevel"] = () => { LoggerFactory.globalLogLevel = LogLevel.Error; var logger = LoggerFactory.GetLogger("MyLogger"); logger.logLevel.should_be(LogLevel.Error); }; it["sets global logLevel on created logger"] = () => { var logger = LoggerFactory.GetLogger("MyLogger"); logger.logLevel.should_be(LogLevel.On); LoggerFactory.globalLogLevel = LogLevel.Error; logger.logLevel.should_be(LogLevel.Error); }; it["creates new logger with global appender"] = () => { var appenderLogLevel = LogLevel.Off; var appenderMessage = string.Empty; LoggerFactory.AddAppender((log, logLevel, message) => { appenderLogLevel = logLevel; appenderMessage = message; }); var appenderLogLevel2 = LogLevel.Off; var appenderMessage2 = string.Empty; LoggerFactory.AddAppender((log, logLevel, message) => { appenderLogLevel2 = logLevel; appenderMessage2 = message; }); var logger = LoggerFactory.GetLogger("MyLogger"); logger.Info("hi"); appenderLogLevel.should_be(LogLevel.Info); appenderMessage.should_be("hi"); appenderLogLevel2.should_be(LogLevel.Info); appenderMessage2.should_be("hi"); }; it["adds appender on created logger"] = () => { var logger = LoggerFactory.GetLogger("MyLogger"); var didLog = false; LoggerFactory.AddAppender((log, logLevel, message) => didLog = true); logger.Info("hi"); didLog.should_be_true(); }; it["removes appender on created logger"] = () => { var didLog = false; Logger.LogDelegate appender = (log, logLevel, message) => didLog = true; LoggerFactory.AddAppender(appender); var logger = LoggerFactory.GetLogger("MyLogger"); LoggerFactory.RemoveAppender(appender); logger.Info("hi"); didLog.should_be_false(); }; it["clears global appenders"] = () => { var appenderLogLevel = LogLevel.Off; var appenderMessage = string.Empty; LoggerFactory.AddAppender((log, logLevel, message) => { appenderLogLevel = logLevel; appenderMessage = message; }); LoggerFactory.Reset(); var logger = LoggerFactory.GetLogger("MyLogger"); logger.Info("hi"); appenderLogLevel.should_be(LogLevel.Off); appenderMessage.should_be(string.Empty); }; }
public static void AddAppender(Logger.LogDelegate appender) { LoggerManager.Add(appender); }
public static void Reset() { _loggers.Clear(); _appenders = null; }
public bool Compile(string codeFileName, string code, Logger.LogDelegate log) { return(m_compiler.Compile(codeFileName, code, log)); }
public bool Run(string codeFileName, Logger.LogDelegate log) { return(m_runtime.Run(codeFileName, log)); }
public void RemoveServerLogListener( Logger.LogDelegate listener) { m_logListeners.Remove(listener); }
public void AddServerLogListener( Logger.LogDelegate listener) { m_logListeners.Add(listener); }
public bool RunIo(string codeFileName, float[] inputs, ref float[] outputs, Logger.LogDelegate log) { return(m_runtime.RunIo(codeFileName, log, inputs.Length, inputs, outputs.Length, ref outputs)); }