clang API Documentation

Public Member Functions | Static Public Member Functions | Friends
clang::ObjCPropertyRefExpr Class Reference

#include <ExprObjC.h>

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

List of all members.

Public Member Functions

 ObjCPropertyRefExpr (ObjCPropertyDecl *PD, QualType t, ExprValueKind VK, ExprObjectKind OK, SourceLocation l, Expr *base)
 ObjCPropertyRefExpr (ObjCPropertyDecl *PD, QualType t, ExprValueKind VK, ExprObjectKind OK, SourceLocation l, SourceLocation sl, QualType st)
 ObjCPropertyRefExpr (ObjCMethodDecl *Getter, ObjCMethodDecl *Setter, QualType T, ExprValueKind VK, ExprObjectKind OK, SourceLocation IdLoc, Expr *Base)
 ObjCPropertyRefExpr (ObjCMethodDecl *Getter, ObjCMethodDecl *Setter, QualType T, ExprValueKind VK, ExprObjectKind OK, SourceLocation IdLoc, SourceLocation SuperLoc, QualType SuperTy)
 ObjCPropertyRefExpr (ObjCMethodDecl *Getter, ObjCMethodDecl *Setter, QualType T, ExprValueKind VK, ExprObjectKind OK, SourceLocation IdLoc, SourceLocation ReceiverLoc, ObjCInterfaceDecl *Receiver)
 ObjCPropertyRefExpr (EmptyShell Empty)
bool isImplicitProperty () const
bool isExplicitProperty () const
ObjCPropertyDeclgetExplicitProperty () const
ObjCMethodDeclgetImplicitPropertyGetter () const
ObjCMethodDeclgetImplicitPropertySetter () const
Selector getGetterSelector () const
Selector getSetterSelector () const
bool isMessagingGetter () const
 True if the property reference will result in a message to the getter. This applies to both implicit and explicit property references.
bool isMessagingSetter () const
 True if the property reference will result in a message to the setter. This applies to both implicit and explicit property references.
void setIsMessagingGetter (bool val=true)
void setIsMessagingSetter (bool val=true)
const ExprgetBase () const
ExprgetBase ()
SourceLocation getLocation () const
SourceLocation getReceiverLocation () const
QualType getSuperReceiverType () const
QualType getGetterResultType () const
QualType getSetterArgType () const
ObjCInterfaceDeclgetClassReceiver () const
bool isObjectReceiver () const
bool isSuperReceiver () const
bool isClassReceiver () const
SourceRange getSourceRange () const LLVM_READONLY
child_range children ()

Static Public Member Functions

static bool classof (const Stmt *T)
static bool classof (const ObjCPropertyRefExpr *)

Friends

class ASTStmtReader
class ASTStmtWriter

Detailed Description

ObjCPropertyRefExpr - A dot-syntax expression to access an ObjC property.

Definition at line 512 of file ExprObjC.h.


Constructor & Destructor Documentation

clang::ObjCPropertyRefExpr::ObjCPropertyRefExpr ( ObjCPropertyDecl PD,
QualType  t,
ExprValueKind  VK,
ExprObjectKind  OK,
SourceLocation  l,
Expr base 
) [inline]

Definition at line 546 of file ExprObjC.h.

clang::ObjCPropertyRefExpr::ObjCPropertyRefExpr ( ObjCPropertyDecl PD,
QualType  t,
ExprValueKind  VK,
ExprObjectKind  OK,
SourceLocation  l,
SourceLocation  sl,
QualType  st 
) [inline]

Definition at line 558 of file ExprObjC.h.

clang::ObjCPropertyRefExpr::ObjCPropertyRefExpr ( ObjCMethodDecl Getter,
ObjCMethodDecl Setter,
QualType  T,
ExprValueKind  VK,
ExprObjectKind  OK,
SourceLocation  IdLoc,
Expr Base 
) [inline]

Definition at line 569 of file ExprObjC.h.

clang::ObjCPropertyRefExpr::ObjCPropertyRefExpr ( ObjCMethodDecl Getter,
ObjCMethodDecl Setter,
QualType  T,
ExprValueKind  VK,
ExprObjectKind  OK,
SourceLocation  IdLoc,
SourceLocation  SuperLoc,
QualType  SuperTy 
) [inline]

Definition at line 580 of file ExprObjC.h.

clang::ObjCPropertyRefExpr::ObjCPropertyRefExpr ( ObjCMethodDecl Getter,
ObjCMethodDecl Setter,
QualType  T,
ExprValueKind  VK,
ExprObjectKind  OK,
SourceLocation  IdLoc,
SourceLocation  ReceiverLoc,
ObjCInterfaceDecl Receiver 
) [inline]

Definition at line 590 of file ExprObjC.h.

clang::ObjCPropertyRefExpr::ObjCPropertyRefExpr ( EmptyShell  Empty) [inline, explicit]

Definition at line 600 of file ExprObjC.h.


Member Function Documentation

child_range clang::ObjCPropertyRefExpr::children ( ) [inline]

Reimplemented from clang::Stmt.

Definition at line 721 of file ExprObjC.h.

static bool clang::ObjCPropertyRefExpr::classof ( const Stmt T) [inline, static]

Reimplemented from clang::Expr.

Definition at line 715 of file ExprObjC.h.

References clang::Stmt::getStmtClass().

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

Definition at line 718 of file ExprObjC.h.

const Expr* clang::ObjCPropertyRefExpr::getBase ( ) const [inline]
Expr* clang::ObjCPropertyRefExpr::getBase ( ) [inline]

Definition at line 658 of file ExprObjC.h.

ObjCInterfaceDecl* clang::ObjCPropertyRefExpr::getClassReceiver ( ) const [inline]

Definition at line 702 of file ExprObjC.h.

Referenced by LookupMethodInReceiverType().

ObjCPropertyDecl* clang::ObjCPropertyRefExpr::getExplicitProperty ( ) const [inline]
QualType clang::ObjCPropertyRefExpr::getGetterResultType ( ) const [inline]
Selector clang::ObjCPropertyRefExpr::getGetterSelector ( ) const [inline]

Definition at line 621 of file ExprObjC.h.

ObjCMethodDecl* clang::ObjCPropertyRefExpr::getImplicitPropertyGetter ( ) const [inline]

Definition at line 611 of file ExprObjC.h.

ObjCMethodDecl* clang::ObjCPropertyRefExpr::getImplicitPropertySetter ( ) const [inline]

Definition at line 616 of file ExprObjC.h.

SourceLocation clang::ObjCPropertyRefExpr::getLocation ( ) const [inline]

Definition at line 662 of file ExprObjC.h.

Referenced by findRetainCycleOwner().

SourceLocation clang::ObjCPropertyRefExpr::getReceiverLocation ( ) const [inline]
QualType clang::ObjCPropertyRefExpr::getSetterArgType ( ) const [inline]
Selector clang::ObjCPropertyRefExpr::getSetterSelector ( ) const [inline]

Definition at line 627 of file ExprObjC.h.

SourceRange clang::ObjCPropertyRefExpr::getSourceRange ( ) const [inline]

SourceLocation tokens are not useful in isolation - they are low level value objects created/interpreted by SourceManager. We assume AST clients will have a pointer to the respective SourceManager.

Reimplemented from clang::Stmt.

Definition at line 709 of file ExprObjC.h.

References clang::Stmt::getLocStart().

Referenced by findRetainCycleOwner(), and clang::ento::ObjCMessage::getSourceRange().

QualType clang::ObjCPropertyRefExpr::getSuperReceiverType ( ) const [inline]

Definition at line 665 of file ExprObjC.h.

Referenced by IsReadonlyProperty(), and LookupMethodInReceiverType().

bool clang::ObjCPropertyRefExpr::isClassReceiver ( ) const [inline]

Definition at line 707 of file ExprObjC.h.

Referenced by LookupMethodInReceiverType().

bool clang::ObjCPropertyRefExpr::isExplicitProperty ( ) const [inline]

Definition at line 604 of file ExprObjC.h.

bool clang::ObjCPropertyRefExpr::isImplicitProperty ( ) const [inline]
bool clang::ObjCPropertyRefExpr::isMessagingGetter ( ) const [inline]

True if the property reference will result in a message to the getter. This applies to both implicit and explicit property references.

Definition at line 636 of file ExprObjC.h.

bool clang::ObjCPropertyRefExpr::isMessagingSetter ( ) const [inline]

True if the property reference will result in a message to the setter. This applies to both implicit and explicit property references.

Definition at line 643 of file ExprObjC.h.

bool clang::ObjCPropertyRefExpr::isObjectReceiver ( ) const [inline]
bool clang::ObjCPropertyRefExpr::isSuperReceiver ( ) const [inline]
void clang::ObjCPropertyRefExpr::setIsMessagingGetter ( bool  val = true) [inline]

Definition at line 647 of file ExprObjC.h.

void clang::ObjCPropertyRefExpr::setIsMessagingSetter ( bool  val = true) [inline]

Definition at line 651 of file ExprObjC.h.


Friends And Related Function Documentation

friend class ASTStmtReader [friend]

Reimplemented from clang::Stmt.

Definition at line 730 of file ExprObjC.h.

friend class ASTStmtWriter [friend]

Reimplemented from clang::Stmt.

Definition at line 731 of file ExprObjC.h.


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