clang  3.7.0
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
clang::analyze_format_string::FormatSpecifier Class Reference

#include <FormatString.h>

Inheritance diagram for clang::analyze_format_string::FormatSpecifier:
[legend]
Collaboration diagram for clang::analyze_format_string::FormatSpecifier:
[legend]

Public Member Functions

 FormatSpecifier (bool isPrintf)
 
void setLengthModifier (LengthModifier lm)
 
void setUsesPositionalArg ()
 
void setArgIndex (unsigned i)
 
unsigned getArgIndex () const
 
unsigned getPositionalArgIndex () const
 
const LengthModifiergetLengthModifier () const
 
const OptionalAmountgetFieldWidth () const
 
void setFieldWidth (const OptionalAmount &Amt)
 
bool usesPositionalArg () const
 
bool hasValidLengthModifier (const TargetInfo &Target) const
 
bool hasStandardLengthModifier () const
 
Optional< LengthModifiergetCorrectedLengthModifier () const
 
bool hasStandardConversionSpecifier (const LangOptions &LangOpt) const
 
bool hasStandardLengthConversionCombination () const
 

Static Public Member Functions

static bool namedTypeToLengthModifier (QualType QT, LengthModifier &LM)
 

Protected Attributes

LengthModifier LM
 
OptionalAmount FieldWidth
 
ConversionSpecifier CS
 
bool UsesPositionalArg
 
unsigned argIndex
 

Detailed Description

Definition at line 336 of file FormatString.h.

Constructor & Destructor Documentation

clang::analyze_format_string::FormatSpecifier::FormatSpecifier ( bool  isPrintf)
inline

Definition at line 347 of file FormatString.h.

Member Function Documentation

unsigned clang::analyze_format_string::FormatSpecifier::getArgIndex ( ) const
inline

Definition at line 360 of file FormatString.h.

References argIndex.

Optional< LengthModifier > FormatSpecifier::getCorrectedLengthModifier ( ) const
const OptionalAmount& clang::analyze_format_string::FormatSpecifier::getFieldWidth ( ) const
inline

Definition at line 372 of file FormatString.h.

References FieldWidth.

const LengthModifier& clang::analyze_format_string::FormatSpecifier::getLengthModifier ( ) const
inline

Definition at line 368 of file FormatString.h.

References LM.

unsigned clang::analyze_format_string::FormatSpecifier::getPositionalArgIndex ( ) const
inline

Definition at line 364 of file FormatString.h.

References argIndex.

bool FormatSpecifier::hasStandardConversionSpecifier ( const LangOptions LangOpt) const

Definition at line 802 of file FormatString.cpp.

References clang::analyze_format_string::ConversionSpecifier::aArg, clang::analyze_format_string::ConversionSpecifier::AArg, clang::analyze_format_string::ConversionSpecifier::cArg, clang::analyze_format_string::ConversionSpecifier::CArg, CS, clang::analyze_format_string::ConversionSpecifier::dArg, clang::analyze_format_string::ConversionSpecifier::DArg, clang::analyze_format_string::ConversionSpecifier::eArg, clang::analyze_format_string::ConversionSpecifier::EArg, clang::analyze_format_string::ConversionSpecifier::fArg, clang::analyze_format_string::ConversionSpecifier::FArg, clang::analyze_format_string::ConversionSpecifier::FreeBSDbArg, clang::analyze_format_string::ConversionSpecifier::FreeBSDDArg, clang::analyze_format_string::ConversionSpecifier::FreeBSDrArg, clang::analyze_format_string::ConversionSpecifier::FreeBSDyArg, clang::analyze_format_string::ConversionSpecifier::gArg, clang::analyze_format_string::ConversionSpecifier::GArg, clang::analyze_format_string::ConversionSpecifier::getKind(), clang::analyze_format_string::ConversionSpecifier::iArg, clang::analyze_format_string::ConversionSpecifier::InvalidSpecifier, clang::analyze_format_string::ConversionSpecifier::nArg, clang::analyze_format_string::ConversionSpecifier::oArg, clang::analyze_format_string::ConversionSpecifier::OArg, clang::analyze_format_string::ConversionSpecifier::ObjCObjArg, clang::analyze_format_string::ConversionSpecifier::pArg, clang::analyze_format_string::ConversionSpecifier::PercentArg, clang::analyze_format_string::ConversionSpecifier::PrintErrno, clang::analyze_format_string::ConversionSpecifier::sArg, clang::analyze_format_string::ConversionSpecifier::SArg, clang::analyze_format_string::ConversionSpecifier::ScanListArg, clang::analyze_format_string::ConversionSpecifier::uArg, clang::analyze_format_string::ConversionSpecifier::UArg, clang::analyze_format_string::ConversionSpecifier::xArg, clang::analyze_format_string::ConversionSpecifier::XArg, and clang::analyze_format_string::ConversionSpecifier::ZArg.

bool FormatSpecifier::hasStandardLengthConversionCombination ( ) const
bool FormatSpecifier::hasStandardLengthModifier ( ) const
bool FormatSpecifier::hasValidLengthModifier ( const TargetInfo Target) const

Definition at line 626 of file FormatString.cpp.

References clang::analyze_format_string::ConversionSpecifier::aArg, clang::analyze_format_string::ConversionSpecifier::AArg, clang::analyze_format_string::LengthModifier::AsAllocate, clang::analyze_format_string::LengthModifier::AsChar, clang::analyze_format_string::LengthModifier::AsInt32, clang::analyze_format_string::LengthModifier::AsInt3264, clang::analyze_format_string::LengthModifier::AsInt64, clang::analyze_format_string::LengthModifier::AsIntMax, clang::analyze_format_string::LengthModifier::AsLong, clang::analyze_format_string::LengthModifier::AsLongDouble, clang::analyze_format_string::LengthModifier::AsLongLong, clang::analyze_format_string::LengthModifier::AsMAllocate, clang::analyze_format_string::LengthModifier::AsPtrDiff, clang::analyze_format_string::LengthModifier::AsQuad, clang::analyze_format_string::LengthModifier::AsShort, clang::analyze_format_string::LengthModifier::AsSizeT, clang::analyze_format_string::LengthModifier::AsWide, clang::analyze_format_string::ConversionSpecifier::cArg, clang::analyze_format_string::ConversionSpecifier::CArg, CS, clang::analyze_format_string::ConversionSpecifier::dArg, clang::analyze_format_string::ConversionSpecifier::DArg, clang::analyze_format_string::ConversionSpecifier::eArg, clang::analyze_format_string::ConversionSpecifier::EArg, clang::analyze_format_string::ConversionSpecifier::fArg, clang::analyze_format_string::ConversionSpecifier::FArg, clang::analyze_format_string::ConversionSpecifier::FreeBSDrArg, clang::analyze_format_string::ConversionSpecifier::FreeBSDyArg, clang::analyze_format_string::ConversionSpecifier::gArg, clang::analyze_format_string::ConversionSpecifier::GArg, clang::analyze_format_string::LengthModifier::getKind(), clang::analyze_format_string::ConversionSpecifier::getKind(), clang::TargetInfo::getTriple(), clang::analyze_format_string::ConversionSpecifier::iArg, LM, clang::analyze_format_string::ConversionSpecifier::nArg, clang::analyze_format_string::LengthModifier::None, clang::analyze_format_string::ConversionSpecifier::oArg, clang::analyze_format_string::ConversionSpecifier::OArg, clang::analyze_format_string::ConversionSpecifier::sArg, clang::analyze_format_string::ConversionSpecifier::SArg, clang::analyze_format_string::ConversionSpecifier::ScanListArg, clang::analyze_format_string::ConversionSpecifier::uArg, clang::analyze_format_string::ConversionSpecifier::UArg, clang::analyze_format_string::ConversionSpecifier::xArg, clang::analyze_format_string::ConversionSpecifier::XArg, and clang::analyze_format_string::ConversionSpecifier::ZArg.

bool FormatSpecifier::namedTypeToLengthModifier ( QualType  QT,
LengthModifier LM 
)
static
void clang::analyze_format_string::FormatSpecifier::setArgIndex ( unsigned  i)
inline

Definition at line 356 of file FormatString.h.

References argIndex.

Referenced by clang::analyze_format_string::ParseArgPosition().

void clang::analyze_format_string::FormatSpecifier::setFieldWidth ( const OptionalAmount Amt)
inline

Definition at line 376 of file FormatString.h.

References FieldWidth.

Referenced by clang::analyze_format_string::ParseFieldWidth().

void clang::analyze_format_string::FormatSpecifier::setLengthModifier ( LengthModifier  lm)
inline

Definition at line 350 of file FormatString.h.

References LM.

Referenced by clang::analyze_format_string::ParseLengthModifier().

void clang::analyze_format_string::FormatSpecifier::setUsesPositionalArg ( )
inline

Definition at line 354 of file FormatString.h.

References UsesPositionalArg.

Referenced by clang::analyze_format_string::ParseArgPosition().

bool clang::analyze_format_string::FormatSpecifier::usesPositionalArg ( ) const
inline

Definition at line 380 of file FormatString.h.

References UsesPositionalArg.

Member Data Documentation

unsigned clang::analyze_format_string::FormatSpecifier::argIndex
protected

Definition at line 345 of file FormatString.h.

Referenced by getArgIndex(), getPositionalArgIndex(), and setArgIndex().

ConversionSpecifier clang::analyze_format_string::FormatSpecifier::CS
protected
OptionalAmount clang::analyze_format_string::FormatSpecifier::FieldWidth
protected

Definition at line 339 of file FormatString.h.

Referenced by getFieldWidth(), and setFieldWidth().

LengthModifier clang::analyze_format_string::FormatSpecifier::LM
protected
bool clang::analyze_format_string::FormatSpecifier::UsesPositionalArg
protected

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