LogicDataGenerator.MessageDslParser.GenAllMessageProtos C# (CSharp) Method

GenAllMessageProtos() private method

private GenAllMessageProtos ( string file ) : void
file string
return void
        internal void GenAllMessageProtos(string file, params string[] groups)
        {
            HashSet<string> expectGroups = new HashSet<string>(groups);
              if (expectGroups.Count <= 0) {
            expectGroups.Add(string.Empty);
              }
              try {
            using (StreamWriter sw = new StreamWriter(file, true)) {
              sw.WriteLine("//----------------------------------------------------------------------------");
              sw.WriteLine("//!!!不要手动修改此文件,此文件由LogicDataGenerator按{0}生成!!!", m_DslFile);
              sw.WriteLine("//----------------------------------------------------------------------------");
              if (!string.IsNullOrEmpty(m_Package)) {
            sw.WriteLine("package {0};", m_Package);
              }

              foreach (var enumTypePair in m_EnumTypes) {
            string enumType = enumTypePair.Key;
            EnumTypeDef enumTypeDef = enumTypePair.Value;
            if (expectGroups.Contains(enumTypeDef.m_GroupName)) {
              GenEnumTypeProto(enumTypeDef, 0, sw);
            }
              }

              foreach (var messagePair in m_Messages) {
            string message = messagePair.Key;
            MessageDef messageDef = messagePair.Value;
            if (expectGroups.Contains(messageDef.m_GroupName)) {
              GenMessageProto(messageDef, 0, sw);
            }
              }

              sw.Close();
            }
              } catch (Exception ex) {
            Console.WriteLine(ex);
              }
        }

Usage Example

Esempio n. 1
0
 private static void GenServerData()
 {
     MessageDslParser parser = new MessageDslParser();
       parser.Init("DataProto/Data.dsl");
       parser.GenAllMessageWraps("DataProto/Data.cs", string.Empty);
       parser.GenAllMessagesEnum("DataProto/DataEnum.cs", "DataEnum", string.Empty);
       parser.GenAllMessageProtos("DataProto/Data.proto", string.Empty);
       parser.GenAllMessageDDL("DataProto/CreateDataTables.sql", string.Empty);
       parser.GenAllMessageDML("DataProto/DataDML.cs", "DataEnum", string.Empty);
 }
All Usage Examples Of LogicDataGenerator.MessageDslParser::GenAllMessageProtos