On Fri, 2010-02-26 at 15:08 +0100, Jiří Zárevúcky wrote:
Sam Wilson píše v Čt 25. 02. 2010 v 21:58 -0500:Would this also be a valid way to check for null? T unbox<T>(T? v, string str) { if (v == null) throw new MyError.FAILED(str); return (T)v; }I suppose it should work quite the same, but I'm not sure how does Vala cope with nullable -> non-nullable casts.
When I try and compile the following code, I get this error: "unnull.vala:17.9-17.62: error: Assignment: Cannot convert from `T' to `GLib.Object'" Is this a bug, or are templates meant to work like this? [code] errordomain MyError { FAILED; } T unbox<T>(T? v, string message) { if (v == null) throw new MyError.FAILED(message); return (T)v; } int main(string[] args) { Object? nullable = new Object(); Object not_nullable = unbox(nullable, "The object was null!"); return 0; } [/code]
Attachment:
smime.p7s
Description: S/MIME cryptographic signature