clang 18.0.0git
Classes | Namespaces | Enumerations | Functions
Pragma.h File Reference
#include "clang/Basic/LLVM.h"
#include "clang/Basic/SourceLocation.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/StringRef.h"
#include <string>

Go to the source code of this file.

Classes

struct  clang::PragmaIntroducer
 Describes how and where the pragma was introduced. More...
 
class  clang::PragmaHandler
 PragmaHandler - Instances of this interface defined to handle the various pragmas that the language front-end uses. More...
 
class  clang::EmptyPragmaHandler
 EmptyPragmaHandler - A pragma handler which takes no action, which can be used to ignore particular pragmas. More...
 
class  clang::PragmaNamespace
 PragmaNamespace - This PragmaHandler subdivides the namespace of pragmas, allowing hierarchical pragmas to be defined. More...
 

Namespaces

namespace  clang
 

Enumerations

enum  clang::PragmaIntroducerKind { clang::PIK_HashPragma , clang::PIK__Pragma , clang::PIK___pragma }
 Describes how the pragma was introduced, e.g., with #pragma, _Pragma, or __pragma. More...
 

Functions

void clang::prepare_PragmaString (SmallVectorImpl< char > &StrVal)
 Destringize a _Pragma("") string according to C11 6.10.9.1: "The string literal is destringized by deleting any encoding prefix, deleting the leading and trailing double-quotes, replacing each escape sequence \" by a double-quote, and replacing each escape sequence \ by a single backslash.