clang  6.0.0svn
Public Types | Public Member Functions | Public Attributes | List of all members
clang::ModuleLoadResult Class Reference

Describes the result of attempting to load a module. More...

#include "clang/Lex/ModuleLoader.h"

Collaboration diagram for clang::ModuleLoadResult:
Collaboration graph
[legend]

Public Types

enum  LoadResultKind { Normal, MissingExpected, ConfigMismatch }
 

Public Member Functions

 ModuleLoadResult ()
 
 ModuleLoadResult (Module *M)
 
 ModuleLoadResult (LoadResultKind Kind)
 
 operator Module * () const
 
bool isMissingExpected () const
 Determines whether the module, which failed to load, was actually a submodule that we expected to see (based on implying the submodule from header structure), but didn't materialize in the actual module. More...
 
bool isConfigMismatch () const
 Determines whether the module failed to load due to a configuration mismatch with an explicitly-named .pcm file from the command line. More...
 

Public Attributes

llvm::PointerIntPair< Module *, 2, LoadResultKindStorage
 

Detailed Description

Describes the result of attempting to load a module.

Definition at line 33 of file ModuleLoader.h.

Member Enumeration Documentation

◆ LoadResultKind

Enumerator
Normal 
MissingExpected 
ConfigMismatch 

Definition at line 35 of file ModuleLoader.h.

Constructor & Destructor Documentation

◆ ModuleLoadResult() [1/3]

clang::ModuleLoadResult::ModuleLoadResult ( )
inline

Definition at line 47 of file ModuleLoader.h.

Referenced by clang::TrivialModuleLoader::loadModule().

◆ ModuleLoadResult() [2/3]

clang::ModuleLoadResult::ModuleLoadResult ( Module M)
inline

Definition at line 48 of file ModuleLoader.h.

◆ ModuleLoadResult() [3/3]

clang::ModuleLoadResult::ModuleLoadResult ( LoadResultKind  Kind)
inline

Definition at line 49 of file ModuleLoader.h.

Member Function Documentation

◆ isConfigMismatch()

bool clang::ModuleLoadResult::isConfigMismatch ( ) const
inline

Determines whether the module failed to load due to a configuration mismatch with an explicitly-named .pcm file from the command line.

Definition at line 61 of file ModuleLoader.h.

References ConfigMismatch.

◆ isMissingExpected()

bool clang::ModuleLoadResult::isMissingExpected ( ) const
inline

Determines whether the module, which failed to load, was actually a submodule that we expected to see (based on implying the submodule from header structure), but didn't materialize in the actual module.

Definition at line 57 of file ModuleLoader.h.

References MissingExpected.

◆ operator Module *()

clang::ModuleLoadResult::operator Module * ( ) const
inline

Definition at line 51 of file ModuleLoader.h.

Member Data Documentation

◆ Storage

llvm::PointerIntPair<Module *, 2, LoadResultKind> clang::ModuleLoadResult::Storage

Definition at line 45 of file ModuleLoader.h.


The documentation for this class was generated from the following file: