示例#1
0
        public IEnumerator <T> GetEnumerator()
        {
            PyIter iterObject;

            using (Py.GIL())
            {
                iterObject = PyIter.GetIter(pyObject);
            }

            using var _ = iterObject;
            while (true)
            {
                using var GIL = Py.GIL();

                if (!iterObject.MoveNext())
                {
                    iterObject.Dispose();
                    break;
                }
                yield return(iterObject.Current.As <T>() !);
            }
        }