| // Naming testcases, sepcifically for these tickets (but not limited to them) | 
 | // THRIFT-2508 Uncompileable C# code due to language keywords in IDL | 
 | // THRIFT-2557 error CS0542 member names cannot be the same as their enclosing type | 
 |  | 
 |  | 
 | struct using { | 
 | 	1: double single | 
 | 	2: double integer | 
 | } | 
 |  | 
 | struct delegate { | 
 | 	1: string partial | 
 | 	2: delegate delegate | 
 | } | 
 |  | 
 | struct get { | 
 | 	1: bool sbyte | 
 | } | 
 |  | 
 | struct partial { | 
 | 	1: using using | 
 | } | 
 |  | 
 |  | 
 |  | 
 | struct ClassAndProp { | 
 |   1: bool ClassAndProp | 
 |   2: bool ClassAndProp_ | 
 |   3: bool ClassAndProp__ | 
 |   4: bool ClassAndProper | 
 | } | 
 |  | 
 | struct second_chance { | 
 |   1: bool SECOND_CHANCE | 
 |   2: bool SECOND_CHANCE_ | 
 |   3: bool SECOND_CHANCE__ | 
 |   4: bool SECOND_CHANCES | 
 | } | 
 |  | 
 | struct NOW_EAT_THIS { | 
 |   1: bool now_eat_this | 
 |   2: bool now_eat_this_ | 
 |   3: bool now_eat_this__ | 
 |   4: bool now_eat_this_and_this | 
 | } | 
 |  | 
 | struct TheEdgeCase { | 
 |   1: bool theEdgeCase | 
 |   2: bool theEdgeCase_ | 
 |   3: bool theEdgeCase__ | 
 |   4: bool TheEdgeCase | 
 |   5: bool TheEdgeCase_ | 
 |   6: bool TheEdgeCase__ | 
 | } | 
 |  | 
 | struct Tricky_ { | 
 |   1: bool tricky | 
 |   2: bool Tricky | 
 | } | 
 |  | 
 | struct Nested { | 
 |   1: ClassAndProp ClassAndProp  | 
 |   2: second_chance second_chance  | 
 |   3: NOW_EAT_THIS NOW_EAT_THIS  | 
 |   4: TheEdgeCase TheEdgeCase  | 
 |   5: Tricky_ Tricky_  | 
 |   6: Nested Nested | 
 | } | 
 |  | 
 | exception Problem_ { | 
 |   1: bool problem | 
 |   2: bool Problem | 
 | } | 
 |  | 
 |  | 
 | service extern { | 
 | 	delegate event(1: partial get) | 
 | 	void Foo(1: Nested Foo_args) throws (1: Problem_ Foo_result) | 
 | } | 
 |  | 
 | // eof |