LogicDataGenerator.MessageDslParser.GenMessageProto C# (CSharp) Method

GenMessageProto() private method

private GenMessageProto ( MessageDef messageDef, int indent, TextWriter sw ) : void
messageDef MessageDef
indent int
sw System.IO.TextWriter
return void
        private void GenMessageProto(MessageDef messageDef, int indent, TextWriter sw)
        {
            const string c_Indents = "\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t";
              string indentStr = c_Indents.Substring(0, indent);
              try {
            sw.WriteLine();
            sw.WriteLine("{0}message {1}", indentStr, messageDef.m_TypeName);
            sw.WriteLine("{0}{{", indentStr);
            foreach (var enumDefPair in messageDef.m_EnumTypes) {
              GenEnumTypeProto(enumDefPair.Value, indent + 1, sw);
            }
            foreach (var messageDefPair in messageDef.m_Messages) {
              GenMessageProto(messageDefPair.Value, indent + 1, sw);
            }
            foreach (MemberDef memberDef in messageDef.m_Members) {
              string type = GetProtoType(memberDef.m_TypeName);
              if (null != memberDef.m_Default) {
            sw.WriteLine("{0}\t{1} {2} {3} = {4}[default = {5}];", indentStr, memberDef.m_Modifier, type, memberDef.m_MemberName, memberDef.m_Order, memberDef.m_Default);
              } else {
            sw.WriteLine("{0}\t{1} {2} {3} = {4};", indentStr, memberDef.m_Modifier, type, memberDef.m_MemberName, memberDef.m_Order);
              }
            }
            sw.WriteLine("{0}}}", indentStr);
              } catch (Exception ex) {
            Console.WriteLine(ex);
              }
        }