Hey!
I am just wondering if there is any syntactic sugar for shortening the
following code segment
[code]
Element? nsource = ElementFactory.make("filesrc", "file-source");
if (nsource == null) { printError(); return; }
Element source = (Element)nsource;
[/code]
To me, it seems like a common pattern to convert a nullable type to a
non-nullable type. If such a shortcut does not exist, perhaps it would
be a good idea to add a "conditional cast" operator
Four examples of a possible "conditional cast":
Element a = ElementFactory.make("filesrc", "file-source") or
some_code_block(); // Returns an Element
Element b = ElementFactory.make("filesrc", "file-source") or () =>
{/*...*/};
Element c = ElementFactory.make("filesrc", "file-source") or throw new
Foo.Bar();
Element d = ElementFactory.make("networksrc", "net-source") or
ElementFactory.make("filesrc", "file-source") or throw new Foo.Bar();
(Inspired by: http://tinyurl.com/yc7mgxj)
Attachment:
smime.p7s
Description: S/MIME cryptographic signature