On Tue, Jan 8, 2013 at 5:59 PM, monarch_dodra <span dir="ltr"><<a href="mailto:monarchdodra@gmail.com" target="_blank">monarchdodra@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br></div>
Oh. New alias syntax. Nice ain't it?<br></blockquote><div><br></div><div>Yes nice. Why was it not announced somewhere?</div><div><br></div><div>At least, the grammar was updated:</div><div><br></div><div><a name="AliasDeclaration" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasDeclaration</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">alias</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#BasicType" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>BasicType</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#Declarator" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>Declarator</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">alias</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#AliasInitializerList" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializerList</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a name="AliasInitializerList" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializerList</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><a href="http://dlang.org/declaration.html#AliasInitializer" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#AliasInitializer" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">,</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><i style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">AliasInitializerList</i><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a name="AliasInitializer" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><i style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">Identifier</i><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">=</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><i style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><a href="http://dlang.org/declaration.html#Type" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">Type</a></i></div>
<div><a name="AliasDeclaration" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasDeclaration</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">alias</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#BasicType" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>BasicType</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#Declarator" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>Declarator</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">alias</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#AliasInitializerList" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializerList</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a name="AliasInitializerList" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializerList</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><a href="http://dlang.org/declaration.html#AliasInitializer" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#AliasInitializer" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">,</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><i style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">AliasInitializerList</i><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a name="AliasInitializer" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><i style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">Identifier</i><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">=</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#Type" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>Type</i></a></div>
<div><a name="AliasDeclaration" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasDeclaration</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">alias</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#BasicType" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>BasicType</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#Declarator" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>Declarator</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">alias</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#AliasInitializerList" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializerList</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a name="AliasInitializerList" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializerList</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><a href="http://dlang.org/declaration.html#AliasInitializer" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#AliasInitializer" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">,</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><i style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">AliasInitializerList</i><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a name="AliasInitializer" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasInitializer</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><i style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">Identifier</i><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">=</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><a href="http://dlang.org/declaration.html#Type" style="color:rgb(102,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>Type</i></a></div>
<div>AliasDeclaration: </div><div>    alias BasicType Declarator </div><div>    alias AliasInitializerList </div><div><br></div><div>AliasInitializerList: </div><div>    AliasInitializer </div><div>    AliasInitializer , AliasInitializerList </div>
<div><br></div><div>AliasInitializer: </div><div>    Identifier = Type</div><div><br></div><div>I'll have to update my grammar and generated parser.</div><div>Hmm. Why the limitation to Type?</div><div><br></div><div>
<br></div><div>The examples still all use the old syntax, but oh well.</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
It works for everything except "alias something this". Not that it can't be done, but there were discussions for another syntax specific to alias this.<br></blockquote><div><br></div><div>The grammar says:</div>
<div><br></div><div><a name="AliasThisDeclaration" style="color:rgb(0,0,102);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"><i>AliasThisDeclaration</i></a><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">: </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">alias</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><i style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">Identifier</i><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">this</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">alias</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">this</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><b style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">=</b><span style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)"> </span><i style="color:rgb(31,37,43);font-family:Verdana,'Deja Vu','Bitstream Vera Sans',sans-serif;font-size:0px;background-color:rgb(31,37,43)">Identifier</i> AliasThisDeclaration: </div>
<div>    alias Identifier this </div><div>    alias this = Identifier</div></div><br><div>Nice nice nice.</div>