示例#1
0
文件: Complex.cs 项目: xgray/dotnet
 public void Write(TProtocol oprot)
 {
     oprot.IncrementRecursionDepth();
     try
     {
         TStruct struc = new TStruct("Complex");
         oprot.WriteStructBegin(struc);
         TField field = new TField();
         if (SimpleValue != null && __isset.simpleValue)
         {
             field.Name = "simpleValue";
             field.Type = TType.Struct;
             field.ID   = 1;
             oprot.WriteFieldBegin(field);
             SimpleValue.Write(oprot);
             oprot.WriteFieldEnd();
         }
         if (ListValue != null && __isset.listValue)
         {
             field.Name = "listValue";
             field.Type = TType.List;
             field.ID   = 2;
             oprot.WriteFieldBegin(field);
             {
                 oprot.WriteListBegin(new TList(TType.Struct, ListValue.Count));
                 foreach (Simple _iter61 in ListValue)
                 {
                     _iter61.Write(oprot);
                 }
                 oprot.WriteListEnd();
             }
             oprot.WriteFieldEnd();
         }
         if (SetValue != null && __isset.setValue)
         {
             field.Name = "setValue";
             field.Type = TType.Set;
             field.ID   = 3;
             oprot.WriteFieldBegin(field);
             {
                 oprot.WriteSetBegin(new TSet(TType.Struct, SetValue.Count));
                 foreach (Simple _iter62 in SetValue)
                 {
                     _iter62.Write(oprot);
                 }
                 oprot.WriteSetEnd();
             }
             oprot.WriteFieldEnd();
         }
         if (MapValue != null && __isset.mapValue)
         {
             field.Name = "mapValue";
             field.Type = TType.Map;
             field.ID   = 4;
             oprot.WriteFieldBegin(field);
             {
                 oprot.WriteMapBegin(new TMap(TType.String, TType.Struct, MapValue.Count));
                 foreach (string _iter63 in MapValue.Keys)
                 {
                     oprot.WriteString(_iter63);
                     MapValue[_iter63].Write(oprot);
                 }
                 oprot.WriteMapEnd();
             }
             oprot.WriteFieldEnd();
         }
         if (ListSetMap != null && __isset.listSetMap)
         {
             field.Name = "listSetMap";
             field.Type = TType.List;
             field.ID   = 5;
             oprot.WriteFieldBegin(field);
             {
                 oprot.WriteListBegin(new TList(TType.Set, ListSetMap.Count));
                 foreach (THashSet <Dictionary <string, List <Simple> > > _iter64 in ListSetMap)
                 {
                     {
                         oprot.WriteSetBegin(new TSet(TType.Map, _iter64.Count));
                         foreach (Dictionary <string, List <Simple> > _iter65 in _iter64)
                         {
                             {
                                 oprot.WriteMapBegin(new TMap(TType.String, TType.List, _iter65.Count));
                                 foreach (string _iter66 in _iter65.Keys)
                                 {
                                     oprot.WriteString(_iter66);
                                     {
                                         oprot.WriteListBegin(new TList(TType.Struct, _iter65[_iter66].Count));
                                         foreach (Simple _iter67 in _iter65[_iter66])
                                         {
                                             _iter67.Write(oprot);
                                         }
                                         oprot.WriteListEnd();
                                     }
                                 }
                                 oprot.WriteMapEnd();
                             }
                         }
                         oprot.WriteSetEnd();
                     }
                 }
                 oprot.WriteListEnd();
             }
             oprot.WriteFieldEnd();
         }
         if (MapList != null && __isset.mapList)
         {
             field.Name = "mapList";
             field.Type = TType.Map;
             field.ID   = 6;
             oprot.WriteFieldBegin(field);
             {
                 oprot.WriteMapBegin(new TMap(TType.String, TType.List, MapList.Count));
                 foreach (string _iter68 in MapList.Keys)
                 {
                     oprot.WriteString(_iter68);
                     {
                         oprot.WriteListBegin(new TList(TType.Map, MapList[_iter68].Count));
                         foreach (Dictionary <string, Simple> _iter69 in MapList[_iter68])
                         {
                             {
                                 oprot.WriteMapBegin(new TMap(TType.String, TType.Struct, _iter69.Count));
                                 foreach (string _iter70 in _iter69.Keys)
                                 {
                                     oprot.WriteString(_iter70);
                                     _iter69[_iter70].Write(oprot);
                                 }
                                 oprot.WriteMapEnd();
                             }
                         }
                         oprot.WriteListEnd();
                     }
                 }
                 oprot.WriteMapEnd();
             }
             oprot.WriteFieldEnd();
         }
         if (ListOfList != null && __isset.listOfList)
         {
             field.Name = "listOfList";
             field.Type = TType.List;
             field.ID   = 7;
             oprot.WriteFieldBegin(field);
             {
                 oprot.WriteListBegin(new TList(TType.List, ListOfList.Count));
                 foreach (List <string> _iter71 in ListOfList)
                 {
                     {
                         oprot.WriteListBegin(new TList(TType.String, _iter71.Count));
                         foreach (string _iter72 in _iter71)
                         {
                             oprot.WriteString(_iter72);
                         }
                         oprot.WriteListEnd();
                     }
                 }
                 oprot.WriteListEnd();
             }
             oprot.WriteFieldEnd();
         }
         if (ListOfListOfList != null && __isset.listOfListOfList)
         {
             field.Name = "listOfListOfList";
             field.Type = TType.List;
             field.ID   = 8;
             oprot.WriteFieldBegin(field);
             {
                 oprot.WriteListBegin(new TList(TType.List, ListOfListOfList.Count));
                 foreach (List <List <string> > _iter73 in ListOfListOfList)
                 {
                     {
                         oprot.WriteListBegin(new TList(TType.List, _iter73.Count));
                         foreach (List <string> _iter74 in _iter73)
                         {
                             {
                                 oprot.WriteListBegin(new TList(TType.String, _iter74.Count));
                                 foreach (string _iter75 in _iter74)
                                 {
                                     oprot.WriteString(_iter75);
                                 }
                                 oprot.WriteListEnd();
                             }
                         }
                         oprot.WriteListEnd();
                     }
                 }
                 oprot.WriteListEnd();
             }
             oprot.WriteFieldEnd();
         }
         oprot.WriteFieldStop();
         oprot.WriteStructEnd();
     }
     finally
     {
         oprot.DecrementRecursionDepth();
     }
 }