Skip to content

New symbols, plus fixes#213

Merged
progrium merged 5 commits into
mainfrom
new-symbols
Sep 8, 2023
Merged

New symbols, plus fixes#213
progrium merged 5 commits into
mainfrom
new-symbols

Conversation

@progrium

@progrium progrium commented Sep 8, 2023

Copy link
Copy Markdown
Owner

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
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

Development

Successfully merging this pull request may close these issues.

possible issue with protocol-based types generate: MPS labels are ending up with a prefix of "S". remove Alloc convenience functions

1 participant