| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | /**
 | 
					
						
							|  |  |  |  * This is a wrap header to verify permutations on namespaces | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-16 03:39:11 +08:00
										 |  |  | #include <path/to/ns1.h>
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | namespace ns1 { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class ClassA { | 
					
						
							| 
									
										
										
										
											2012-10-02 22:40:07 +08:00
										 |  |  |   ClassA(); | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-16 03:39:11 +08:00
										 |  |  | #include <path/to/ns1/ClassB.h>
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | class ClassB { | 
					
						
							| 
									
										
										
										
											2012-10-02 22:40:07 +08:00
										 |  |  |   ClassB(); | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-07-23 22:09:42 +08:00
										 |  |  | // check namespace handling
 | 
					
						
							|  |  |  | Vector aGlobalFunction(); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-07-23 22:09:44 +08:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-16 03:39:11 +08:00
										 |  |  | #include <path/to/ns2.h>
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | namespace ns2 { | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-16 03:39:11 +08:00
										 |  |  | #include <path/to/ns2/ClassA.h>
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | class ClassA { | 
					
						
							| 
									
										
										
										
											2012-10-02 22:40:07 +08:00
										 |  |  |   ClassA(); | 
					
						
							|  |  |  |   static double afunction(); | 
					
						
							|  |  |  |   double memberFunction(); | 
					
						
							|  |  |  |   int nsArg(const ns1::ClassB& arg); | 
					
						
							|  |  |  |   ns2::ns3::ClassB nsReturn(double q); | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-16 03:39:11 +08:00
										 |  |  | #include <path/to/ns3.h>
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | namespace ns3 { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class ClassB { | 
					
						
							| 
									
										
										
										
											2012-10-02 22:40:07 +08:00
										 |  |  |   ClassB(); | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-07-23 22:09:44 +08:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:08 +08:00
										 |  |  | class ClassC { | 
					
						
							| 
									
										
										
										
											2012-10-02 22:40:07 +08:00
										 |  |  |   ClassC(); | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:08 +08:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-07-23 22:09:42 +08:00
										 |  |  | // separate namespace global function, same name
 | 
					
						
							|  |  |  | Vector aGlobalFunction(); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-05-26 04:37:43 +08:00
										 |  |  | // An overloaded global function
 | 
					
						
							|  |  |  | ns1::ClassA overloadedGlobalFunction(const ns1::ClassA& a); | 
					
						
							|  |  |  | ns1::ClassA overloadedGlobalFunction(const ns1::ClassA& a, double b); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-07-23 22:09:44 +08:00
										 |  |  | } //\namespace ns2
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:08 +08:00
										 |  |  | class ClassD { | 
					
						
							| 
									
										
										
										
											2012-10-02 22:40:07 +08:00
										 |  |  |   ClassD(); | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:08 +08:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-09 04:51:07 +08:00
										 |  |  | 
 |