clang 10.0.0git

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:
[legend]

## Public Types
enum | LoadResultKind { Normal, MissingExpected, ConfigMismatch, OtherUncachedFailure }

## Public Member Functions
| ModuleLoadResult ()=default
| ModuleLoadResult (Module *M)
| ModuleLoadResult (LoadResultKind Kind)
| operator Module * () const
bool | isNormal () const
| Determines whether this is a normal return, whether or not loading the module was successful. More...
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, LoadResultKind > | Storage

## Detailed Description

Describes the result of attempting to load a module.

Definition at line 35 of file ModuleLoader.h.

## Member Enumeration Documentation

## ◆ LoadResultKind

enum clang::ModuleLoadResult::LoadResultKind

Enumerator
Normal |
MissingExpected |
ConfigMismatch |
OtherUncachedFailure |

Definition at line 37 of file ModuleLoader.h.

## Constructor & Destructor Documentation

## ◆ ModuleLoadResult() [1/3]

clang::ModuleLoadResult::ModuleLoadResult | ( |  | ) |
| default

## ◆ ModuleLoadResult() [2/3]

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

Definition at line 55 of file ModuleLoader.h.

## ◆ ModuleLoadResult() [3/3]

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

Definition at line 56 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 72 of file ModuleLoader.h.

References ConfigMismatch.

Referenced by clang::Preprocessor::checkModuleIsAvailable().

## ◆ 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 68 of file ModuleLoader.h.

References MissingExpected.

Referenced by clang::Preprocessor::checkModuleIsAvailable().

## ◆ isNormal()

bool clang::ModuleLoadResult::isNormal | ( |  | ) | const
| inline

Determines whether this is a normal return, whether or not loading the module was successful.

Definition at line 62 of file ModuleLoader.h.

References Normal.

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

## ◆ operator Module *()

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

Definition at line 58 of file ModuleLoader.h.

## Member Data Documentation

## ◆ Storage

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

Definition at line 52 of file ModuleLoader.h.

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

- include/clang/Lex/ModuleLoader.h