1 // testdoublens.cpp --- semantic-ia-utest completion engine unit tests
3 // Copyright (C) 2008-2013 Free Software Foundation, Inc.
5 // Author: Eric M. Ludlam <eric@siege-engine.com>
7 // This file is part of GNU Emacs.
9 // GNU Emacs is free software: you can redistribute it and/or modify
10 // it under the terms of the GNU General Public License as published by
11 // the Free Software Foundation, either version 3 of the License, or
12 // (at your option) any later version.
14 // GNU Emacs is distributed in the hope that it will be useful,
15 // but WITHOUT ANY WARRANTY; without even the implied warranty of
16 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 // GNU General Public License for more details.
19 // You should have received a copy of the GNU General Public License
20 // along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
22 #include "testdoublens.hpp"
30 // #1# ( "pMumble" "publishStuff" )
37 // #2# ( "pMumble" "publishStuff" )
42 void Foo::publishStuff(int /* a */, int /* b */) // ^2^
46 void Foo::sendStuff(int /* a */, int /* b */) // ^3^
53 // Test multiple levels of metatype expansion
58 // #3# ( "Mumble" "get" )
65 // @TODO - get this working...
66 Name1::stage2_Foo::M
//-5-
71 stage3_Foo
foo_fcn() {
72 // Can we go "up" to foo with senator-go-to-up-reference?
76 // Second test from Ravikiran Rajagopal
95 myFoo
.// -6- <--- cursor is here after the dot
101 // Double namespace example from Hannu Koivisto
103 // This is tricky because the parent class "Foo" is found within the
104 // scope of B, so the scope calculation needs to put that together
105 // before searching for parents in scope.
109 class Bar
: public Foo
124 // Three namespace example from Hannu Koivisto
126 // This one is special in that the name e::Foo, where "e" is in
127 // the scope, and not referenced from the global namespace. This
128 // wasn't previously handled, so the fullscope needed to be added
129 // to the list of things searched when in split-name decent search mode