unsafe internal Exception Convert() { var message = (messageLength != IntPtr.Zero) ? new string(messageBytes, 0 /* start offset */, (int)messageLength, Encoding.UTF8) : "no detail on exception"; return(RealmException.Create((RealmExceptionCodes)type, message)); }
internal Exception Convert(Func <RealmExceptionCodes, Exception> overrider = null) { var message = (messageLength != IntPtr.Zero) ? Encoding.UTF8.GetString(messageBytes, (int)messageLength) : "No further information available"; NativeCommon.delete_pointer(messageBytes); return(overrider?.Invoke(type) ?? RealmException.Create(type, message)); }