www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Parameter storage class 'in' transitive like 'const'?

reply =?UTF-8?B?QWxpIMOHZWhyZWxp?= <acehreli yahoo.com> writes:
We know that 'in' is "equivalent to const scope":

   http://dlang.org/function.html#parameters

So, the constness of 'in' is transitive as well, right?

Ali
May 02 2015
next sibling parent "Jakob Ovrum" <jakobovrum gmail.com> writes:
On Sunday, 3 May 2015 at 05:20:34 UTC, Ali Çehreli wrote:
 We know that 'in' is "equivalent to const scope":

   http://dlang.org/function.html#parameters

 So, the constness of 'in' is transitive as well, right?

 Ali
Of course, there's no concept of non-transitive const in D: struct S { char[] str; } void foo(in S s) { pragma(msg, typeof(s.str)); // const(char[]) }
May 03 2015
prev sibling parent Jonathan M Davis via Digitalmars-d-learn writes:
On Saturday, May 02, 2015 22:20:33 Ali Çehreli via Digitalmars-d-learn wrote:
 We know that 'in' is "equivalent to const scope":

    http://dlang.org/function.html#parameters

 So, the constness of 'in' is transitive as well, right?
Of course. in is identical to const scope. It doesn't introduce anything new. It's basically just an alias. And I really wish that folks would stop using it, since it implies scope, and scope hasn't been properly implemented or even designed out yet... - Jonathan M Davis
May 03 2015