├── .gitattributes ├── .github └── workflows │ └── publish.yml ├── .gitignore ├── .gitmodules ├── FernFlower-Patches ├── 0001-Git-filter-and-setup-cleanup-for-java-17.patch ├── 0002-Test-Framework-upgrades.patch ├── 0003-Fix-initializers-for-anon-and-synthetic-classes.patch ├── 0004-Fix-output-discrepancies-to-produce-stable-output.patch ├── 0005-Convert-Exprent.bytecode-to-a-BitMap.patch ├── 0006-Make-methods-hold-a-reference-to-their-declaring-cla.patch ├── 0007-Reintroduce-DotExporter-for-debugging-purposes.patch ├── 0008-LVT-Fixes-and-Support-for-Enhanced-For-loop-detectio.patch ├── 0009-Rework-of-Generics-system-for-better-output.patch ├── 0010-Improvements-to-var-and-var.patch ├── 0011-JAD-Style-variable-naming.patch ├── 0012-Fix-primitive-un-boxing-issues.patch ├── 0013-Add-Minecraft-test-framework.patch ├── 0014-Add-better-debug-logging.patch ├── 0015-Add-new-command-line-argument-sef-SkipExtraFiles-To-.patch ├── 0016-Bugfix-Fix-invalid-logic-in-ExprUtils.-https-github..patch ├── 0017-Enhance-Generic-Invocations-Temporarily.patch ├── 0018-Add-cfg-argument-Used-to-specify-a-text-file-with-ad.patch ├── 0019-Add-support-for-destination-to-be-a-zip-file-if-ther.patch ├── 0020-Add-a-metadata-file-named-fernflower_abstract_parame.patch ├── 0021-Synthetic-getClass-Objects.requireNonNull-cleanup.patch ├── 0022-Fix-shortname-imports-that-are-shadowed-by-super-cla.patch ├── 0023-Give-nicer-output-for-float-and-double-literals.patch ├── 0024-Add-try-with-resource-support.patch ├── 0025-Prioritize-self-and-enclosing-class-when-encounterin.patch ├── 0026-Fix-ambiguous-lambdas.patch ├── 0027-Fix-field-initalizers.patch ├── 0028-Improve-inferred-generic-types.patch ├── 0029-Improve-stack-var-processor-output.patch ├── 0030-Fix-finally-processor-instruction-comparison.patch ├── 0031-Simple-lambda-syntax-support-isl-0-to-disable.patch ├── 0032-Add-explicit-cast-to-invocations-of-java-nio-Buffer-.patch ├── 0033-Revert-change-to-FieldExprent-getExprentUse.patch ├── 0034-Add-only-argument-It-will-filter-what-classes-are-de.patch ├── 0035-Fix-local-variables-incorrectly-merging.patch ├── 0036-Do-not-rebuild-variable-names-in-lambdas.patch ├── 0037-Add-toString-to-MethodDescriptor.patch ├── 0038-Make-decomp-threaded.patch ├── 0039-Expose-line-mapping-information-in-archive-mode.patch ├── 0040-Fixup-J9-string-concat.patch ├── 0041-Fix-compound-assignments.patch ├── 0042-Filter-out-generated-Record-getters-and-constructor..patch ├── 0043-Fix-variables-in-finally-blocks-not-getting-renamed.patch ├── 0044-Search-generics-when-finding-where-to-inject-local-c.patch ├── 0045-Reduce-allocations-in-getAllExprents.patch ├── 0046-Cache-zip-file-instances-and-source-class-data.patch ├── 0047-Fix-signature-polymorphic-methods.patch ├── 0048-Improve-output-of-loops-inside-trycatch.patch ├── 0049-Allow-banner-to-be-specified-as-a-file.patch ├── 0050-Make-decompile-errors-more-visible.patch ├── 0051-Make-Statements.toString-a-bit-more-useful.patch ├── 0052-Disable-catch-statement-duplication.patch └── 0053-Fix-synthetic-parameters-that-are-not-stored-in-fiel.patch ├── LICENSE ├── README.md ├── fernflower.gradle ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/.github/workflows/publish.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/.gitmodules -------------------------------------------------------------------------------- /FernFlower-Patches/0001-Git-filter-and-setup-cleanup-for-java-17.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0001-Git-filter-and-setup-cleanup-for-java-17.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0002-Test-Framework-upgrades.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0002-Test-Framework-upgrades.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0003-Fix-initializers-for-anon-and-synthetic-classes.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0003-Fix-initializers-for-anon-and-synthetic-classes.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0004-Fix-output-discrepancies-to-produce-stable-output.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0004-Fix-output-discrepancies-to-produce-stable-output.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0005-Convert-Exprent.bytecode-to-a-BitMap.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0005-Convert-Exprent.bytecode-to-a-BitMap.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0006-Make-methods-hold-a-reference-to-their-declaring-cla.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0006-Make-methods-hold-a-reference-to-their-declaring-cla.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0007-Reintroduce-DotExporter-for-debugging-purposes.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0007-Reintroduce-DotExporter-for-debugging-purposes.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0008-LVT-Fixes-and-Support-for-Enhanced-For-loop-detectio.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0008-LVT-Fixes-and-Support-for-Enhanced-For-loop-detectio.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0009-Rework-of-Generics-system-for-better-output.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0009-Rework-of-Generics-system-for-better-output.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0010-Improvements-to-var-and-var.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0010-Improvements-to-var-and-var.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0011-JAD-Style-variable-naming.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0011-JAD-Style-variable-naming.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0012-Fix-primitive-un-boxing-issues.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0012-Fix-primitive-un-boxing-issues.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0013-Add-Minecraft-test-framework.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0013-Add-Minecraft-test-framework.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0014-Add-better-debug-logging.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0014-Add-better-debug-logging.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0015-Add-new-command-line-argument-sef-SkipExtraFiles-To-.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0015-Add-new-command-line-argument-sef-SkipExtraFiles-To-.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0016-Bugfix-Fix-invalid-logic-in-ExprUtils.-https-github..patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0016-Bugfix-Fix-invalid-logic-in-ExprUtils.-https-github..patch -------------------------------------------------------------------------------- /FernFlower-Patches/0017-Enhance-Generic-Invocations-Temporarily.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0017-Enhance-Generic-Invocations-Temporarily.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0018-Add-cfg-argument-Used-to-specify-a-text-file-with-ad.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0018-Add-cfg-argument-Used-to-specify-a-text-file-with-ad.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0019-Add-support-for-destination-to-be-a-zip-file-if-ther.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0019-Add-support-for-destination-to-be-a-zip-file-if-ther.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0020-Add-a-metadata-file-named-fernflower_abstract_parame.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0020-Add-a-metadata-file-named-fernflower_abstract_parame.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0021-Synthetic-getClass-Objects.requireNonNull-cleanup.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0021-Synthetic-getClass-Objects.requireNonNull-cleanup.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0022-Fix-shortname-imports-that-are-shadowed-by-super-cla.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0022-Fix-shortname-imports-that-are-shadowed-by-super-cla.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0023-Give-nicer-output-for-float-and-double-literals.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0023-Give-nicer-output-for-float-and-double-literals.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0024-Add-try-with-resource-support.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0024-Add-try-with-resource-support.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0025-Prioritize-self-and-enclosing-class-when-encounterin.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0025-Prioritize-self-and-enclosing-class-when-encounterin.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0026-Fix-ambiguous-lambdas.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0026-Fix-ambiguous-lambdas.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0027-Fix-field-initalizers.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0027-Fix-field-initalizers.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0028-Improve-inferred-generic-types.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0028-Improve-inferred-generic-types.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0029-Improve-stack-var-processor-output.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0029-Improve-stack-var-processor-output.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0030-Fix-finally-processor-instruction-comparison.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0030-Fix-finally-processor-instruction-comparison.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0031-Simple-lambda-syntax-support-isl-0-to-disable.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0031-Simple-lambda-syntax-support-isl-0-to-disable.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0032-Add-explicit-cast-to-invocations-of-java-nio-Buffer-.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0032-Add-explicit-cast-to-invocations-of-java-nio-Buffer-.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0033-Revert-change-to-FieldExprent-getExprentUse.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0033-Revert-change-to-FieldExprent-getExprentUse.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0034-Add-only-argument-It-will-filter-what-classes-are-de.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0034-Add-only-argument-It-will-filter-what-classes-are-de.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0035-Fix-local-variables-incorrectly-merging.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0035-Fix-local-variables-incorrectly-merging.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0036-Do-not-rebuild-variable-names-in-lambdas.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0036-Do-not-rebuild-variable-names-in-lambdas.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0037-Add-toString-to-MethodDescriptor.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0037-Add-toString-to-MethodDescriptor.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0038-Make-decomp-threaded.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0038-Make-decomp-threaded.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0039-Expose-line-mapping-information-in-archive-mode.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0039-Expose-line-mapping-information-in-archive-mode.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0040-Fixup-J9-string-concat.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0040-Fixup-J9-string-concat.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0041-Fix-compound-assignments.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0041-Fix-compound-assignments.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0042-Filter-out-generated-Record-getters-and-constructor..patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0042-Filter-out-generated-Record-getters-and-constructor..patch -------------------------------------------------------------------------------- /FernFlower-Patches/0043-Fix-variables-in-finally-blocks-not-getting-renamed.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0043-Fix-variables-in-finally-blocks-not-getting-renamed.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0044-Search-generics-when-finding-where-to-inject-local-c.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0044-Search-generics-when-finding-where-to-inject-local-c.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0045-Reduce-allocations-in-getAllExprents.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0045-Reduce-allocations-in-getAllExprents.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0046-Cache-zip-file-instances-and-source-class-data.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0046-Cache-zip-file-instances-and-source-class-data.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0047-Fix-signature-polymorphic-methods.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0047-Fix-signature-polymorphic-methods.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0048-Improve-output-of-loops-inside-trycatch.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0048-Improve-output-of-loops-inside-trycatch.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0049-Allow-banner-to-be-specified-as-a-file.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0049-Allow-banner-to-be-specified-as-a-file.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0050-Make-decompile-errors-more-visible.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0050-Make-decompile-errors-more-visible.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0051-Make-Statements.toString-a-bit-more-useful.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0051-Make-Statements.toString-a-bit-more-useful.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0052-Disable-catch-statement-duplication.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0052-Disable-catch-statement-duplication.patch -------------------------------------------------------------------------------- /FernFlower-Patches/0053-Fix-synthetic-parameters-that-are-not-stored-in-fiel.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/FernFlower-Patches/0053-Fix-synthetic-parameters-that-are-not-stored-in-fiel.patch -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/README.md -------------------------------------------------------------------------------- /fernflower.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/fernflower.gradle -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MinecraftForge/ForgeFlower/HEAD/settings.gradle --------------------------------------------------------------------------------