aboutsummaryrefslogtreecommitdiff
path: root/include/clang/Lex/ModuleLoader.h
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-11-30 23:21:26 +0000
committerDouglas Gregor <dgregor@apple.com>2011-11-30 23:21:26 +0000
commit1a4761edca58c6b559de825b9abfb66f7f1ba94a (patch)
treebd17d1a3341870f9378db26a09045b3bb2db8426 /include/clang/Lex/ModuleLoader.h
parent8d39c3ddfc17d9e768a17eb0ce9f11c33bf9d50a (diff)
Promote ModuleMap::Module to a namespace-scope class in the Basic
library, since modules cut across all of the libraries. Rename serialization::Module to serialization::ModuleFile to side-step the annoying naming conflict. Prune a bunch of ModuleMap.h includes that are no longer needed (most files only needed the Module type). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145538 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Lex/ModuleLoader.h')
-rw-r--r--include/clang/Lex/ModuleLoader.h12
1 files changed, 4 insertions, 8 deletions
diff --git a/include/clang/Lex/ModuleLoader.h b/include/clang/Lex/ModuleLoader.h
index 42071080f7..6a7fe0204f 100644
--- a/include/clang/Lex/ModuleLoader.h
+++ b/include/clang/Lex/ModuleLoader.h
@@ -20,10 +20,7 @@
namespace clang {
class IdentifierInfo;
-
-/// \brief An opaque key that is used to describe the module and can be
-/// interpreted by the module loader itself.
-typedef void *ModuleKey;
+class Module;
/// \brief A sequence of identifier/location pairs used to describe a particular
/// module or submodule, e.g., std.vector.
@@ -47,10 +44,9 @@ public:
/// \param Path The identifiers (and their locations) of the module
/// "path", e.g., "std.vector" would be split into "std" and "vector".
///
- /// \returns If successful, a non-NULL module key describing this module.
- /// Otherwise, returns NULL to indicate that the module could not be
- /// loaded.
- virtual ModuleKey loadModule(SourceLocation ImportLoc, ModuleIdPath Path) = 0;
+ /// \returns If successful, returns the loaded module. Otherwise, returns
+ /// NULL to indicate that the module could not be loaded.
+ virtual Module *loadModule(SourceLocation ImportLoc, ModuleIdPath Path) = 0;
};
}