Example #1
0
    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));
    }
Example #2
0
 public static void AddAppender(Logger.LogDelegate appender)
 {
     _appenders += appender;
     foreach (var logger in _loggers.Values) {
         logger.OnLog += appender;
     }
 }
Example #3
0
 public static void RemoveAppender(Logger.LogDelegate appender)
 {
     _appenders -= appender;
     foreach (var logger in _loggers.Values) {
         logger.OnLog -= appender;
     }
 }
Example #4
0
    public bool Run(string scriptName, Logger.LogDelegate log)
    {
        string bltPath = GetBeltScriptPath(scriptName);

        m_logger.Log($"Running {bltPath}");
        return(BeltScriptAdapter.Instance.Run(bltPath, log));
    }
 public static void RemoveAppender(Logger.LogDelegate appender)
 {
     _appenders -= appender;
     foreach (var logger in _loggers.Values)
     {
         logger.OnLog -= appender;
     }
 }
 public static void AddAppender(Logger.LogDelegate appender)
 {
     _appenders += appender;
     foreach (var logger in _loggers.Values)
     {
         logger.OnLog += appender;
     }
 }
    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)));
    }
Example #10
0
    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);
    }
Example #11
0
    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);
        };
    }
Example #12
0
 public static void AddAppender(Logger.LogDelegate appender)
 {
     LoggerManager.Add(appender);
 }
Example #13
0
 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 static void Reset()
 {
     _loggers.Clear();
     _appenders = null;
 }
 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));
 }