| /* | 
 |  * Licensed to the Apache Software Foundation (ASF) under one | 
 |  * or more contributor license agreements. See the NOTICE file | 
 |  * distributed with this work for additional information | 
 |  * regarding copyright ownership. The ASF licenses this file | 
 |  * to you under the Apache License, Version 2.0 (the | 
 |  * "License"); you may not use this file except in compliance | 
 |  * with the License. You may obtain a copy of the License at | 
 |  * | 
 |  *   http://www.apache.org/licenses/LICENSE-2.0 | 
 |  * | 
 |  * Unless required by applicable law or agreed to in writing, | 
 |  * software distributed under the License is distributed on an | 
 |  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | 
 |  * KIND, either express or implied. See the License for the | 
 |  * specific language governing permissions and limitations | 
 |  * under the License. | 
 |  */ | 
 |  | 
 | // The java codegenerator has a few different codepaths depending | 
 | // on how many optionals the struct has; this attempts to exercise | 
 | // them. | 
 |  | 
 | namespace java thrift.test | 
 |  | 
 | struct Opt4 { | 
 |   1: i32 def1; | 
 |   2: i32 def2; | 
 |   3: i32 def3; | 
 |   4: i32 def4; | 
 | } | 
 |  | 
 | struct Opt13 { | 
 |   1: i32 def1; | 
 |   2: i32 def2; | 
 |   3: i32 def3; | 
 |   4: i32 def4; | 
 |   5: i32 def5; | 
 |   6: i32 def6; | 
 |   7: i32 def7; | 
 |   8: i32 def8; | 
 |   9: i32 def9; | 
 |   10: i32 def10; | 
 |   11: i32 def11; | 
 |   12: i32 def12; | 
 |   13: i32 def13; | 
 | } | 
 |  | 
 | struct Opt30 { | 
 |   1: i32 def1; | 
 |   2: i32 def2; | 
 |   3: i32 def3; | 
 |   4: i32 def4; | 
 |   5: i32 def5; | 
 |   6: i32 def6; | 
 |   7: i32 def7; | 
 |   8: i32 def8; | 
 |   9: i32 def9; | 
 |   10: i32 def10; | 
 |   11: i32 def11; | 
 |   12: i32 def12; | 
 |   13: i32 def13; | 
 |   14: i32 def14; | 
 |   15: i32 def15; | 
 |   16: i32 def16; | 
 |   17: i32 def17; | 
 |   18: i32 def18; | 
 |   19: i32 def19; | 
 |   20: i32 def20; | 
 |   21: i32 def21; | 
 |   22: i32 def22; | 
 |   23: i32 def23; | 
 |   24: i32 def24; | 
 |   25: i32 def25; | 
 |   26: i32 def26; | 
 |   27: i32 def27; | 
 |   28: i32 def28; | 
 |   29: i32 def29; | 
 |   30: i32 def30; | 
 | } | 
 |  | 
 | struct Opt64 { | 
 |   1: i32 def1; | 
 |   2: i32 def2; | 
 |   3: i32 def3; | 
 |   4: i32 def4; | 
 |   5: i32 def5; | 
 |   6: i32 def6; | 
 |   7: i32 def7; | 
 |   8: i32 def8; | 
 |   9: i32 def9; | 
 |   10: i32 def10; | 
 |   11: i32 def11; | 
 |   12: i32 def12; | 
 |   13: i32 def13; | 
 |   14: i32 def14; | 
 |   15: i32 def15; | 
 |   16: i32 def16; | 
 |   17: i32 def17; | 
 |   18: i32 def18; | 
 |   19: i32 def19; | 
 |   20: i32 def20; | 
 |   21: i32 def21; | 
 |   22: i32 def22; | 
 |   23: i32 def23; | 
 |   24: i32 def24; | 
 |   25: i32 def25; | 
 |   26: i32 def26; | 
 |   27: i32 def27; | 
 |   28: i32 def28; | 
 |   29: i32 def29; | 
 |   30: i32 def30; | 
 |   31: i32 def31; | 
 |   32: i32 def32; | 
 |   33: i32 def33; | 
 |   34: i32 def34; | 
 |   35: i32 def35; | 
 |   36: i32 def36; | 
 |   37: i32 def37; | 
 |   38: i32 def38; | 
 |   39: i32 def39; | 
 |   40: i32 def40; | 
 |   41: i32 def41; | 
 |   42: i32 def42; | 
 |   43: i32 def43; | 
 |   44: i32 def44; | 
 |   45: i32 def45; | 
 |   46: i32 def46; | 
 |   47: i32 def47; | 
 |   48: i32 def48; | 
 |   49: i32 def49; | 
 |   50: i32 def50; | 
 |   51: i32 def51; | 
 |   52: i32 def52; | 
 |   53: i32 def53; | 
 |   54: i32 def54; | 
 |   55: i32 def55; | 
 |   56: i32 def56; | 
 |   57: i32 def57; | 
 |   58: i32 def58; | 
 |   59: i32 def59; | 
 |   60: i32 def60; | 
 |   61: i32 def61; | 
 |   62: i32 def62; | 
 |   63: i32 def63; | 
 |   64: i32 def64; | 
 | } | 
 |  | 
 | struct Opt80 { | 
 |   1: i32 def1; | 
 |   2: i32 def2; | 
 |   3: i32 def3; | 
 |   4: i32 def4; | 
 |   5: i32 def5; | 
 |   6: i32 def6; | 
 |   7: i32 def7; | 
 |   8: i32 def8; | 
 |   9: i32 def9; | 
 |   10: i32 def10; | 
 |   11: i32 def11; | 
 |   12: i32 def12; | 
 |   13: i32 def13; | 
 |   14: i32 def14; | 
 |   15: i32 def15; | 
 |   16: i32 def16; | 
 |   17: i32 def17; | 
 |   18: i32 def18; | 
 |   19: i32 def19; | 
 |   20: i32 def20; | 
 |   21: i32 def21; | 
 |   22: i32 def22; | 
 |   23: i32 def23; | 
 |   24: i32 def24; | 
 |   25: i32 def25; | 
 |   26: i32 def26; | 
 |   27: i32 def27; | 
 |   28: i32 def28; | 
 |   29: i32 def29; | 
 |   30: i32 def30; | 
 |   31: i32 def31; | 
 |   32: i32 def32; | 
 |   33: i32 def33; | 
 |   34: i32 def34; | 
 |   35: i32 def35; | 
 |   36: i32 def36; | 
 |   37: i32 def37; | 
 |   38: i32 def38; | 
 |   39: i32 def39; | 
 |   40: i32 def40; | 
 |   41: i32 def41; | 
 |   42: i32 def42; | 
 |   43: i32 def43; | 
 |   44: i32 def44; | 
 |   45: i32 def45; | 
 |   46: i32 def46; | 
 |   47: i32 def47; | 
 |   48: i32 def48; | 
 |   49: i32 def49; | 
 |   50: i32 def50; | 
 |   51: i32 def51; | 
 |   52: i32 def52; | 
 |   53: i32 def53; | 
 |   54: i32 def54; | 
 |   55: i32 def55; | 
 |   56: i32 def56; | 
 |   57: i32 def57; | 
 |   58: i32 def58; | 
 |   59: i32 def59; | 
 |   60: i32 def60; | 
 |   61: i32 def61; | 
 |   62: i32 def62; | 
 |   63: i32 def63; | 
 |   64: i32 def64; | 
 |   65: i32 def65; | 
 |   66: i32 def66; | 
 |   67: i32 def67; | 
 |   68: i32 def68; | 
 |   69: i32 def69; | 
 |   70: i32 def70; | 
 |   71: i32 def71; | 
 |   72: i32 def72; | 
 |   73: i32 def73; | 
 |   74: i32 def74; | 
 |   75: i32 def75; | 
 |   76: i32 def76; | 
 |   77: i32 def77; | 
 |   78: i32 def78; | 
 |   79: i32 def79; | 
 |   80: i32 def80; | 
 | } | 
 |  |