Skip to content

Defining types is messy #49

@encukou

Description

@encukou

I had several false starts on this issue and always got too deep in describing the current implementation. So I'll post a half-baked list to get something down faster.

  • How are/should fields handled, esp. special ones like type, dict, and superclass ones:
    • What should tp_traverse visit?
    • What code is in charge of initializing them? Zeroing them before initialization? Clearing them?
  • Can an object outlive tp_clear?
  • Can I rely on tp_clear being called?
  • Which initialization/finalization APIs call a type's slots, and which ones bypass them?

etc.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions