clang  6.0.0svn
Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
clang::PTHManager Class Reference

#include "clang/Lex/PTHManager.h"

Inheritance diagram for clang::PTHManager:
Inheritance graph
[legend]
Collaboration diagram for clang::PTHManager:
Collaboration graph
[legend]

Classes

class  PTHFileLookupTrait
 
class  PTHStringLookupTrait
 

Public Types

enum  { Version = 10 }
 

Public Member Functions

 ~PTHManager () override
 
const char * getOriginalSourceFile () const
 getOriginalSourceFile - Return the full path to the original header file name that was used to generate the PTH cache. More...
 
IdentifierInfoget (StringRef Name) override
 get - Return the identifier token info for the specified named identifier. More...
 
void setPreprocessor (Preprocessor *pp)
 
PTHLexerCreateLexer (FileID FID)
 CreateLexer - Return a PTHLexer that "lexes" the cached tokens for the specified file. More...
 
std::unique_ptr< FileSystemStatCachecreateStatCache ()
 createStatCache - Returns a FileSystemStatCache object for use with FileManager objects. More...
 
- Public Member Functions inherited from clang::IdentifierInfoLookup
virtual ~IdentifierInfoLookup ()
 
virtual IdentifierIteratorgetIdentifiers ()
 Retrieve an iterator into the set of all identifiers known to this identifier lookup source. More...
 

Static Public Member Functions

static PTHManagerCreate (StringRef file, DiagnosticsEngine &Diags)
 Create - This method creates PTHManager objects. More...
 

Friends

class PTHLexer
 
class PTHStatCache
 

Detailed Description

Definition at line 35 of file PTHManager.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Version 

Definition at line 111 of file PTHManager.h.

Constructor & Destructor Documentation

◆ ~PTHManager()

PTHManager::~PTHManager ( )
override

Definition at line 426 of file PTHLexer.cpp.

Member Function Documentation

◆ Create()

PTHManager * PTHManager::Create ( StringRef  file,
DiagnosticsEngine Diags 
)
static

Create - This method creates PTHManager objects.

The 'file' argument is the name of the PTH file. This method returns NULL upon failure.

Definition at line 433 of file PTHLexer.cpp.

References clang::Create(), clang::IdentifierInfo::getNameStart(), InvalidPTH(), clang::PTHLexer::PTHManager, clang::DiagnosticsEngine::Report(), and Version.

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

◆ CreateLexer()

PTHLexer * PTHManager::CreateLexer ( FileID  FID)

CreateLexer - Return a PTHLexer that "lexes" the cached tokens for the specified file.

This method returns NULL if no cached tokens exist. It is the responsibility of the caller to 'delete' the returned object.

Definition at line 594 of file PTHLexer.cpp.

References clang::SourceManager::getFileEntryForID(), clang::Preprocessor::getSourceManager(), and clang::PreprocessorLexer::PP.

◆ createStatCache()

std::unique_ptr< FileSystemStatCache > PTHManager::createStatCache ( )

createStatCache - Returns a FileSystemStatCache object for use with FileManager objects.

These objects use the PTH data to speed up calls to stat by memoizing their results from when the PTH file was generated.

Definition at line 725 of file PTHLexer.cpp.

◆ get()

IdentifierInfo * PTHManager::get ( StringRef  Name)
overridevirtual

get - Return the identifier token info for the specified named identifier.

Unlike the version in IdentifierTable, this returns a pointer instead of a reference. If the pointer is NULL then the IdentifierInfo cannot be found.

Implements clang::IdentifierInfoLookup.

Definition at line 581 of file PTHLexer.cpp.

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

◆ getOriginalSourceFile()

const char* clang::PTHManager::getOriginalSourceFile ( ) const
inline

getOriginalSourceFile - Return the full path to the original header file name that was used to generate the PTH cache.

Definition at line 117 of file PTHManager.h.

◆ setPreprocessor()

void clang::PTHManager::setPreprocessor ( Preprocessor pp)
inline

Definition at line 131 of file PTHManager.h.

Friends And Related Function Documentation

◆ PTHLexer

friend class PTHLexer
friend

Definition at line 36 of file PTHManager.h.

◆ PTHStatCache

friend class PTHStatCache
friend

Definition at line 38 of file PTHManager.h.


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