diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2013-11-23 01:40:07 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2013-11-23 01:40:07 +0000 |
commit | e6d601f912ea8fb367204f342f799196782195dd (patch) | |
tree | 47ba929bdd14cc63ece2e611efe7e0617a66eb3e /unittests/AST/ASTTypeTraitsTest.cpp | |
parent | d654f6b47211cac43d082aaf2995e8ff68f5f3a9 (diff) | |
download | clang-e6d601f912ea8fb367204f342f799196782195dd.tar.gz clang-e6d601f912ea8fb367204f342f799196782195dd.tar.bz2 clang-e6d601f912ea8fb367204f342f799196782195dd.tar.xz |
Add Distance parameter to ASTNodeKind::isBaseOf.
This will allow the completer to order results by relevance.
Differential Revision: http://llvm-reviews.chandlerc.com/D2209
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195540 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'unittests/AST/ASTTypeTraitsTest.cpp')
-rw-r--r-- | unittests/AST/ASTTypeTraitsTest.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/unittests/AST/ASTTypeTraitsTest.cpp b/unittests/AST/ASTTypeTraitsTest.cpp index dd73b52206..634577c5e8 100644 --- a/unittests/AST/ASTTypeTraitsTest.cpp +++ b/unittests/AST/ASTTypeTraitsTest.cpp @@ -34,6 +34,19 @@ TEST(ASTNodeKind, Bases) { EXPECT_TRUE(DNT<Decl>().isSame(DNT<Decl>())); } +TEST(ASTNodeKind, BaseDistances) { + unsigned Distance = 1; + EXPECT_TRUE(DNT<Expr>().isBaseOf(DNT<Expr>(), &Distance)); + EXPECT_EQ(0u, Distance); + + EXPECT_TRUE(DNT<Stmt>().isBaseOf(DNT<IfStmt>(), &Distance)); + EXPECT_EQ(1u, Distance); + + Distance = 3; + EXPECT_TRUE(DNT<DeclaratorDecl>().isBaseOf(DNT<ParmVarDecl>(), &Distance)); + EXPECT_EQ(2u, Distance); +} + TEST(ASTNodeKind, SameBase) { EXPECT_TRUE(DNT<Expr>().isBaseOf(DNT<CallExpr>())); EXPECT_TRUE(DNT<Expr>().isBaseOf(DNT<BinaryOperator>())); |