コード例 #1
0
        public void WriteConditions(IDbgTextWriter output, ExceptionVM vm)
        {
            var conditions = vm.Settings.Conditions;

            for (int i = 0; i < conditions.Count; i++)
            {
                if (i != 0)
                {
                    output.Write(DbgTextColor.Text, " ");
                    output.Write(DbgTextColor.Keyword, dnSpy_Debugger_Resources.Exception_Conditions_And);
                    output.Write(DbgTextColor.Text, " ");
                }
                var cond = conditions[i];
                switch (cond.ConditionType)
                {
                case DbgExceptionConditionType.ModuleNameEquals:
                    WriteQuotedString(output, dnSpy_Debugger_Resources.Exception_Conditions_ModuleNameEquals, cond.Condition);
                    break;

                case DbgExceptionConditionType.ModuleNameNotEquals:
                    WriteQuotedString(output, dnSpy_Debugger_Resources.Exception_Conditions_ModuleNameNotEquals, cond.Condition);
                    break;

                default:
                    WriteError(output);
                    break;
                }
            }
        }
コード例 #2
0
 public void WriteCategory(IDbgTextWriter output, ExceptionVM vm)
 {
     if (vm.Context.ExceptionSettingsService.TryGetCategoryDefinition(vm.Definition.Id.Category, out var def))
     {
         output.Write(DbgTextColor.Text, def.DisplayName);
     }
     else
     {
         WriteError(output);
     }
 }
コード例 #3
0
 public void WriteName(IDbgTextWriter output, ExceptionVM vm) =>
 vm.Context.ExceptionFormatterService.WriteName(output, vm.Definition, includeDescription: true);