xref: /Universal-ctags/Units/parser-cxx.r/template-specializations.d/expected.tags (revision a22956a314b4dfff7baf76fca3d0b036b1930ac4)
1A	input.cpp	/^struct A {$/;"	s	file:	template:<typename T>
2T	input.cpp	/^template<typename T>$/;"	Z	struct:A	typeref:meta:typename
3f	input.cpp	/^    void f(T); \/\/ member, declared in the primary template$/;"	p	struct:A	typeref:typename:void	file:	signature:(T)
4__anonc12ce61d010d	input.cpp	/^    void f(T); \/\/ member, declared in the primary template$/;"	z	prototype:A::f	typeref:typename:T	file:
5h	input.cpp	/^    void h(T) {} \/\/ member, defined in the primary template$/;"	f	struct:A	typeref:typename:void	file:	signature:(T)
6__anonc12ce61d020d	input.cpp	/^    void h(T) {} \/\/ member, defined in the primary template$/;"	z	function:A::h	typeref:typename:T	file:
7g1	input.cpp	/^    template<class X1> void g1(T, X1); \/\/ member template$/;"	p	struct:A	typeref:typename:void	file:	signature:(T,X1)	template:<class X1>
8X1	input.cpp	/^    template<class X1> void g1(T, X1); \/\/ member template$/;"	Z	prototype:A::g1	typeref:meta:class
9__anonc12ce61d030d	input.cpp	/^    template<class X1> void g1(T, X1); \/\/ member template$/;"	z	prototype:A::g1	typeref:typename:T	file:
10__anonc12ce61d040d	input.cpp	/^    template<class X1> void g1(T, X1); \/\/ member template$/;"	z	prototype:A::g1	typeref:typename:X1	file:
11g2	input.cpp	/^    template<class X2> void g2(T, X2); \/\/ member template$/;"	p	struct:A	typeref:typename:void	file:	signature:(T,X2)	template:<class X2>
12X2	input.cpp	/^    template<class X2> void g2(T, X2); \/\/ member template$/;"	Z	prototype:A::g2	typeref:meta:class
13__anonc12ce61d050d	input.cpp	/^    template<class X2> void g2(T, X2); \/\/ member template$/;"	z	prototype:A::g2	typeref:typename:T	file:
14__anonc12ce61d060d	input.cpp	/^    template<class X2> void g2(T, X2); \/\/ member template$/;"	z	prototype:A::g2	typeref:typename:X2	file:
15f	input.cpp	/^template<> void A<int>::f(int);$/;"	p	class:A	typeref:typename:void	file:	signature:(int)	template:<>	properties:scopespecialization,specialization
16__anonc12ce61d070d	input.cpp	/^template<> void A<int>::f(int);$/;"	z	prototype:A::f	typeref:typename:int	file:
17h	input.cpp	/^template<> void A<int>::h(int) {}$/;"	f	class:A	typeref:typename:void	signature:(int)	template:<>	properties:scopespecialization,specialization
18__anonc12ce61d080d	input.cpp	/^template<> void A<int>::h(int) {}$/;"	z	function:A::h	typeref:typename:int	file:
19g1	input.cpp	/^template<class X1> void A<T>::g1(T, X1) { }$/;"	f	class:A	typeref:typename:void	signature:(T,X1)	template:<class X1>	properties:scopespecialization,specialization
20X1	input.cpp	/^template<class X1> void A<T>::g1(T, X1) { }$/;"	Z	function:A::g1	typeref:meta:class
21__anonc12ce61d090d	input.cpp	/^template<class X1> void A<T>::g1(T, X1) { }$/;"	z	function:A::g1	typeref:typename:T	file:
22__anonc12ce61d0a0d	input.cpp	/^template<class X1> void A<T>::g1(T, X1) { }$/;"	z	function:A::g1	typeref:typename:X1	file:
23g1	input.cpp	/^template<class X1> void A<int>::g1(int, X1);$/;"	p	class:A	typeref:typename:void	file:	signature:(int,X1)	template:<class X1>	properties:scopespecialization,specialization
24X1	input.cpp	/^template<class X1> void A<int>::g1(int, X1);$/;"	Z	prototype:A::g1	typeref:meta:class
25__anonc12ce61d0b0d	input.cpp	/^template<class X1> void A<int>::g1(int, X1);$/;"	z	prototype:A::g1	typeref:typename:int	file:
26__anonc12ce61d0c0d	input.cpp	/^template<class X1> void A<int>::g1(int, X1);$/;"	z	prototype:A::g1	typeref:typename:X1	file:
27g2	input.cpp	/^template<> void A<int>::g2<char>(int, char); \/\/ for X2 = char$/;"	p	class:A	typeref:typename:void	file:	signature:(int,char)	template:<>	specialization:<char>	properties:scopespecialization,specialization
28__anonc12ce61d0d0d	input.cpp	/^template<> void A<int>::g2<char>(int, char); \/\/ for X2 = char$/;"	z	prototype:A::g2	typeref:typename:int	file:
29__anonc12ce61d0e0d	input.cpp	/^template<> void A<int>::g2<char>(int, char); \/\/ for X2 = char$/;"	z	prototype:A::g2	typeref:typename:char	file:
30g1	input.cpp	/^template<> void A<int>::g1(int, char);$/;"	p	class:A	typeref:typename:void	file:	signature:(int,char)	template:<>	properties:scopespecialization,specialization
31__anonc12ce61d0f0d	input.cpp	/^template<> void A<int>::g1(int, char);$/;"	z	prototype:A::g1	typeref:typename:int	file:
32__anonc12ce61d100d	input.cpp	/^template<> void A<int>::g1(int, char);$/;"	z	prototype:A::g1	typeref:typename:char	file:
33m	input.cpp	/^template<typename X> void m(X)$/;"	f	typeref:typename:void	signature:(X)	template:<typename X>
34X	input.cpp	/^template<typename X> void m(X)$/;"	Z	function:m	typeref:meta:typename
35__anonc12ce61d110d	input.cpp	/^template<typename X> void m(X)$/;"	z	function:m	typeref:typename:X	file:
36m	input.cpp	/^template<> void m<int>(int)$/;"	f	typeref:typename:void	signature:(int)	template:<>	specialization:<int>	properties:specialization
37__anonc12ce61d120d	input.cpp	/^template<> void m<int>(int)$/;"	z	function:m	typeref:typename:int	file:
38m	input.cpp	/^template<> void m<A<int>>(A<int> a)$/;"	f	typeref:typename:void	signature:(A<int> a)	template:<>	specialization:<A<int>>	properties:specialization
39a	input.cpp	/^template<> void m<A<int>>(A<int> a)$/;"	z	function:m	typeref:typename:A<int>	file:
40B	input.cpp	/^struct B { };$/;"	s	file:
41m	input.cpp	/^template<> void m<B>(B)$/;"	f	typeref:typename:void	signature:(B)	template:<>	specialization:<B>	properties:specialization
42__anonc12ce61d130d	input.cpp	/^template<> void m<B>(B)$/;"	z	function:m	typeref:typename:B	file:
43m	input.cpp	/^template<> void m(char)$/;"	f	typeref:typename:void	signature:(char)	template:<>	properties:specialization
44__anonc12ce61d140d	input.cpp	/^template<> void m(char)$/;"	z	function:m	typeref:typename:char	file:
45C	input.cpp	/^class C {};$/;"	c	file:	template:<class T1,class T2,int I>
46T1	input.cpp	/^template<class T1, class T2, int I>$/;"	Z	class:C	typeref:meta:class
47T2	input.cpp	/^template<class T1, class T2, int I>$/;"	Z	class:C	typeref:meta:class
48I	input.cpp	/^template<class T1, class T2, int I>$/;"	Z	class:C	typeref:typename:int
49C	input.cpp	/^class C<T, T*, I> {};$/;"	c	file:	template:<class T,int I>	specialization:<T,T *,I>
50T	input.cpp	/^template<class T, int I>$/;"	Z	class:C	typeref:meta:class
51I	input.cpp	/^template<class T, int I>$/;"	Z	class:C	typeref:typename:int
52C	input.cpp	/^class C<T*, T2, I> {};$/;"	c	file:	template:<class T,class T2,int I>	specialization:<T *,T2,I>
53T	input.cpp	/^template<class T, class T2, int I>$/;"	Z	class:C	typeref:meta:class
54T2	input.cpp	/^template<class T, class T2, int I>$/;"	Z	class:C	typeref:meta:class
55I	input.cpp	/^template<class T, class T2, int I>$/;"	Z	class:C	typeref:typename:int
56C	input.cpp	/^class C<int, T*, 5> {};$/;"	c	file:	template:<class T>	specialization:<int,T *,5>
57T	input.cpp	/^template<class T>$/;"	Z	class:C	typeref:meta:class
58C	input.cpp	/^class C<X, T*, I> {};$/;"	c	file:	template:<class X,class T,int I>	specialization:<X,T *,I>
59X	input.cpp	/^template<class X, class T, int I>$/;"	Z	class:C	typeref:meta:class
60T	input.cpp	/^template<class X, class T, int I>$/;"	Z	class:C	typeref:meta:class
61I	input.cpp	/^template<class X, class T, int I>$/;"	Z	class:C	typeref:typename:int
62