www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Mixin function names

reply Moinak Bhattacharrya <moinakb001 gmail.com> writes:
Is it possible to mixin function names? IE something like this:

template strFunc(string s){
	int mixin(s)(int a){
		return a+1;
	}
}

If not, is something like this being looked at?
Jul 18
next sibling parent Moinak Bhattacharrya <moinakb001 gmail.com> writes:
On Tuesday, 18 July 2017 at 20:57:51 UTC, Moinak Bhattacharrya 
wrote:
 Is it possible to mixin function names? IE something like this:

 template strFunc(string s){
 	int mixin(s)(int a){
 		return a+1;
 	}
 }

 If not, is something like this being looked at?
Or, just something like this for any variable name.
Jul 18
prev sibling next sibling parent Adam D. Ruppe <destructionator gmail.com> writes:
On Tuesday, 18 July 2017 at 20:57:51 UTC, Moinak Bhattacharrya 
wrote:
 Is it possible to mixin function names? IE something like this:
Only if you mixin the entire function. But what I like to do is to write the function with some internal name, then do `mixin("alias "~ new_name ~ " = your_internal_name;");` so it is available as new name but still written normally.
Jul 18
prev sibling parent reply Timon Gehr <timon.gehr gmx.ch> writes:
On 18.07.2017 22:57, Moinak Bhattacharrya wrote:
 Is it possible to mixin function names? IE something like this:
 
 template strFunc(string s){
      int mixin(s)(int a){
          return a+1;
      }
 }
 ...
No.
 If not, is something like this being looked at?
The suggestion has been made, but there was no extensive discussion so far. https://github.com/dlang/DIPs/blob/master/DIPs/DIP1010.md#mixin-identifiers
Jul 18
parent reply Moinak Bhattacharrya <moinakb001 gmail.com> writes:
On Tuesday, 18 July 2017 at 21:22:47 UTC, Timon Gehr wrote:
 On 18.07.2017 22:57, Moinak Bhattacharrya wrote:
 Is it possible to mixin function names? IE something like this:
 
 template strFunc(string s){
      int mixin(s)(int a){
          return a+1;
      }
 }
 ...
No.
 If not, is something like this being looked at?
The suggestion has been made, but there was no extensive discussion so far. https://github.com/dlang/DIPs/blob/master/DIPs/DIP1010.md#mixin-identifiers
That's the DIP for static foreach. Is there a separate DIP for mixin identifiers?
Jul 18
parent reply Timon Gehr <timon.gehr gmx.ch> writes:
On 18.07.2017 23:28, Moinak Bhattacharrya wrote:
 On Tuesday, 18 July 2017 at 21:22:47 UTC, Timon Gehr wrote:
 On 18.07.2017 22:57, Moinak Bhattacharrya wrote:
 Is it possible to mixin function names? IE something like this:

 template strFunc(string s){
      int mixin(s)(int a){
          return a+1;
      }
 }
 ...
No.
 If not, is something like this being looked at?
The suggestion has been made, but there was no extensive discussion so far. https://github.com/dlang/DIPs/blob/master/DIPs/DIP1010.md#mixin-identifiers
That's the DIP for static foreach. Is there a separate DIP for mixin identifiers?
Not yet.
Jul 18
parent Moinak Bhattacharrya <moinakb001 gmail.com> writes:
On Tuesday, 18 July 2017 at 21:29:05 UTC, Timon Gehr wrote:
 On 18.07.2017 23:28, Moinak Bhattacharrya wrote:
 On Tuesday, 18 July 2017 at 21:22:47 UTC, Timon Gehr wrote:
 On 18.07.2017 22:57, Moinak Bhattacharrya wrote:
 Is it possible to mixin function names? IE something like 
 this:

 template strFunc(string s){
      int mixin(s)(int a){
          return a+1;
      }
 }
 ...
No.
 If not, is something like this being looked at?
The suggestion has been made, but there was no extensive discussion so far. https://github.com/dlang/DIPs/blob/master/DIPs/DIP1010.md#mixin-identifiers
That's the DIP for static foreach. Is there a separate DIP for mixin identifiers?
Not yet.
:( I might look into making one, then. This feature would scratch a rather sizable itch.
Jul 18