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

New symbols, plus fixes #213

Merged
merged 5 commits into from
Sep 8, 2023
Merged

New symbols, plus fixes #213

merged 5 commits into from
Sep 8, 2023

Conversation

progrium
Copy link
Owner

@progrium progrium commented Sep 8, 2023

This PR is primarily about a new symbolsdb that has a fix to a bug where symbols with the same names were collapsed to one. Resolving this adds 6 new class/prototypes, 14 new constants, and most importantly adds 1,681 missing methods.

A few other fixes are included:

  • protocols were reworked, wrappers now end in Object, and an assertion is added to make sure they implement the protocol interface.
  • convenience methods for Alloc were removed.
  • mps symbols were fixed, though no full sorting, just moved MediaPlayer to end of list.
  • generated files now use the conventional format for the generated comment banner
  • protocols live in files ending in _protocol.gen.go to help avoid collisions with classes
  • clobbergen removes files based on the .gen in the filename instead of banner
  • constants with the same name as their enum type are prefixed with K, similar to existing Apple convention

Lastly, the regen in this PR looks like it changed more than it did because the new symbolsdb has a new ordering causing the order of definitions to change. From here regeneration should maintain this order and won't be as significant a diff in the future.

* use conventional generated file banner
* protocols live in files with _protocol in the filename
* dropped convenience alloc functions
* renamed type for protocol wrapper to end with Object instead of Wrapper
* ensure protocol wrappers implement the protocol interface
* constants with same name as their enum name get K prefix
* globbergen finds files by filename now
@progrium progrium added this to the 0.5.0 milestone Sep 8, 2023
@progrium progrium requested a review from tmc September 8, 2023 21:50
@progrium progrium added the generation Related to generation toolchain label Sep 8, 2023
@progrium progrium merged commit 53ff09c into main Sep 8, 2023
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
generation Related to generation toolchain
Projects
None yet
1 participant