Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support metaclasses in HPy. #335

Merged
merged 17 commits into from
Oct 14, 2022
Merged

Commits on Oct 14, 2022

  1. Add support for metaclass in HPyType_FromSpec

    This adds a new member of HPyType_SpecParam_Kind and its handling in
    HPyType_FromSpec. CPython does not support metaclass in
    PyType_FromSpecWithBases and this PR relies on patched CPython version that
    provides PyType_FromSpecWithBasesAndMeta, which is very simple extension
    of PyType_FromSpecWithBases (diff ~10 lines), but adds a new API.
    
    Doing all the work on HPy side would require pulling PyType_FromSpecWithBases
    code to HPy including all the static helper methods. Not only this would
    be a large amount of code, but some of the helper methods use internal
    APIs.
    steve-s authored and fangerer committed Oct 14, 2022
    Configuration menu
    Copy the full SHA
    7c94e1a View commit details
    Browse the repository at this point in the history
  2. Remove trailing whitespaces

    fangerer committed Oct 14, 2022
    Configuration menu
    Copy the full SHA
    da5dd3a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9ebd0c1 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    619dd46 View commit details
    Browse the repository at this point in the history
  5. Update inline doc

    fangerer committed Oct 14, 2022
    Configuration menu
    Copy the full SHA
    3b7d16e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    02a7eae View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    cc3624a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    d1b1a00 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    10a9b1b View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    c9bfa43 View commit details
    Browse the repository at this point in the history
  11. Remove unused code

    fangerer committed Oct 14, 2022
    Configuration menu
    Copy the full SHA
    6eba518 View commit details
    Browse the repository at this point in the history
  12. Make g++ happy

    fangerer committed Oct 14, 2022
    Configuration menu
    Copy the full SHA
    404b9a8 View commit details
    Browse the repository at this point in the history
  13. Make MSVC happy

    fangerer committed Oct 14, 2022
    Configuration menu
    Copy the full SHA
    0e831b5 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    920c034 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    c5a08c6 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    ce7a886 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    07f25c0 View commit details
    Browse the repository at this point in the history