History log of /external/clang/include/clang/AST/StmtIterator.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7a3a8148ab21dba3965622b03969bae721d561e2 26-Apr-2011 NAKAMURA Takumi <geek4civic@gmail.com> include/clang/AST/StmtIterator.h: std::pair should be provided by <utility>. libcxx needs it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130183 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
7502c1d3ce8bb97bcc4f7bebef507040bd93b26f 13-Feb-2011 John McCall <rjmccall@apple.com> Give some convenient idiomatic accessors to Stmt::child_range and
Stmt::const_child_range, then make a bunch of places use them instead
of the individual iterator accessors.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
63c00d7f35fa060c0a446c9df3a4402d9c7757fe 09-Feb-2011 John McCall <rjmccall@apple.com> Remove vtables from the Stmt hierarchy; this was pretty easy as
there were only three virtual methods of any significance.

The primary way to grab child iterators now is with
Stmt::child_range children();
Stmt::const_child_range children() const;
where a child_range is just a std::pair of iterators suitable for
being llvm::tie'd to some locals. I've left the old child_begin()
and child_end() accessors in place, but it's probably a substantial
penalty to grab the iterators individually now, since the
switch-based dispatch is kindof inherently slower than vtable
dispatch. Grabbing them together is probably a slight win over the
status quo, although of course we could've achieved that with vtables, too.

I also reclassified SwitchCase (correctly) as an abstract Stmt
class, which (as the first such class that wasn't an Expr subclass)
required some fiddling in a few places.

There are somewhat gross metaprogramming hooks in place to ensure
that new statements/expressions continue to implement
getSourceRange() and children(). I had to work around a recent clang
bug; dgregor actually fixed it already, but I didn't want to
introduce a selfhosting dependency on ToT.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125183 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
f4c7371fb1d3cebcfb40abad4537bb82515704ea 19-Jan-2011 John McCall <rjmccall@apple.com> Change QualType::getTypePtr() to return a const pointer, then change a
thousand other things which were (generally inadvertantly) relying on that.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123814 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
03013fa9a0bf1ef4b907f5fec006c8f4000fdd21 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Merge System into Support.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120297 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
ea3fe7c72b73ae09070ced4dc12ddbfbd29c0b1a 15-Jun-2010 Daniel Dunbar <daniel@zuster.org> Add <cstddef> include to get ptrdiff_t, for gcc-4.6; patch by Dimitry Andric.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105995 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
35628d1f17c817f8c240208db7ba490e3109981b 24-Dec-2009 Ted Kremenek <kremenek@apple.com> Add StmtIterator support for iterating over both the condition
variable initializer and the other expressions in an IfStmt.

This change required adding a 'DoDestroy()' method for IfStmt that did
not include destroying the initializer (since that is owned by the
VarDecl).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92089 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
b03f630a5d4256220ac48a6f04b765c34c9e8993 23-Dec-2009 Ted Kremenek <kremenek@apple.com> Increase StmtIterator size by one pointer (separating out the Stmt** from the union including Decl* and Decl**).
This change is setup for adding StmtIterator support for condition variables in IfStmt, WhileStmt, etc.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
9f8eb2032030482b1d3de86e9bee725d93564302 26-Oct-2009 Chandler Carruth <chandlerc@gmail.com> Update location of DataTypes.h to reflect move in LLVM with r85086.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
1eb4433ac451dc16f4133a88af2d002ac26c58ef 09-Sep-2009 Mike Stump <mrs@apple.com> Remove tabs, and whitespace cleanups.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
f5afb5e1fa1877a4adf3328e5be31b2f959d82eb 27-Aug-2009 Gabor Greif <ggreif@gmail.com> iterator.h is no more. Be standards compliant.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80225 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
852157601505e0a641f1b66c9e2fb028f77bb7d1 05-Mar-2009 Eli Friedman <eli.friedman@gmail.com> Use LLVM type header rather than using stdint.h directly.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66111 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
3daed52a57d03765223021f5f921bdc280c8f3cc 02-Mar-2009 Chris Lattner <sabre@nondot.org> improve compatibility with GCC 4.4, patch by Michel Salim (PR3697)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
4afa39deaa245592977136d367251ee2c173dd8d 20-Jan-2009 Douglas Gregor <dgregor@apple.com> Remove ScopedDecl, collapsing all of its functionality into Decl, so
that every declaration lives inside a DeclContext.

Moved several things that don't have names but were ScopedDecls (and,
therefore, NamedDecls) to inherit from Decl rather than NamedDecl,
including ObjCImplementationDecl and LinkageSpecDecl. Now, we don't
store empty DeclarationNames for these things, nor do we try to insert
them into DeclContext's lookup structure.

The serialization tests are temporarily disabled. We'll re-enable them
once we've sorted out the remaining ownership/serialiazation issues
between DeclContexts and TranslationUnion, DeclGroups, etc.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62562 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
3e6d1203b3346147cee51a8a6d374f1867f2cd23 08-Oct-2008 Ted Kremenek <kremenek@apple.com> Add StmtIterator support for DeclGroups.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57271 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
525204a7ca5c3c0aac8166d8f27abb988a84c850 29-May-2008 Anton Korobeynikov <asl@math.spbu.ru> Update to follow recent LLVM changes


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51689 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
0bc735ffcfb223c0186419547abaa5c84482663e 29-Dec-2007 Chris Lattner <sabre@nondot.org> Don't attribute in file headers anymore. See llvmdev for the
discussion of this change.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45410 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
f816f77480e70caadfdbd741cf17d84a6be30b71 15-Dec-2007 Ted Kremenek <kremenek@apple.com> Removed "isSizeOfExpr" mode from StmtIterator. It turned out not to be
so useful and introduced a few bugs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45051 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
b51d2b2d5497693783338c58dd778b6427e85ba7 15-Dec-2007 Ted Kremenek <kremenek@apple.com> Added "mode" to StmtIterator to record if the expression being iterated
over is the subexpression of a sizeof(expression). Different clients
will wish to handle iteration over such subexpressions differently, and can
now easily query if they are iterating over such statements using the
StmtIterator's inSizeOfExpr().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
699e9fbeae34cdd651b8e6308649c8939f090cbd 14-Dec-2007 Ted Kremenek <kremenek@apple.com> Added support to StmtIterator to traverse the size expression of a VLA type
declared in a sizeof. For example:

sizeof(int[foo()]);

the expression "foo()" is an expression that is executed during the evaluation
of sizeof.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45043 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
481038b5f37b77d7aa24c3ed5a751bc9c37e32e6 29-Oct-2007 Hartmut Kaiser <hartmut.kaiser@gmail.com> Added a missing #include.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43477 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
92866e2e90f6d93fb95e25a7ac4438e239d89ce6 29-Oct-2007 Ted Kremenek <kremenek@apple.com> Modified StmtIterator to support iteration over the size expressions
of VariableTypeArray types that appear in DeclStmts.

Removed operator-- from StmtIterator. operator-- added undesired
complexity, and we have no consumers of it.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43471 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
65f31e451c8d631f0e76cb9c8935465d68830cb1 29-Oct-2007 Ted Kremenek <kremenek@apple.com> Renamed internal variables of StmtIteratorBase to make the code
slightly more succinct.

Introduced VariableArrayType* within StmtIteratorBase to (soon)
support iteration over the size expressions of variable length arrays.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43455 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
b990f1834b4ba1c8e67ace010b0f554d0e59c1ea 26-Oct-2007 Ted Kremenek <kremenek@apple.com> Modified StmtIterator to now include visiting the initialization expression for EnumConstantDecls.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
22c0fcba14e069bd3d35305ecd6d952f41666610 24-Oct-2007 Ted Kremenek <kremenek@apple.com> Modified operator* for StmtIterator to return Stmt*& instead of Stmt*.
This permits in-place replacement of the original AST statements.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43295 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
9ac5928abeb3a47592201e1c30fe2930c20a507e 19-Oct-2007 Ted Kremenek <kremenek@apple.com> Fixed DeclStmt::child_begin() to actually create an iterator that
visits its decls, rather than just creating an "end()" iterator.

Fixed child_end() for statements and expressions to use
child_iterator() to create the end() iterator, rather than just
returning NULL.

Fixed bug in StmtIterator where we did not correctly detect if we had
marched off the end of the ScopedDecls.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43156 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
c325e7f51b4c92efd711b8ad289ec16da8cd64f0 18-Oct-2007 Ted Kremenek <kremenek@apple.com> Refactored StmtIterator into classes StmtIteratorBase (non-templated)
and StmtIteratorImpl (templated), which StmtIterator and
ConstStmtIterator now succintly subclass.

Implemented iteration over the initializers in DeclStmts. This is not
thoroughly tested, so there may be bugs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43138 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h
9caf8b1ca6beb254f420dada3c0e94d5ef027f58 18-Oct-2007 Ted Kremenek <kremenek@apple.com> Implemented 90% functionality of new child_iterator for Stmt objects
that will (soon) allow iteration over the initializers in
declarations. This new iterator mechanism is implemented by the
classes StmtIterator and ConstStmtIterator.

Patched a few files to use "operator++" instead of "operator+" on
child_iterators.

Friendship added in VarDecl to StmtIterator to allow returning a
reference to the initializer within the VarDecl. We may not wish this
as a permanent solution.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/AST/StmtIterator.h