public static object[] UnwrapResult(OtpErlangObject obj)
{
OtpErlangObject uwobj = null;
if (obj is OtpErlangTuple
&& ((OtpErlangTuple)obj).arity() == 2
&& ((OtpErlangTuple)obj).elementAt(0) is OtpErlangAtom
&& ((OtpErlangAtom)((OtpErlangTuple)obj).elementAt(0)).atomValue() == "ok")
uwobj = ((OtpErlangTuple)obj).elementAt(1);
else uwobj = obj;
if (uwobj is OtpErlangTuple)
return ((OtpErlangTuple)uwobj).elements();
else if (uwobj is OtpErlangList)
return ((OtpErlangList)uwobj).elements();
else
// TODO: use OtpErlangObject[] instead
return new object[] { uwobj };
}