Example #1
0
        public string ToClass(CgType cgType, CgAccessModifier cgClsAccess = CgAccessModifier.Public, CgClassModifier typeModifier = CgClassModifier.AsIs, string[] nsImports = null)
        {
            var splitFileContent = new StringBuilder();

            if (nsImports != null && nsImports.Length > 0)
            {
                splitFileContent.AppendLine(string.Join(Environment.NewLine, nsImports));
            }

            var otherModifer = typeModifier == CgClassModifier.AsIs
                ? string.Empty
                : string.Format(" {0}", Settings.LangStyle.TransposeCgClassModToString(typeModifier));

            splitFileContent.AppendLine("    [Serializable]");
            splitFileContent.AppendLine(string.Format("    {0}{1} class {2}",
                                                      Settings.LangStyle.TransposeCgAccessModToString(cgClsAccess), otherModifer, cgType.Name));
            splitFileContent.AppendLine("    " + C_OPEN_CURLY);
            foreach (var cg in cgType.Fields)
            {
                splitFileContent.AppendLine(string.Join(Environment.NewLine, cg.GetMyCgLines()));
            }
            foreach (var cg in cgType.Properties)
            {
                splitFileContent.AppendLine(string.Join(Environment.NewLine, cg.GetMyCgLines()));
            }
            foreach (var cg in cgType.Methods)
            {
                splitFileContent.AppendLine(string.Join(Environment.NewLine, cg.GetMyCgLines()));
            }
            splitFileContent.AppendLine("    " + C_CLOSE_CURLY);

            return(splitFileContent.ToString());
        }
Example #2
0
        public string TransposeCgAccessModToString(CgAccessModifier am)
        {
            switch (am)
            {
            case CgAccessModifier.Assembly:
                return("internal");

            case CgAccessModifier.Family:
                return("protected");

            case CgAccessModifier.FamilyAssembly:
                return("protected internal");

            case CgAccessModifier.Private:
                return("private");

            default:
                return("public");
            }
        }
Example #3
0
 public string TransposeCgAccessModToString(CgAccessModifier am)
 {
     switch (am)
     {
         case CgAccessModifier.Assembly:
             return "internal";
         case CgAccessModifier.Family:
             return "protected";
         case CgAccessModifier.FamilyAssembly:
             return "protected internal";
         case CgAccessModifier.Private:
             return "private";
         default:
             return "public";
     }
 }
Example #4
0
 public string ToDecl(CgType cgType, string variableName, CgAccessModifier accessMod)
 {
     return string.Format("{2} {0} {1} = new {0}();", cgType.FullName, variableName,
         TransposeCgAccessModToString(accessMod));
 }
Example #5
0
        public string ToClass(CgType cgType, CgAccessModifier cgClsAccess, CgClassModifier typeModifier, string[] nsImports)
        {
            var hasNs = !string.IsNullOrWhiteSpace(cgType.Namespace);
            var splitFileContent = new StringBuilder();
            if (nsImports != null && nsImports.Length > 0)
            {
                splitFileContent.AppendLine(string.Join(Environment.NewLine, nsImports));
            }

            if (hasNs)
            {
                splitFileContent.AppendFormat("namespace {0}{1}", cgType.Namespace, Environment.NewLine);
                splitFileContent.AppendLine(C_OPEN_CURLY.ToString());

            }
            var otherModifer = typeModifier == CgClassModifier.AsIs
                ? string.Empty
                : string.Format(" {0}", Settings.LangStyle.TransposeCgClassModToString(typeModifier));
            splitFileContent.AppendLine("    [Serializable]");
            splitFileContent.AppendLine(string.Format("    {0}{1} class {2}",
                Settings.LangStyle.TransposeCgAccessModToString(cgClsAccess), otherModifer, cgType.Name));
            splitFileContent.AppendLine("    " + C_OPEN_CURLY);
            foreach (var cg in cgType.Fields)
                splitFileContent.AppendLine(string.Join(Environment.NewLine, cg.GetMyCgLines()));
            foreach (var cg in cgType.Properties)
                splitFileContent.AppendLine(string.Join(Environment.NewLine, cg.GetMyCgLines()));
            foreach (var cg in cgType.Methods)
                splitFileContent.AppendLine(string.Join(Environment.NewLine, cg.GetMyCgLines()));
            splitFileContent.AppendLine("    " + C_CLOSE_CURLY);

            if (hasNs)
                splitFileContent.AppendLine(C_CLOSE_CURLY.ToString());

            return splitFileContent.ToString();
        }
Example #6
0
 public string ToDecl(CgType cgType, string variableName, CgAccessModifier accessMod)
 {
     return(string.Format("{2} {0} {1} = new {0}();", cgType.FullName, variableName,
                          TransposeCgAccessModToString(accessMod)));
 }