Ejemplo n.º 1
0
        internal static string GetArrayName(ArrayMirror parent, int i)
        {
            var builder = new System.Text.StringBuilder();

            builder.Append('[');
            for (int dim = 0; dim < parent.Rank; ++dim)
            {
                int length = DoGetArrayLength(parent, dim);
                int index;
                if (dim < parent.Rank - 1)
                {
                    index = i/length;
                    i = i - length*index;
                }
                else
                {
                    index = i;
                }

                builder.Append((index + parent.GetLowerBound(dim)).ToString());
                if (dim + 1 < parent.Rank)
                    builder.Append(", ");
            }
            builder.Append(']');

            return builder.ToString();
        }