struct NF { ivec2 data; this(E...)( E e ) if( is(typeof(ivec2(e))) ) { data = ivec2(e); } mixin accessByString!( 2,int,"data", "near far|n f" ); } auto b = NF(1,100); assert( b.near == b.n ); assert( b.far == b.f ); b.nf = ivec2( 10,20 ); assert( b.near == 10 ); assert( b.far == 20 );