public Array ReadEncodeableArray(string fieldName, System.Type systemType)
{
if (systemType == null) throw new ArgumentNullException("systemType");
List<object> token = null;
if (!ReadArrayField(fieldName, out token))
{
return Array.CreateInstance(systemType, 0);
}
var values = Array.CreateInstance(systemType, token.Count);
for (int ii = 0; ii < token.Count; ii++)
{
try
{
m_stack.Push(token[ii]);
var element = ReadEncodeable(null, systemType);
values.SetValue(element, ii);
}
finally
{
m_stack.Pop();
}
}
return values;
}