mirror of
https://github.com/GTNewHorizons/ForgeMultipart.git
synced 2026-11-12 16:37:38 +00:00
A Scala package object compiles to a class literally named 'package', and that is a Java keyword, so no Java source can declare or even name it. The characterization had to reach both through Class.forName, which is the argument in one line. There is no Java form to port to. Each held exactly one member, a logger alias for its proxy, so the indirection is inlined at its eight call sites: ConfigContent (7) and MultipartGenerator (1). The functional characterization asserted beforehand that each alias returned the very instance its proxy holds, so the substitution is an identity; both classes are descriptor-identical afterwards. Exactly four classes leave the jar and nothing else changes. No consumer referenced them, and no Java consumer could have. 120 plain-JVM tests and 22 Forge server tests pass. PackageObjectCharacterization went with its subject; ProxyLoggerFunctionalTest keeps the assertion worth having, that both proxies publish a logger during preInit.