제너레이터 객체¶
제너레이터 객체는 파이썬이 제너레이터 이터레이터를 구현하기 위해 사용하는 객체입니다. 일반적으로 PyGen_New() 또는 PyGen_NewWithQualName()를 명시적으로 호출하는 것이 아니라, 값을 일드(yield)하는 함수를 이터레이트하여 만들어집니다.
-
type PyGenObject¶
제너레이터 객체에 사용되는 C 구조체.
-
PyTypeObject PyGen_Type¶
제너레이터 객체에 해당하는 형 객체
-
int PyGen_CheckExact(PyObject *ob)¶
ob의 형이
PyGen_Type이면 참을 돌려줍니다; ob는NULL이 아니어야 합니다. 이 함수는 항상 성공합니다.
-
PyObject *PyGen_New(PyFrameObject *frame)¶
- 반환값: 새 참조.
frame 객체를 기반으로 새로운 제너레이터 객체를 생성하여 반환합니다. frame 에 대한 참조는 이 함수에 의해 “stolen “됩니다(오류 시에도 동일). 인자는
NULL이 아니어야 합니다.버전 3.16부터 사용 지원 중단(deprecated), 버전 3.18에서 제거 예정: 이 함수는 3.10 이후로 사용되지 않았습니다. 또한 이 함수를 호출하기 위해 적절한 프레임(frame) 객체를 구성하는 것도 불가능합니다.
-
PyObject *PyGen_NewWithQualName(PyFrameObject *frame, PyObject *name, PyObject *qualname)¶
- 반환값: 새 참조.
frame 객체를 기반으로 하며,
__name__과__qualname__이 name 및 qualname 으로 설정된 새로운 제너레이터 객체를 생성하여 반환합니다. frame 에 대한 참조는 이 함수에 의해 “stolen “됩니다(오류 시에도 동일). frame 인자는NULL이 아니어야 합니다.버전 3.16부터 사용 지원 중단(deprecated), 버전 3.18에서 제거 예정: 이 함수는 3.10 이후로 사용되지 않았습니다. 또한 이 함수를 호출하기 위해 적절한 프레임(frame) 객체를 구성하는 것도 불가능합니다.
-
PyCodeObject *PyGen_GetCode(PyGenObject *gen)¶
Return a new strong reference to the code object wrapped by gen. This function always succeeds.
비동기 제너레이터 객체¶
더 보기
-
PyTypeObject PyAsyncGen_Type¶
비동기 제너레이터 객체에 해당하는 타입 객체입니다. 이는 파이썬 레이어에서
types.AsyncGeneratorType으로 사용할 수 있습니다.Added in version 3.6.
-
PyObject *PyAsyncGen_New(PyFrameObject *frame, PyObject *name, PyObject *qualname)¶
frame 을 래핑하고
__name__과__qualname__이 name 및 qualname 으로 설정된 새로운 비동기 제너레이터 객체를 생성하여 반환합니다. frame 은 이 함수에 의해 “stolen “되며(오류 시에도 동일),NULL이 아니어야 합니다.On success, this function returns a strong reference to the new asynchronous generator. On failure, this function returns
NULLwith an exception set.Added in version 3.6.
버전 3.16부터 사용 지원 중단(deprecated), 버전 3.18에서 제거 예정: 이 함수는 3.10 이후로 사용되지 않았습니다. 또한 이 함수를 호출하기 위해 적절한 프레임(frame) 객체를 구성하는 것도 불가능합니다.
더 이상 사용되지 않는 API (Deprecated)¶
-
PyAsyncGenASend_CheckExact(op)¶
이것은 파이썬 C API에 실수로 포함된 API입니다.
이것은 오직 완전성을 위해 존재하는 것이므로 이 API를 사용하지 마십시오.
버전 3.14부터 약하게 폐지 <Soft deprecated>.