import std.stdio; struct Rar{ int[] data = [1,3,5]; int length = 3; ref int opIndex(int i){ return data[i];} } void main() { Rar x; foreach (e; x) writeln(e); } Error: invalid foreach aggregate x ---- Is'nt Rar valid random access range?