public object GetFieldByIdx(int idx, string fieldName, ObjectTypeDescriptor descriptor)
{
if (_ownerDescriptor == descriptor)
{
if (idx < 0)
ThrowMemberAccessException(fieldName);
return _fieldValues[idx];
}
var realidx = _ownerDescriptor.FindFieldIndexWithThrow(fieldName);
return _fieldValues[realidx];
}