Maybe I'm missing something, but looking at the code briefly, I see that StandardLinkerContext()'s constructor takes the ModuleDef, and the ModuleDef is passed around throughout the linking process, so I'm guessing a strong reference to the ModuleDef would persist throughout the linking process, thus ensuring it didn't get removed from the table in ModuleDefLoader. Isn't the ModuleDef needed during the linking process?
After taking a closer look it seems right that the module to be compiled should be in that cache since non-weak references exist.
Also, currently there is just a single LinkerContext implementation: StandardLinkerContext. This context holds a list of linkerClasses which you could also access via reflection, iterate through it and check each class for the LinkerOrder annotation and its Order value. There must be exactly one with Order.PRIMARY.
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to email@example.com.
To post to this group, send email to firstname.lastname@example.org.
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.
Post a Comment