John McCall
312aa06901
Start fleshing out RemoteAST's storage-offset API.
2016-04-26 16:22:28 -07:00
John McCall
92cf4a6d39
Teach MetadataReader how to handle ObjCClassWrapper metadata.
2016-04-26 13:04:02 -07:00
John McCall
627e2325d3
Read tuple labels in MetadataReader and preserve them in RemoteAST.
...
The metadata system doesn't actually unique based on labels
correctly, so the test case has to play some games. That's
something that will be easier to fix when there are fewer
clients poking at the internals of the metadata runtime.
2016-04-25 22:33:41 -07:00
Slava Pestov
c0c02a3148
Reflection: ProtocolTypeRefs now store a mangled name
...
This is better for field metadata lookups. Clients that want the
module name and decl name can demangle, just like they do with
NominalTypeRefs.
2016-04-25 20:08:49 -07:00
John McCall
56052cfe61
Apparently the right way to look up imported declarations is to just ask the importer to look things up.
2016-04-25 19:03:08 -07:00
John McCall
812557ca24
Reorganization within RemoteAST. Basic error propagation.
...
Initial stabs towards reading foreign class metadata, although
these do not yet successfully resolve the declaration.
2016-04-25 16:57:19 -07:00
Enrico Granata
bd9e3e4a49
Actually add the getKindForRemoteTypeMetadata entry point to the main RemoteASTContext class
2016-04-25 13:57:43 -07:00
Enrico Granata
5d315ae30b
Add a getKindForRemoteTypeMetadata() API to the RemoteAST - LLDB plans to use this API to decide whether certain kinds of existential containers need a two-level type resolution (e.g. if an existential box points to a class, the true type that we want to resolve is the type that the class's ISA refers to, not the static type that the box refers to)
2016-04-25 11:50:03 -07:00
John McCall
5a735b5589
RemoteAST: type-check TypeReprs within a TopLevelCodeDecl
...
instead of just a ModuleDecl.
Fixes simple generic types.
2016-04-22 18:47:04 -07:00
John McCall
590706a8c6
Pass around address/buffer pairs in the MetadataReader instead of
...
just the address. Use this to avoid repeatedly reading metadata so
often (even if it's cached, this is better). Fix some bugs involving
nominal type parents.
2016-04-21 21:47:14 -07:00
John McCall
eb662ed62f
Look through Type nodes in findDeclContext to allow the direct use
...
of a top-level type demangling.
2016-04-21 16:25:19 -07:00
John McCall
22f193d254
Use the right demangling API when demangling nominal types.
2016-04-21 15:05:34 -07:00
John McCall
17625abbb9
Invoke the type-checker from RemoteAST to build generic types.
2016-04-20 13:53:49 -07:00
John McCall
093009b3ef
Enhance the Remote / RemoteAST libraries with an error mechanism.
...
Nothing is producing meaningful errors yet, however.
2016-04-20 11:44:34 -07:00
John McCall
e758ba3569
Stub out a RemoteAST library for translating remote metadata
...
pointers into a local AST.
This is intended primarily for the use of LLDB and does not have
a stable ABI.
2016-04-19 16:36:57 -07:00