1/* 2 * Licensed to the Apache Software Foundation (ASF) under one 3 * or more contributor license agreements. See the NOTICE file 4 * distributed with this work for additional information 5 * regarding copyright ownership. The ASF licenses this file 6 * to you under the Apache License, Version 2.0 (the 7 * "License"); you may not use this file except in compliance 8 * with the License. You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, 13 * software distributed under the License is distributed on an 14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 * KIND, either express or implied. See the License for the 16 * specific language governing permissions and limitations 17 * under the License. 18 */ 19 20// Naming testcases, sepcifically for these tickets (but not limited to them) 21// THRIFT-2508 Uncompileable C# code due to language keywords in IDL 22// THRIFT-2557 error CS0542 member names cannot be the same as their enclosing type 23 24 25struct using { 26 1: double single 27 2: double integer 28} 29 30struct delegate { 31 1: string partial 32 2: delegate delegate 33} 34 35struct get { 36 1: bool sbyte 37} 38 39struct partial { 40 1: using using 41 2: bool read 42 3: bool write 43} 44 45enum Maybe { 46 JUST = 1, 47 TRUE = 2, 48 FALSE = 3 49} 50 51enum Either { 52 LEFT = 1, 53 RIGHT = 2 54} 55 56struct foldr { 57 1: string id 58} 59 60struct of { 61 1: string let 62 2: string where 63} 64 65struct ofOf { 66 1: of Of 67} 68 69 70struct ClassAndProp { 71 1: bool ClassAndProp 72 2: bool ClassAndProp_ 73 3: bool ClassAndProp__ 74 4: bool ClassAndProper 75} 76 77struct second_chance { 78 1: bool SECOND_CHANCE 79 2: bool SECOND_CHANCE_ 80 3: bool SECOND_CHANCE__ 81 4: bool SECOND_CHANCES 82} 83 84struct NOW_EAT_THIS { 85 1: bool now_eat_this 86 2: bool now_eat_this_ 87 3: bool now_eat_this__ 88 4: bool now_eat_this_and_this 89} 90 91struct TheEdgeCase { 92 1: bool theEdgeCase 93 2: bool theEdgeCase_ 94 3: bool theEdgeCase__ 95 4: bool TheEdgeCase 96 5: bool TheEdgeCase_ 97 6: bool TheEdgeCase__ 98} 99 100struct Tricky_ { 101 1: bool tricky 102 2: bool Tricky 103} 104 105struct Nested { 106 1: ClassAndProp ClassAndProp 107 2: second_chance second_chance 108 3: NOW_EAT_THIS NOW_EAT_THIS 109 4: TheEdgeCase TheEdgeCase 110 5: Tricky_ Tricky_ 111 6: Nested Nested 112} 113 114exception Problem_ { 115 1: bool problem 116 2: bool Problem 117} 118 119struct Thrift5626 { 120 1: i8 i8 121 2: i16 i16 122 3: i32 i32 123 4: i64 i64 124 //5: uuid uuid 125 6: string string 126 7: binary binary 127 8: bool bool 128 9: byte byte 129 10: list<string> list 130 11: set<string> set 131 12: map<string,string> map 132} 133 134service extern { 135 delegate event(1: partial get) 136 void Foo(1: Nested Foo_args) throws (1: Problem_ Foo_result) 137} 138 139service qualified { 140 Maybe maybe(1: Maybe foldr) 141 Either either(1: foldr of) 142} 143// eof 144