1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-21 09:27:59 +02:00

Return error on event unsubscribe failure

This commit is contained in:
disarray2077 2021-08-01 14:38:09 -03:00
parent e5f92fb21b
commit 6b976e0d1b

View file

@ -136,7 +136,7 @@ namespace System
}
}
public void Remove(T compareDelegate, bool deleteDelegate = false) mut
public Result<void> Remove(T compareDelegate, bool deleteDelegate = false) mut
{
Object data = Target;
@ -150,9 +150,7 @@ namespace System
break;
}
if (idx == -1)
{
Runtime.FatalError("Not found");
}
return .Err;
if (deleteDelegate)
delete list[idx];
@ -177,18 +175,14 @@ namespace System
else
{
T dlgMember = (T)data;
if (Delegate.Equals(compareDelegate, dlgMember))
{
if (deleteDelegate)
delete dlgMember;
Target = null;
return;
}
else
{
Runtime.FatalError("Not found");
}
if (!Delegate.Equals(compareDelegate, dlgMember))
return .Err;
if (deleteDelegate)
delete dlgMember;
Target = null;
}
return .Ok;
}
public rettype(T) Invoke(params T p) mut