44 template<
typename T_DotNetType,
typename T_NativeType>
49 ref class EnumerableNptArrayIterator :
public IEnumerator<T_DotNetType>
58 virtual property T_DotNetType Current
62 return marshal_as<T_DotNetType>(*(*m_pArray)[m_Index]);
68 virtual property Object^ Current2
70 Object^
get() sealed = System::Collections::IEnumerator::Current::get
72 return marshal_as<T_DotNetType>(*(*m_pArray)[m_Index]);
78 virtual bool MoveNext()
80 if (m_Index < m_pArray->GetItemCount() - 1)
101 ~EnumerableNptArrayIterator()
113 virtual IEnumerator<T_DotNetType>^ GetEnumerator()
115 return gcnew EnumerableNptArrayIterator(*m_pArray);
120 virtual System::Collections::IEnumerator^ GetEnumerator2()
sealed = System::Collections::IEnumerable::GetEnumerator
122 return gcnew EnumerableNptArrayIterator(*m_pArray);
136 template<
typename T_DotNetType,
typename T_NativeType>
141 ref class EnumerableNptArrayRefIterator :
public IEnumerator<T_DotNetType>
150 virtual property T_DotNetType Current
154 return marshal_as<T_DotNetType>((*m_pArray)[m_Index]);
160 virtual property Object^ Current2
162 Object^
get() sealed = System::Collections::IEnumerator::Current::get
164 return marshal_as<T_DotNetType>((*m_pArray)[m_Index]);
170 virtual bool MoveNext()
172 if (m_Index < m_pArray->GetItemCount() - 1)
193 ~EnumerableNptArrayRefIterator()
205 virtual IEnumerator<T_DotNetType>^ GetEnumerator()
207 return gcnew EnumerableNptArrayRefIterator(*m_pArray);
212 virtual System::Collections::IEnumerator^ GetEnumerator2()
sealed = System::Collections::IEnumerable::GetEnumerator
214 return gcnew EnumerableNptArrayRefIterator(*m_pArray);
Definition: NptArray.h:54
Definition: EnumerableNptArray.h:45
Definition: EnumerableNptArray.h:137