Exemple #1
0
        public static string?TryGetExceptionMessage(ObjectMirror exObj)
        {
            var field = GetField(exObj.Type, KnownMemberNames.Exception_Message_FieldName, KnownMemberNames.Exception_Message_FieldName_Mono);

            if (field is null)
            {
                return(null);
            }
            var value = exObj.GetValue(field);

            if (value is StringMirror sm)
            {
                return(sm.Value ?? dnSpy_Debugger_DotNet_Mono_Resources.ExceptionMessageIsNull);
            }
            if (value is null || (value is PrimitiveValue pv && pv.Value is null))
            {
                return(dnSpy_Debugger_DotNet_Mono_Resources.ExceptionMessageIsNull);
            }
            return(null);
        }
Exemple #2
0
 public override Value Load() => objectMirror.GetValue(field);