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

Computer handlers generated by annotation processor #7829

Merged
merged 149 commits into from
Sep 2, 2023

Conversation

thiakil
Copy link
Member

@thiakil thiakil commented Jul 25, 2023

Changes proposed in this pull request:

  • Generates computer handlers at compile time with annotation processor
  • Calls members directly when public or package-private to drastically reduce reflection
  • @ComputerMethod methods must now not be private
  • Methods must return a defined type, cannot be Object - Convertable created for the edge cases that need it
  • Adds conversions for complex datatypes to OC2 (previously some complicated oc->mek conversions wouldn't have worked)
  • NBT replaced with SNBT (string nbt used in Commands)
  • Conversions to/from computer types statically defined
  • OC2 has energy helpers added to all devices (no globals support)
  • Overloads restricted to be methods with different param counts (currently not used)

thiakil added 30 commits July 25, 2023 13:49
…uter helper.

Breaks a couple of methods to old computer code where plain Object was returned
@pupnewfster pupnewfster merged commit 2c4e968 into 1.20.x Sep 2, 2023
@pupnewfster pupnewfster added this to the 10.4.0 milestone Sep 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants