alias to fully qualified enum in scope where enum is expected

2014-08-06 Thread Timothee Cour via Digitalmars-d-learn
Is there a simple way to to do this? enum A{ a1, a2 } void fun(A a){...} void test(){ fun(A.a1); //works fun(a1); //I'd like a1 to work, but just where an A is expected to avoid polluting namespace. }

Re: alias to fully qualified enum in scope where enum is expected

2014-08-06 Thread Rikki Cattermole via Digitalmars-d-learn
On 6/08/2014 6:11 p.m., Timothee Cour via Digitalmars-d-learn wrote: Is there a simple way to to do this? enum A{ a1, a2 } void fun(A a){...} void test(){ fun(A.a1); //works fun(a1); //I'd like a1 to work, but just where an A is expected to avoid polluting namespace. } The magic of with

Re: alias to fully qualified enum in scope where enum is expected

2014-08-06 Thread Meta via Digitalmars-d-learn
On Wednesday, 6 August 2014 at 07:23:32 UTC, Rikki Cattermole wrote: The magic of with statements! enum A { a1, a2 } void func(A a){} void main(){ func(A.a1); with(A) { func(a1); } } And if you want to be *really* concise: with (A)

Re: alias to fully qualified enum in scope where enum is expected

2014-08-06 Thread Timothee Cour via Digitalmars-d-learn
Thanks, I know with statement could be used but I was hoping for a solution not involving adding syntax to call site. void fun(with(A){A a}, int b){...} //conceptually like this void test(){ int a1=1; fun(A.a1, a1); // would work fun(a1, a1);// would work } On Wed, Aug 6, 2014 at 8:22

Re: alias to fully qualified enum in scope where enum is expected

2014-08-06 Thread via Digitalmars-d-learn
On Wednesday, 6 August 2014 at 16:48:57 UTC, Timothee Cour via Digitalmars-d-learn wrote: Thanks, I know with statement could be used but I was hoping for a solution not involving adding syntax to call site. If you control the declaration of the enum, you could write: alias a1 = A.a1; alias

Re: alias to fully qualified enum in scope where enum is expected

2014-08-06 Thread Timothee Cour via Digitalmars-d-learn
On Wed, Aug 6, 2014 at 12:04 PM, via Digitalmars-d-learn digitalmars-d-learn@puremagic.com wrote: On Wednesday, 6 August 2014 at 16:48:57 UTC, Timothee Cour via Digitalmars-d-learn wrote: Thanks, I know with statement could be used but I was hoping for a solution not involving adding