class CXXStaticCastExpr

Declaration

class CXXStaticCastExpr : public CXXNamedCastExpr,
                          private TrailingObjects { /* full declaration omitted */ };

Description

A C++ \c static_cast expression (C++ [expr.static.cast]). This expression node represents a C++ static cast, e.g.,\c static_cast<int>(1.0).

Declared at: clang/include/clang/AST/ExprCXX.h:431

Inherits from: CXXNamedCastExpr, TrailingObjects

Member Variables

Inherited from Stmt:

protected

Method Overview

  • private CXXStaticCastExpr(clang::QualType ty, clang::ExprValueKind vk, clang::CastKind kind, clang::Expr * op, unsigned int pathSize, clang::TypeSourceInfo * writtenTy, clang::FPOptionsOverride FPO, clang::SourceLocation l, clang::SourceLocation RParenLoc, clang::SourceRange AngleBrackets)
  • private CXXStaticCastExpr(clang::Stmt::EmptyShell Empty, unsigned int PathSize, bool HasFPFeatures)
  • public static clang::CXXStaticCastExpr * Create(const clang::ASTContext & Context, clang::QualType T, clang::ExprValueKind VK, clang::CastKind K, clang::Expr * Op, const clang::CXXCastPath * Path, clang::TypeSourceInfo * Written, clang::FPOptionsOverride FPO, clang::SourceLocation L, clang::SourceLocation RParenLoc, clang::SourceRange AngleBrackets)
  • public static clang::CXXStaticCastExpr * CreateEmpty(const clang::ASTContext & Context, unsigned int PathSize, bool hasFPFeatures)
  • public static bool classof(const clang::Stmt * T)
  • private unsigned int numTrailingObjects(OverloadToken<clang::CXXBaseSpecifier *>) const

Inherited from CXXNamedCastExpr:

Inherited from ExplicitCastExpr:

Inherited from CastExpr:

Inherited from Expr:

Inherited from ValueStmt:

Inherited from Stmt:

Methods

CXXStaticCastExpr(
    clang::QualType ty,
    clang::ExprValueKind vk,
    clang::CastKind kind,
    clang::Expr* op,
    unsigned int pathSize,
    clang::TypeSourceInfo* writtenTy,
    clang::FPOptionsOverride FPO,
    clang::SourceLocation l,
    clang::SourceLocation RParenLoc,
    clang::SourceRange AngleBrackets)

Declared at: clang/include/clang/AST/ExprCXX.h:435

Parameters

clang::QualType ty
clang::ExprValueKind vk
clang::CastKind kind
clang::Expr* op
unsigned int pathSize
clang::TypeSourceInfo* writtenTy
clang::FPOptionsOverride FPO
clang::SourceLocation l
clang::SourceLocation RParenLoc
clang::SourceRange AngleBrackets

CXXStaticCastExpr(clang::Stmt::EmptyShell Empty,
                  unsigned int PathSize,
                  bool HasFPFeatures)

Declared at: clang/include/clang/AST/ExprCXX.h:446

Parameters

clang::Stmt::EmptyShell Empty
unsigned int PathSize
bool HasFPFeatures

static clang::CXXStaticCastExpr* Create(
    const clang::ASTContext& Context,
    clang::QualType T,
    clang::ExprValueKind VK,
    clang::CastKind K,
    clang::Expr* Op,
    const clang::CXXCastPath* Path,
    clang::TypeSourceInfo* Written,
    clang::FPOptionsOverride FPO,
    clang::SourceLocation L,
    clang::SourceLocation RParenLoc,
    clang::SourceRange AngleBrackets)

Declared at: clang/include/clang/AST/ExprCXX.h:460

Parameters

const clang::ASTContext& Context
clang::QualType T
clang::ExprValueKind VK
clang::CastKind K
clang::Expr* Op
const clang::CXXCastPath* Path
clang::TypeSourceInfo* Written
clang::FPOptionsOverride FPO
clang::SourceLocation L
clang::SourceLocation RParenLoc
clang::SourceRange AngleBrackets

static clang::CXXStaticCastExpr* CreateEmpty(
    const clang::ASTContext& Context,
    unsigned int PathSize,
    bool hasFPFeatures)

Declared at: clang/include/clang/AST/ExprCXX.h:464

Parameters

const clang::ASTContext& Context
unsigned int PathSize
bool hasFPFeatures

static bool classof(const clang::Stmt* T)

Declared at: clang/include/clang/AST/ExprCXX.h:467

Parameters

const clang::Stmt* T

unsigned int numTrailingObjects(
    OverloadToken<clang::CXXBaseSpecifier*>) const

Declared at: clang/include/clang/AST/ExprCXX.h:451

Parameters

OverloadToken<clang::CXXBaseSpecifier*>