Justin Tullgren
04/08/2021, 8:26 PMJustin Tullgren
04/08/2021, 8:30 PMYoussef Shoaib [MOD]
04/08/2021, 9:36 PMIrGenerationExtension.registerExtension
your extension gets a LoadingOrder.ANY
as it's order. To change that, you can go through a few hoops (namely just doing `
project.extensionArea.getExtensionPoint(IrGenerationExtension.extensionPointName).registerExtension(extension, LoadingOrder.XX project)
).
If you are using the default though (like literally every other plugin), then the order of the plugins running is basically undetermined and it just depends on what order the compiler decided to run your ComponentRegistrars. I'm guessing it probably then by extension depend on what order the gradle plugins were applied. That all doesn't matter though, because what you haven't noticed in your example is that when your plugin adds that modified call, it's adding that depending on how the user's code is structured (as in you're probably taking an already-existing call and modifying it) and so what happens is that if your plugin goes first it changes the user's initial code and then compose puts that in the else, and if compose goes first then your plugin changes what it's meant to change, and the only place where that exists is in that else blockJustin Tullgren
04/08/2021, 10:50 PM