1
0
mirror of https://github.com/SquidDev-CC/CC-Tweaked synced 2025-01-25 00:16:54 +00:00
CC-Tweaked/projects/common/src
Jonathan Coates 591a7eca23
Clean up how we enumerate Lua/peripheral methods
- Move several interfaces out of `d00.computercraft.core.asm` into a
   new `aethods` package. It may make sense to expose this to the
   public API in a future commit (possibly part of #1462).

 - Add a new MethodSupplier<T> interface, which provides methods to
   iterate over all methods exported by an object (either directly, or
   including those from ObjectSources).

   This interface's concrete implementation (asm.MethodSupplierImpl),
   uses Generators and IntCaches as before - we can now make that all
   package-private though, which is nice!

 - Make the LuaMethod and PeripheralMethod MethodSupplier local to the
   ComputerContext. This currently has no effect (the underlying
   Generator is still global), but eventually we'll make GenericMethods
   non-global, which unlocks the door for #1382.

 - Update everything to use this new interface. This is mostly pretty
   sensible, but is a little uglier on the MC side (especially in
   generic peripherals), as we need to access the global ServerContext.
2023-06-26 19:42:42 +01:00
..
client Fix quad order when rendering turtles upside down 2023-06-18 19:32:23 +01:00
main Clean up how we enumerate Lua/peripheral methods 2023-06-26 19:42:42 +01:00
test/java/dan200/computercraft Deprecate itemGroups field 2023-06-08 20:33:31 +01:00
testFixtures/java/dan200/computercraft/test/shared License CC:T according to the REUSE specification (#1351) 2023-03-15 21:52:13 +00:00
testMod Limit turtle's reach distance in Item.use 2023-06-24 17:09:34 +01:00