System.Runtime.Serialization.SerializationInfoEnumerator.SerializationInfoEnumerator C# (CSharp) Method

SerializationInfoEnumerator() private method

private SerializationInfoEnumerator ( String members, Object info, Type types, int numItems ) : System
members String
info Object
types System.Type
numItems int
return System
        internal SerializationInfoEnumerator(String[] members, Object[] info, Type[] types, int numItems) {
            BCLDebug.Assert(members!=null, "[SerializationInfoEnumerator.ctor]members!=null");
            BCLDebug.Assert(info!=null, "[SerializationInfoEnumerator.ctor]info!=null");
            BCLDebug.Assert(types!=null, "[SerializationInfoEnumerator.ctor]types!=null");
            BCLDebug.Assert(numItems>=0, "[SerializationInfoEnumerator.ctor]numItems>=0");
            BCLDebug.Assert(members.Length>=numItems, "[SerializationInfoEnumerator.ctor]members.Length>=numItems");
            BCLDebug.Assert(info.Length>=numItems, "[SerializationInfoEnumerator.ctor]info.Length>=numItems");
            BCLDebug.Assert(types.Length>=numItems, "[SerializationInfoEnumerator.ctor]types.Length>=numItems");

            m_members = members;
            m_data = info;
            m_types = types;
            //The MoveNext semantic is much easier if we enforce that [0..m_numItems] are valid entries
            //in the enumerator, hence we subtract 1.
            m_numItems = numItems-1;
            m_currItem = -1;
            m_current = false;
        }