コード例 #1
0
 public void WriteError(string error_msg, ScriptEngineType engineType)
 {
     _errored       = true;
     _erroredEngine = engineType;
     foreach (string message_part in error_msg.SplitIntoChunks(1024))
     {
         var buffer = OutputEncoding.GetBytes(message_part);
         Write(buffer, 0, buffer.Length);
     }
 }
コード例 #2
0
ファイル: ScriptConsole.cs プロジェクト: tatlin/pyRevit
        public void AppendError(string OutputText, ScriptEngineType engineType)
        {
            Unfreeze();
            string errorHeader = string.Empty;

            switch (engineType)
            {
            case ScriptEngineType.IronPython:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.IPYErrorHeader);
                break;

            case ScriptEngineType.CPython:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.CPYErrorHeader);
                break;

            case ScriptEngineType.CSharp:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.CLRErrorHeader);
                break;

            case ScriptEngineType.Invoke:
                break;

            case ScriptEngineType.VisualBasic:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.CLRErrorHeader);
                break;

            case ScriptEngineType.IronRuby:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.IRubyErrorHeader);
                break;

            case ScriptEngineType.DynamoBIM:
                break;

            case ScriptEngineType.Grasshopper:
                break;

            case ScriptEngineType.Content:
                break;
            }
            // add new line to header
            if (errorHeader != string.Empty)
            {
                errorHeader += "\n";
            }

            AppendText(errorHeader + OutputText, ScriptConsoleConfigs.ErrorBlock);
        }
コード例 #3
0
        public void AppendError(string OutputText, ScriptEngineType engineType)
        {
            Unfreeze();
            string errorHeader = string.Empty;

            switch (engineType)
            {
            case ScriptEngineType.IronPython:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.IPYErrorHeader);
                break;

            case ScriptEngineType.CPython:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.CPYErrorHeader);
                break;

            case ScriptEngineType.CSharp:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.CSharpErrorHeader);
                break;

            case ScriptEngineType.Invoke:
                break;

            case ScriptEngineType.VisualBasic:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.VBErrorHeader);
                break;

            case ScriptEngineType.IronRuby:
                errorHeader = ScriptConsoleConfigs.ToCustomHtmlTags(ScriptConsoleConfigs.IRubyErrorHeader);
                break;

            case ScriptEngineType.DynamoBIM:
                break;

            case ScriptEngineType.Grasshopper:
                break;

            case ScriptEngineType.Content:
                break;
            }
            // add new line to header
            if (errorHeader != string.Empty)
            {
                errorHeader += "\n";
            }

            // if this is a know debugger stop error
            // make a nice report
            foreach (var dbgr in _supportedDebuggers)
            {
                foreach (var stopFinder in dbgr.StopFinders)
                {
                    if (stopFinder.Item1.IsMatch(OutputText))
                    {
                        AppendText(
                            errorHeader + stopFinder.Item2,
                            ScriptConsoleConfigs.ErrorBlock
                            );
                        return;
                    }
                }
            }

            // otherwise report the error
            AppendText(
                errorHeader + OutputText,
                ScriptConsoleConfigs.ErrorBlock
                );
        }