Unless T is 'void' opIndex() is declared and the
static_array_element flag defined which tells whether T is a static
array type or not.
R is defined as return type of opIndex() and other methods which
return an array element. Normally this aliases T; however, if T is a
static array type which cannot be the return type, it aliases the
dynamic array of the same base type. For example, if T aliases
int[4], R aliases int[].
If T is 'void', static_array_element, R and opIndex are not
declared/defined at all.
Unless T is 'void' opIndex() is declared and the static_array_element flag defined which tells whether T is a static array type or not. R is defined as return type of opIndex() and other methods which return an array element. Normally this aliases T; however, if T is a static array type which cannot be the return type, it aliases the dynamic array of the same base type. For example, if T aliases int[4], R aliases int[]. If T is 'void', static_array_element, R and opIndex are not declared/defined at all.