DescriptionAdd a way to use shared CanonicalName root to deserialize Program.
This allows for example to add SDK into a Program, then load the
"incomplete" Program A that has only the library A, and name sequences
that references SDK classes. Because we look into the nameRoot which
aleady has SDK CanonicalName(s), we can find these names while filling
the link table and use references which point to the existing SDK
AST nodes. Then we can load another set of library cycles, etc.
At the end we have a set of self-consistent libraries that we can
feed into DillTarget/DillLoader and resolve anothersource target
against it.
This CL is based on https://codereview.chromium.org/2872903005/
which has not been reviewed yet.
R=kmillikin@google.com, paulberry@google.com, sigmund@google.com
BUG=
Committed: https://github.com/dart-lang/sdk/commit/bdedd6768b4f594a3034151ada169b058515542f
Patch Set 1 #Patch Set 2 : Actual changes. #
Total comments: 4
Patch Set 3 : Always compute canonical names. Use shared name root. #
Total comments: 3
Patch Set 4 : Move 'nameRoot' into KernelTarget.link(). #
Total comments: 2
Patch Set 5 : Add TODO for 'uriToSource'. #
Total comments: 3
Messages
Total messages: 17 (2 generated)
|