clang API Documentation

Public Member Functions | Static Public Member Functions
clang::analyze_printf::PrintfSpecifier Class Reference

#include <FormatString.h>

Inheritance diagram for clang::analyze_printf::PrintfSpecifier:
Inheritance graph
[legend]
Collaboration diagram for clang::analyze_printf::PrintfSpecifier:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 PrintfSpecifier ()
void setConversionSpecifier (const PrintfConversionSpecifier &cs)
void setHasThousandsGrouping (const char *position)
void setIsLeftJustified (const char *position)
void setHasPlusPrefix (const char *position)
void setHasSpacePrefix (const char *position)
void setHasAlternativeForm (const char *position)
void setHasLeadingZeros (const char *position)
void setUsesPositionalArg ()
const PrintfConversionSpecifiergetConversionSpecifier () const
void setPrecision (const OptionalAmount &Amt)
const OptionalAmount & getPrecision () const
bool consumesDataArgument () const
ArgTypeResult getArgType (ASTContext &Ctx, bool IsObjCLiteral) const
 Returns the builtin type that a data argument paired with this format specifier should have. This method will return null if the format specifier does not have a matching data argument or the matching argument matches more than one type.
const OptionalFlag & hasThousandsGrouping () const
const OptionalFlag & isLeftJustified () const
const OptionalFlag & hasPlusPrefix () const
const OptionalFlag & hasAlternativeForm () const
const OptionalFlag & hasLeadingZeros () const
const OptionalFlag & hasSpacePrefix () const
bool usesPositionalArg () const
bool fixType (QualType QT, const LangOptions &LangOpt, ASTContext &Ctx, bool IsObjCLiteral)
void toString (raw_ostream &os) const
bool hasValidPlusPrefix () const
bool hasValidAlternativeForm () const
bool hasValidLeadingZeros () const
bool hasValidSpacePrefix () const
bool hasValidLeftJustified () const
bool hasValidThousandsGroupingPrefix () const
bool hasValidPrecision () const
bool hasValidFieldWidth () const

Static Public Member Functions

static PrintfSpecifier Parse (const char *beg, const char *end)

Detailed Description

Definition at line 396 of file FormatString.h.


Constructor & Destructor Documentation

clang::analyze_printf::PrintfSpecifier::PrintfSpecifier ( ) [inline]

Definition at line 405 of file FormatString.h.


Member Function Documentation

bool clang::analyze_printf::PrintfSpecifier::consumesDataArgument ( ) const [inline]
bool PrintfSpecifier::fixType ( QualType  QT,
const LangOptions LangOpt,
ASTContext Ctx,
bool  IsObjCLiteral 
)

Changes the specifier and length according to a QualType, retaining any flags or options. Returns true on success, or false when a conversion was not successful.

Definition at line 343 of file PrintfFormatString.cpp.

References clang::QualType::getBaseTypeIdentifier(), clang::BuiltinType::getKind(), and clang::IdentifierInfo::getName().

ArgTypeResult PrintfSpecifier::getArgType ( ASTContext Ctx,
bool  IsObjCLiteral 
) const
const PrintfConversionSpecifier& clang::analyze_printf::PrintfSpecifier::getConversionSpecifier ( ) const [inline]

Definition at line 444 of file FormatString.h.

References clang::analyze_format_string::FormatSpecifier::CS.

Referenced by consumesDataArgument().

const OptionalAmount& clang::analyze_printf::PrintfSpecifier::getPrecision ( ) const [inline]

Definition at line 453 of file FormatString.h.

const OptionalFlag& clang::analyze_printf::PrintfSpecifier::hasAlternativeForm ( ) const [inline]

Definition at line 473 of file FormatString.h.

const OptionalFlag& clang::analyze_printf::PrintfSpecifier::hasLeadingZeros ( ) const [inline]

Definition at line 474 of file FormatString.h.

const OptionalFlag& clang::analyze_printf::PrintfSpecifier::hasPlusPrefix ( ) const [inline]

Definition at line 472 of file FormatString.h.

const OptionalFlag& clang::analyze_printf::PrintfSpecifier::hasSpacePrefix ( ) const [inline]

Definition at line 475 of file FormatString.h.

const OptionalFlag& clang::analyze_printf::PrintfSpecifier::hasThousandsGrouping ( ) const [inline]

Definition at line 468 of file FormatString.h.

bool PrintfSpecifier::hasValidAlternativeForm ( ) const

Definition at line 524 of file PrintfFormatString.cpp.

bool PrintfSpecifier::hasValidFieldWidth ( ) const

Definition at line 657 of file PrintfFormatString.cpp.

bool PrintfSpecifier::hasValidLeadingZeros ( ) const

Definition at line 548 of file PrintfFormatString.cpp.

bool PrintfSpecifier::hasValidLeftJustified ( ) const

Definition at line 598 of file PrintfFormatString.cpp.

bool PrintfSpecifier::hasValidPlusPrefix ( ) const

Definition at line 501 of file PrintfFormatString.cpp.

bool PrintfSpecifier::hasValidPrecision ( ) const

Definition at line 630 of file PrintfFormatString.cpp.

bool PrintfSpecifier::hasValidSpacePrefix ( ) const

Definition at line 575 of file PrintfFormatString.cpp.

bool PrintfSpecifier::hasValidThousandsGroupingPrefix ( ) const

Definition at line 612 of file PrintfFormatString.cpp.

const OptionalFlag& clang::analyze_printf::PrintfSpecifier::isLeftJustified ( ) const [inline]

Definition at line 471 of file FormatString.h.

static PrintfSpecifier clang::analyze_printf::PrintfSpecifier::Parse ( const char *  beg,
const char *  end 
) [static]
void clang::analyze_printf::PrintfSpecifier::setConversionSpecifier ( const PrintfConversionSpecifier cs) [inline]

Definition at line 413 of file FormatString.h.

References clang::analyze_format_string::FormatSpecifier::CS.

void clang::analyze_printf::PrintfSpecifier::setHasAlternativeForm ( const char *  position) [inline]

Definition at line 432 of file FormatString.h.

void clang::analyze_printf::PrintfSpecifier::setHasLeadingZeros ( const char *  position) [inline]

Definition at line 436 of file FormatString.h.

void clang::analyze_printf::PrintfSpecifier::setHasPlusPrefix ( const char *  position) [inline]

Definition at line 424 of file FormatString.h.

void clang::analyze_printf::PrintfSpecifier::setHasSpacePrefix ( const char *  position) [inline]

Definition at line 428 of file FormatString.h.

void clang::analyze_printf::PrintfSpecifier::setHasThousandsGrouping ( const char *  position) [inline]

Definition at line 416 of file FormatString.h.

void clang::analyze_printf::PrintfSpecifier::setIsLeftJustified ( const char *  position) [inline]

Definition at line 420 of file FormatString.h.

void clang::analyze_printf::PrintfSpecifier::setPrecision ( const OptionalAmount &  Amt) [inline]

Definition at line 448 of file FormatString.h.

Referenced by ParsePrecision().

void clang::analyze_printf::PrintfSpecifier::setUsesPositionalArg ( ) [inline]
void PrintfSpecifier::toString ( raw_ostream &  os) const

Definition at line 474 of file PrintfFormatString.cpp.

bool clang::analyze_printf::PrintfSpecifier::usesPositionalArg ( ) const [inline]

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