clang API Documentation

Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions
clang::FunctionType Class Reference

#include <Type.h>

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

List of all members.

Classes

class  ExtInfo

Public Member Functions

QualType getResultType () const
bool getHasRegParm () const
unsigned getRegParmType () const
bool getNoReturnAttr () const
CallingConv getCallConv () const
ExtInfo getExtInfo () const
QualType getCallResultType (ASTContext &Context) const
 Determine the type of an expression that calls a function of this type.

Static Public Member Functions

static StringRef getNameForCallConv (CallingConv CC)
static bool classof (const Type *T)
static bool classof (const FunctionType *)

Protected Member Functions

 FunctionType (TypeClass tc, QualType res, bool variadic, unsigned typeQuals, RefQualifierKind RefQualifier, QualType Canonical, bool Dependent, bool InstantiationDependent, bool VariablyModified, bool ContainsUnexpandedParameterPack, ExtInfo Info)
bool isVariadic () const
unsigned getTypeQuals () const
RefQualifierKind getRefQualifier () const

Detailed Description

FunctionType - C99 6.7.5.3 - Function Declarators. This is the common base class of FunctionNoProtoType and FunctionProtoType.

Definition at line 2505 of file Type.h.


Constructor & Destructor Documentation

clang::FunctionType::FunctionType ( TypeClass  tc,
QualType  res,
bool  variadic,
unsigned  typeQuals,
RefQualifierKind  RefQualifier,
QualType  Canonical,
bool  Dependent,
bool  InstantiationDependent,
bool  VariablyModified,
bool  ContainsUnexpandedParameterPack,
ExtInfo  Info 
) [inline, protected]

Definition at line 2618 of file Type.h.


Member Function Documentation

static bool clang::FunctionType::classof ( const Type T) [inline, static]

Reimplemented from clang::Type.

Reimplemented in clang::FunctionProtoType, and clang::FunctionNoProtoType.

Definition at line 2657 of file Type.h.

References clang::Type::getTypeClass().

static bool clang::FunctionType::classof ( const FunctionType ) [inline, static]

Definition at line 2661 of file Type.h.

CallingConv clang::FunctionType::getCallConv ( ) const [inline]

Definition at line 2646 of file Type.h.

Referenced by handleFunctionTypeAttr().

QualType clang::FunctionType::getCallResultType ( ASTContext Context) const [inline]

Determine the type of an expression that calls a function of this type.

Definition at line 2651 of file Type.h.

References clang::QualType::getNonLValueExprType().

Referenced by clang::Sema::BuildCallToMemberFunction(), and clang::Sema::BuildResolvedCallExpr().

ExtInfo clang::FunctionType::getExtInfo ( ) const [inline]
bool clang::FunctionType::getHasRegParm ( ) const [inline]

Definition at line 2643 of file Type.h.

Referenced by handleFunctionTypeAttr().

StringRef FunctionType::getNameForCallConv ( CallingConv  CC) [static]
bool clang::FunctionType::getNoReturnAttr ( ) const [inline]
RefQualifierKind clang::FunctionType::getRefQualifier ( ) const [inline, protected]

Reimplemented in clang::FunctionProtoType.

Definition at line 2635 of file Type.h.

Referenced by clang::FunctionProtoType::getRefQualifier().

unsigned clang::FunctionType::getRegParmType ( ) const [inline]

Definition at line 2644 of file Type.h.

Referenced by clang::Sema::MergeFunctionDecl().

QualType clang::FunctionType::getResultType ( ) const [inline]

Definition at line 2641 of file Type.h.

Referenced by clang::Sema::ActOnBlockArguments(), clang::Sema::ActOnBlockStmtExpr(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnStartOfLambdaDefinition(), addAssociatedClassesAndNamespaces(), clang::ASTContext::adjustFunctionType(), clang::Sema::BuildCallToMemberFunction(), clang::Sema::BuildDeclarationNameExpr(), clang::Sema::BuildResolvedCallExpr(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::CheckConversionDeclarator(), clang::Sema::CheckEquivalentExceptionSpec(), clang::Sema::CheckParamExceptionSpec(), computeCachedProperties(), clang::PredefinedExpr::ComputeName(), clang::CodeCompleteConsumer::OverloadCandidate::CreateSignatureString(), clang::Sema::DeclareInheritedConstructors(), DeduceTemplateArgumentsByTypeMatch(), FormatFunctionParameter(), clang::Sema::GatherArgumentsForCall(), clang::CodeGen::CodeGenFunction::GenerateBlockFunction(), clang::CallExpr::getCallReturnType(), GetFullTypeForDeclarator(), clang::CodeGen::CodeGenTypes::getFunctionInfo(), clang::ASTContext::getObjCEncodingForBlock(), clang::Sema::HandleFunctionTypeMismatch(), clang::TemplateDeclInstantiator::InitFunctionInstantiation(), isAtLeastAsSpecializedAs(), clang::Sema::IsBlockPointerConversion(), clang::Sema::isExprCallable(), clang::CodeGen::CodeGenTypes::isFuncTypeConvertible(), clang::Sema::isObjCPointerConversion(), clang::Sema::IsOverload(), IsStructurallyEquivalent(), MarkUsedTemplateParameters(), clang::Sema::MergeFunctionDecl(), clang::ASTContext::mergeFunctionTypes(), clang::FunctionProtoType::Profile(), clang::Sema::SubstituteExplicitTemplateArguments(), clang::ASTNodeImporter::VisitFunctionNoProtoType(), and clang::ASTNodeImporter::VisitFunctionProtoType().

unsigned clang::FunctionType::getTypeQuals ( ) const [inline, protected]

Reimplemented in clang::FunctionProtoType.

Definition at line 2633 of file Type.h.

Referenced by clang::FunctionProtoType::getTypeQuals().

bool clang::FunctionType::isVariadic ( ) const [inline, protected]

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