blob: 0646823af9ce7a1617398c127ab5ef632388ee46 [file] [log] [blame]
Ted Kremeneka758d092007-08-24 20:21:10 +00001//===--- ExprCXX.cpp - (C++) Expression AST Node Implementation -----------===//
2//
3// The LLVM Compiler Infrastructure
4//
Chris Lattner0bc735f2007-12-29 19:59:25 +00005// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
Ted Kremeneka758d092007-08-24 20:21:10 +00007//
8//===----------------------------------------------------------------------===//
9//
10// This file implements the subclesses of Expr class declared in ExprCXX.h
11//
12//===----------------------------------------------------------------------===//
13
14#include "clang/AST/ExprCXX.h"
15using namespace clang;
16
17//===----------------------------------------------------------------------===//
18// Child Iterators for iterating over subexpressions/substatements
19//===----------------------------------------------------------------------===//
20
21
22// CXXCastExpr
23Stmt::child_iterator CXXCastExpr::child_begin() {
24 return reinterpret_cast<Stmt**>(&Op);
25}
26
27Stmt::child_iterator CXXCastExpr::child_end() {
Ted Kremenek401aa7b2007-10-18 18:17:43 +000028 return reinterpret_cast<Stmt**>(&Op)+1;
Ted Kremeneka758d092007-08-24 20:21:10 +000029}
30
31// CXXBoolLiteralExpr
Ted Kremenek9ac59282007-10-18 23:28:49 +000032Stmt::child_iterator CXXBoolLiteralExpr::child_begin() {
33 return child_iterator();
34}
35Stmt::child_iterator CXXBoolLiteralExpr::child_end() {
36 return child_iterator();
37}