From 8f872289b860d353f40ace9f3ea8a0a22c8f8570 Mon Sep 17 00:00:00 2001 From: walon Date: Mon, 25 Oct 2021 16:16:31 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E7=89=B9=E6=80=A7=E3=80=91=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=20--naming=5Fconvention=5Fxxx=20=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E9=80=89=E9=A1=B9=EF=BC=8C=E5=85=81=E8=AE=B8=E6=8C=87=E5=AE=9A?= =?UTF-8?q?=E7=94=9F=E6=88=90=E4=BB=A3=E7=A0=81=E7=9A=84=E5=91=BD=E5=90=8D?= =?UTF-8?q?=E9=A3=8E=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/l10n.md | 4 +- src/Luban.Common/Source/Utils/TypeUtil.cs | 33 ++++++ src/Luban.Job.Cfg/Source/Defs/DefField.cs | 19 ++-- .../Source/Generate/CodeRenderBase.cs | 1 + .../Source/Generate/CppCodeBinRender.cs | 2 +- .../Source/Generate/LuaCodeRenderBase.cs | 1 + .../Source/Generate/PythonCodeRenderBase.cs | 1 + .../Source/Generate/RustCodeJsonRender.cs | 1 + .../Generate/TypescriptCodeRenderBase.cs | 2 + src/Luban.Job.Cfg/Source/JobController.cs | 8 ++ .../Source/Utils/TTypeTemplateExtends.cs | 32 +++--- .../Source/AccessConvention.cs | 17 +++ .../Source/Defs/DefAssemblyBase.cs | 12 ++ .../Source/Defs/DefFieldBase.cs | 106 +++++++++++++----- src/Luban.Job.Common/Source/ELanguage.cs | 1 + src/Luban.Job.Common/Source/GenArgsBase.cs | 90 +++++++++++++++ .../Source/NamingConvention.cs | 18 +++ .../Source/Defs/TTypeTemplateExtends.cs | 2 +- src/Luban.Job.Db/Source/JobController.cs | 14 ++- src/Luban.Job.Proto/Source/JobController.cs | 17 ++- .../Templates/config/cpp_bin/bean.tpl | 6 +- .../Templates/config/cpp_bin/stub.tpl | 6 +- .../Templates/config/cpp_bin/table.tpl | 4 +- .../Templates/config/cs_bin/bean.tpl | 12 +- .../Templates/config/cs_bin/table.tpl | 6 +- .../Templates/config/cs_editor_json/bean.tpl | 4 +- .../Templates/config/cs_editor_json/table.tpl | 4 +- .../Templates/config/cs_json/bean.tpl | 14 +-- .../Templates/config/cs_json/table.tpl | 6 +- .../Templates/config/cs_unity_json/bean.tpl | 14 +-- .../Templates/config/cs_unity_json/table.tpl | 6 +- .../Templates/config/go_bin/bean.tpl | 6 +- .../Templates/config/go_bin/table.tpl | 4 +- .../Templates/config/go_json/bean.tpl | 6 +- .../Templates/config/go_json/table.tpl | 4 +- .../Templates/config/java_bin/bean.tpl | 18 +-- .../Templates/config/java_bin/table.tpl | 4 +- .../Templates/config/java_json/bean.tpl | 18 +-- .../Templates/config/java_json/table.tpl | 4 +- .../Templates/config/lua_bin/all.tpl | 4 +- .../Templates/config/lua_lua/all.tpl | 4 +- .../Templates/config/python_json/bean.tpl | 2 +- .../Templates/config/python_json/table.tpl | 4 +- .../Templates/config/rust_json/bean.tpl | 4 +- .../Templates/config/rust_json/table.tpl | 4 +- .../Templates/config/typescript_bin/bean.tpl | 4 +- .../Templates/config/typescript_bin/table.tpl | 4 +- .../Templates/config/typescript_json/bean.tpl | 4 +- .../config/typescript_json/table.tpl | 4 +- .../Templates/db/cs_async/bean.tpl | 12 +- .../Templates/db/cs_sync/bean.tpl | 12 +- .../Templates/db/typescript/bean.tpl | 8 +- src/Luban.Server/Templates/proto/cs/bean.tpl | 12 +- src/Luban.Server/Templates/proto/cs/proto.tpl | 10 +- .../Templates/proto/typescript/bean.tpl | 10 +- .../Templates/proto/typescript/proto.tpl | 10 +- 56 files changed, 446 insertions(+), 193 deletions(-) create mode 100644 src/Luban.Job.Common/Source/AccessConvention.cs create mode 100644 src/Luban.Job.Common/Source/NamingConvention.cs diff --git a/docs/l10n.md b/docs/l10n.md index 8adf650..415f65e 100644 --- a/docs/l10n.md +++ b/docs/l10n.md @@ -129,11 +129,11 @@ |/demo/key1|苹果|苹果|apple| |/demo/key2|香蕉|香蕉|banana| -假设配置表的表名为 l10n.TbTextMapper,示例c#版本地化映射函数如下: +假设想切换到en,配置表的表名为 l10n.TbTextMapper,示例c#版本地化映射函数如下: ```c# string TextMapper(string key, string originText) { - return tables.TbTextMapper.GetOrDefault(key) ?? originText; + return tables.TbTextMapper.GetOrDefault(key)?.TextEn ?? originText; } ``` diff --git a/src/Luban.Common/Source/Utils/TypeUtil.cs b/src/Luban.Common/Source/Utils/TypeUtil.cs index 2f03708..4ddcd12 100644 --- a/src/Luban.Common/Source/Utils/TypeUtil.cs +++ b/src/Luban.Common/Source/Utils/TypeUtil.cs @@ -208,6 +208,28 @@ namespace Luban.Common.Utils return char.ToUpper(s[0]) + s.Substring(1); } + public static string ToCamelCase(string name) + { + var words = name.Split('_').Where(s => !string.IsNullOrWhiteSpace(s)).ToArray(); + var s = new StringBuilder(); + s.Append(words[0]); + for (int i = 1; i < words.Length; i++) + { + s.Append(UpperCaseFirstChar(words[i])); + } + return s.ToString(); + } + + public static string ToPascalCase(string name) + { + return string.Join("", name.Split('_').Where(s => !string.IsNullOrWhiteSpace(s)).Select(c => UpperCaseFirstChar(c))); + } + + public static string ToUnderScores(string name) + { + return name; + } + public static string ToCsStyleName(string orginName) { return string.Join("", orginName.Split('_').Where(s => !string.IsNullOrWhiteSpace(s)).Select(c => UpperCaseFirstChar(c))); @@ -236,6 +258,17 @@ namespace Luban.Common.Utils return s.ToString(); } + public static string ToConventionGetterName(string orginName) + { + var words = orginName.Split('_').Where(s => !string.IsNullOrWhiteSpace(s)).ToArray(); + var s = new StringBuilder("get"); + foreach (var word in words) + { + s.Append(UpperCaseFirstChar(word)); + } + return s.ToString(); + } + public static string GetNamespace(string fullName) { var index = fullName.LastIndexOf('.'); diff --git a/src/Luban.Job.Cfg/Source/Defs/DefField.cs b/src/Luban.Job.Cfg/Source/Defs/DefField.cs index 95ddfba..71c769c 100644 --- a/src/Luban.Job.Cfg/Source/Defs/DefField.cs +++ b/src/Luban.Job.Cfg/Source/Defs/DefField.cs @@ -57,7 +57,7 @@ namespace Luban.Job.Cfg.Defs get { var table = Assembly.GetCfgTable(Ref.FirstTable); - return $"{table.ValueTType.Apply(CsDefineTypeName.Ins)} {CsRefVarName} {{ get; private set; }}"; + return $"{table.ValueTType.Apply(CsDefineTypeName.Ins)} {RefVarName} {{ get; private set; }}"; } } @@ -75,7 +75,7 @@ namespace Luban.Job.Cfg.Defs get { var table = Assembly.GetCfgTable(Ref.FirstTable); - return $"{table.ValueTType.Apply(JavaDefineTypeName.Ins)} {JavaRefVarName};"; + return $"{table.ValueTType.Apply(JavaDefineTypeName.Ins)} {RefVarName};"; } } @@ -84,7 +84,7 @@ namespace Luban.Job.Cfg.Defs get { var table = Assembly.GetCfgTable(Ref.FirstTable); - return $"{table.ValueTType.Apply(CppDefineTypeName.Ins)} {CppRefVarName};"; + return $"{table.ValueTType.Apply(CppDefineTypeName.Ins)} {RefVarName};"; } } @@ -93,22 +93,19 @@ namespace Luban.Job.Cfg.Defs get { var table = Assembly.GetCfgTable(Ref.FirstTable); - return $"{TsRefVarName} : {table.ValueTType.Apply(TypescriptDefineTypeNameVisitor.Ins)}{(IsNullable ? "" : " = undefined!")}"; + return $"{RefVarName} : {table.ValueTType.Apply(TypescriptDefineTypeNameVisitor.Ins)}{(IsNullable ? "" : " = undefined!")}"; } } #endif - public string CsRefVarName => $"{CsStyleName}_Ref"; + public string RefVarName => $"{ConventionName}_Ref"; - public string JavaRefVarName => $"{JavaStyleName}_Ref"; - public string CppRefVarName => $"{CsStyleName}_Ref"; + public string ConventionGetterName => TypeUtil.ToJavaGetterName(Name); - public string TsRefVarName => $"{TsStyleName}_Ref"; + //public string JavaGetterName => TypeUtil.ToJavaGetterName(Name); - public string JavaGetterName => TypeUtil.ToJavaGetterName(Name); - - public string CppGetterName => JavaGetterName; + //public string CppGetterName => JavaGetterName; public bool NeedExport => Assembly.NeedExport(this.Groups); diff --git a/src/Luban.Job.Cfg/Source/Generate/CodeRenderBase.cs b/src/Luban.Job.Cfg/Source/Generate/CodeRenderBase.cs index a877ed5..dbfe23d 100644 --- a/src/Luban.Job.Cfg/Source/Generate/CodeRenderBase.cs +++ b/src/Luban.Job.Cfg/Source/Generate/CodeRenderBase.cs @@ -34,6 +34,7 @@ namespace Luban.Job.Cfg.Generate string genType = ctx.GenType; ctx.Render = this; ctx.Lan = RenderFileUtil.GetLanguage(genType); + DefAssembly.LocalAssebmly.CurrentLanguage = ctx.Lan; foreach (var c in ctx.ExportTypes) { ctx.Tasks.Add(Task.Run(() => diff --git a/src/Luban.Job.Cfg/Source/Generate/CppCodeBinRender.cs b/src/Luban.Job.Cfg/Source/Generate/CppCodeBinRender.cs index 0897d4f..cbb0bc5 100644 --- a/src/Luban.Job.Cfg/Source/Generate/CppCodeBinRender.cs +++ b/src/Luban.Job.Cfg/Source/Generate/CppCodeBinRender.cs @@ -17,7 +17,7 @@ namespace Luban.Job.Cfg.Generate { // ͷļ ɵһļ // const,enum,bean,table, service ˳ - + DefAssembly.LocalAssebmly.CurrentLanguage = ELanguage.CPP; ctx.Tasks.Add(Task.Run(() => { var headerFileContent = new List diff --git a/src/Luban.Job.Cfg/Source/Generate/LuaCodeRenderBase.cs b/src/Luban.Job.Cfg/Source/Generate/LuaCodeRenderBase.cs index 2acd631..5156e35 100644 --- a/src/Luban.Job.Cfg/Source/Generate/LuaCodeRenderBase.cs +++ b/src/Luban.Job.Cfg/Source/Generate/LuaCodeRenderBase.cs @@ -11,6 +11,7 @@ namespace Luban.Job.Cfg.Generate { public override void Render(GenContext ctx) { + DefAssembly.LocalAssebmly.CurrentLanguage = Common.ELanguage.LUA; var file = RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "Types.lua"); var content = this.RenderAll(ctx.ExportTypes); var md5 = CacheFileUtil.GenMd5AndAddCache(file, string.Join('\n', content)); diff --git a/src/Luban.Job.Cfg/Source/Generate/PythonCodeRenderBase.cs b/src/Luban.Job.Cfg/Source/Generate/PythonCodeRenderBase.cs index 2267a6c..83b8726 100644 --- a/src/Luban.Job.Cfg/Source/Generate/PythonCodeRenderBase.cs +++ b/src/Luban.Job.Cfg/Source/Generate/PythonCodeRenderBase.cs @@ -11,6 +11,7 @@ namespace Luban.Job.Cfg.Generate { ctx.Render = this; ctx.Lan = Common.ELanguage.PYTHON; + DefAssembly.LocalAssebmly.CurrentLanguage = ctx.Lan; var lines = new List(10000); static void PreContent(List fileContent) diff --git a/src/Luban.Job.Cfg/Source/Generate/RustCodeJsonRender.cs b/src/Luban.Job.Cfg/Source/Generate/RustCodeJsonRender.cs index 9c92aa6..2d74c19 100644 --- a/src/Luban.Job.Cfg/Source/Generate/RustCodeJsonRender.cs +++ b/src/Luban.Job.Cfg/Source/Generate/RustCodeJsonRender.cs @@ -18,6 +18,7 @@ namespace Luban.Job.Cfg.Generate var args = ctx.GenArgs; ctx.Render = this; ctx.Lan = RenderFileUtil.GetLanguage(genType); + DefAssembly.LocalAssebmly.CurrentLanguage = ctx.Lan; var lines = new List(); GenerateCodeMonolithic(ctx, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "mod.rs"), lines, ls => diff --git a/src/Luban.Job.Cfg/Source/Generate/TypescriptCodeRenderBase.cs b/src/Luban.Job.Cfg/Source/Generate/TypescriptCodeRenderBase.cs index a99884f..74233fd 100644 --- a/src/Luban.Job.Cfg/Source/Generate/TypescriptCodeRenderBase.cs +++ b/src/Luban.Job.Cfg/Source/Generate/TypescriptCodeRenderBase.cs @@ -1,3 +1,4 @@ +using Luban.Job.Cfg.Defs; using Luban.Job.Common.Defs; using Luban.Job.Common.Utils; using System; @@ -13,6 +14,7 @@ namespace Luban.Job.Cfg.Generate var args = ctx.GenArgs; ctx.Render = this; ctx.Lan = RenderFileUtil.GetLanguage(genType); + DefAssembly.LocalAssebmly.CurrentLanguage = ctx.Lan; var lines = new List(10000); Action> preContent = (fileContent) => diff --git a/src/Luban.Job.Cfg/Source/JobController.cs b/src/Luban.Job.Cfg/Source/JobController.cs index 8972206..50a9e9b 100644 --- a/src/Luban.Job.Cfg/Source/JobController.cs +++ b/src/Luban.Job.Cfg/Source/JobController.cs @@ -98,6 +98,10 @@ namespace Luban.Job.Cfg { return false; } + if (!options.ValidateConvention(ref errMsg)) + { + return false; + } return true; } @@ -145,6 +149,10 @@ namespace Luban.Job.Cfg { UseUnityVectors = args.UseUnityVectors, OutputCompactJson = args.OutputCompactJson, + NamingConventionModule = args.NamingConventionModule, + NamingConventionType = args.NamingConventionType, + NamingConventionBeanMember = args.NamingConventionBeanMember, + NamingConventionEnumMember = args.NamingConventionEnumMember, }; ass.Load(args.Service, rawDefines); diff --git a/src/Luban.Job.Cfg/Source/Utils/TTypeTemplateExtends.cs b/src/Luban.Job.Cfg/Source/Utils/TTypeTemplateExtends.cs index 26f18f4..ccc9dbd 100644 --- a/src/Luban.Job.Cfg/Source/Utils/TTypeTemplateExtends.cs +++ b/src/Luban.Job.Cfg/Source/Utils/TTypeTemplateExtends.cs @@ -11,17 +11,17 @@ namespace Luban.Job.Cfg.Utils { public static string CsDefineTextKeyField(DefField field) { - return $"string {field.GetTextKeyName(field.CsStyleName)}"; + return $"string {field.GetTextKeyName(field.ConventionName)}"; } public static string CsTranslateText(DefField field, string translatorName) { - return $"{field.CsStyleName} = {translatorName}({field.GetTextKeyName(field.CsStyleName)}, {field.CsStyleName});"; + return $"{field.ConventionName} = {translatorName}({field.GetTextKeyName(field.ConventionName)}, {field.ConventionName});"; } public static string CsRecursiveTranslateText(DefField field, string translatorName) { - return field.CType.Apply(CsRecursiveTranslateVisitor.Ins, field.CsStyleName, translatorName); + return field.CType.Apply(CsRecursiveTranslateVisitor.Ins, field.ConventionName, translatorName); } public static string CsJsonDeserialize(string bufName, string fieldName, string jsonFieldName, TType type) @@ -50,13 +50,13 @@ namespace Luban.Job.Cfg.Utils public static string CsRecursiveResolve(DefField field, string tables) { - return field.CType.Apply(CsRecursiveResolveVisitor.Ins, field.CsStyleName, tables); + return field.CType.Apply(CsRecursiveResolveVisitor.Ins, field.ConventionName, tables); } public static string CsRefValidatorResolve(DefField field) { - var refVarName = field.CsRefVarName; - var name = field.CsStyleName; + var refVarName = field.RefVarName; + var name = field.ConventionName; var tableName = field.Ref.FirstTable; var table = field.Assembly.GetCfgTable(field.Ref.FirstTable); if (field.IsNullable) @@ -88,13 +88,13 @@ namespace Luban.Job.Cfg.Utils public static string JavaRecursiveResolve(DefField field, string tables) { - return field.CType.Apply(JavaRecursiveResolveVisitor.Ins, field.JavaStyleName, tables); + return field.CType.Apply(JavaRecursiveResolveVisitor.Ins, field.ConventionName, tables); } public static string JavaRefValidatorResolve(DefField field) { - var refVarName = field.JavaRefVarName; - var name = field.JavaStyleName; + var refVarName = field.RefVarName; + var name = field.ConventionName; var tableName = field.Ref.FirstTable; var table = field.Assembly.GetCfgTable(field.Ref.FirstTable); if (field.IsNullable) @@ -114,13 +114,13 @@ namespace Luban.Job.Cfg.Utils public static string CppRecursiveResolve(DefField field, string tables) { - return field.CType.Apply(CppRecursiveResolveVisitor.Ins, field.CsStyleName, tables); + return field.CType.Apply(CppRecursiveResolveVisitor.Ins, field.ConventionName, tables); } public static string CppRefValidatorResolve(DefField field) { - var refVarName = field.CppRefVarName; - var name = field.CsStyleName; + var refVarName = field.RefVarName; + var name = field.ConventionName; var tableName = field.Ref.FirstTable; var table = field.Assembly.GetCfgTable(field.Ref.FirstTable); if (field.IsNullable) @@ -165,13 +165,13 @@ namespace Luban.Job.Cfg.Utils public static string TsRecursiveResolve(DefField field, string tables) { - return field.CType.Apply(TypescriptRecursiveResolveVisitor.Ins, "this." + field.CsStyleName, tables); + return field.CType.Apply(TypescriptRecursiveResolveVisitor.Ins, "this." + field.ConventionName, tables); } public static string TsRefValidatorResolve(DefField field) { - var refVarName = field.CsRefVarName; - var name = "this." + field.TsStyleName; + var refVarName = field.RefVarName; + var name = "this." + field.ConventionName; var tableName = field.Ref.FirstTable; var table = field.Assembly.GetCfgTable(field.Ref.FirstTable); if (field.IsNullable) @@ -212,7 +212,7 @@ namespace Luban.Job.Cfg.Utils { switch (lan) { - case "cs": return $"string {field.CsStyleName}{TText.L10N_FIELD_SUFFIX};"; + case "cs": return $"string {field.ConventionName}{TText.L10N_FIELD_SUFFIX};"; default: throw new NotSupportedException($"not support lan:{lan}"); } } diff --git a/src/Luban.Job.Common/Source/AccessConvention.cs b/src/Luban.Job.Common/Source/AccessConvention.cs new file mode 100644 index 0000000..f15f190 --- /dev/null +++ b/src/Luban.Job.Common/Source/AccessConvention.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Luban.Job.Common +{ + public enum AccessConvention + { + Invalid, + LanguangeRecommend, + Variable, + GetterSetter, + Property, + } +} diff --git a/src/Luban.Job.Common/Source/Defs/DefAssemblyBase.cs b/src/Luban.Job.Common/Source/Defs/DefAssemblyBase.cs index ec4880e..efe9657 100644 --- a/src/Luban.Job.Common/Source/Defs/DefAssemblyBase.cs +++ b/src/Luban.Job.Common/Source/Defs/DefAssemblyBase.cs @@ -42,6 +42,18 @@ namespace Luban.Job.Common.Defs public bool UseUnityVectors { get; set; } + public NamingConvention NamingConventionModule { get; set; } = NamingConvention.LanguangeRecommend; + + public NamingConvention NamingConventionType { get; set; } = NamingConvention.LanguangeRecommend; + + public NamingConvention NamingConventionBeanMember { get; set; } = NamingConvention.LanguangeRecommend; + + public NamingConvention NamingConventionEnumMember { get; set; } = NamingConvention.LanguangeRecommend; + + public AccessConvention AccessConventionBeanMember { get; set; } = AccessConvention.LanguangeRecommend; + + public ELanguage CurrentLanguage { get; set; } = ELanguage.INVALID; + public void AddType(DefTypeBase type) { string fullName = type.FullName; diff --git a/src/Luban.Job.Common/Source/Defs/DefFieldBase.cs b/src/Luban.Job.Common/Source/Defs/DefFieldBase.cs index 7b3491f..b69007b 100644 --- a/src/Luban.Job.Common/Source/Defs/DefFieldBase.cs +++ b/src/Luban.Job.Common/Source/Defs/DefFieldBase.cs @@ -17,50 +17,94 @@ namespace Luban.Job.Common.Defs public string Name { get; set; } - private string _lanStyleName; - public string CsStyleName + public string ConventionName { get { - if (_lanStyleName == null) + string cn; + ELanguage curLan = AssemblyBase.CurrentLanguage; + switch (AssemblyBase.NamingConventionBeanMember) { - _lanStyleName = TypeUtil.ToCsStyleName(Name); + case NamingConvention.Origin: cn = Name; break; + case NamingConvention.CameraCase: cn = TypeUtil.ToCamelCase(Name); break; + case NamingConvention.PascalCase: cn = TypeUtil.ToPascalCase(Name); break; + case NamingConvention.UnderScores: cn = TypeUtil.ToUnderScores(Name); break; + case NamingConvention.Invalid: throw new Exception($"invalid NamingConvention"); + case NamingConvention.LanguangeRecommend: + { + switch (curLan) + { + case ELanguage.INVALID: throw new Exception($"not set current language. can't get recommend naming convention name"); + case ELanguage.CS: cn = TypeUtil.ToPascalCase(Name); break; + case ELanguage.JAVA: cn = TypeUtil.ToCamelCase(Name); break; + case ELanguage.GO: cn = TypeUtil.ToPascalCase(Name); break; + case ELanguage.CPP: cn = TypeUtil.ToCamelCase(Name); break; + case ELanguage.LUA: cn = TypeUtil.ToUnderScores(Name); break; + case ELanguage.JS: cn = TypeUtil.ToCamelCase(Name); break; + case ELanguage.TYPESCRIPT: cn = TypeUtil.ToCamelCase(Name); break; + case ELanguage.PYTHON: cn = TypeUtil.ToUnderScores(Name); break; + case ELanguage.RUST: cn = TypeUtil.ToUnderScores(Name); break; + default: throw new Exception($"unknown language:{curLan}"); + } + break; + } + default: throw new Exception($"unknown NamingConvention:{AssemblyBase.NamingConventionBeanMember}"); } - return _lanStyleName; + if (curLan == ELanguage.RUST) + { + if (cn == "type") + { + cn = "r#type"; + } + } + return cn; } } - public string JavaStyleName - { - get - { - if (_lanStyleName == null) - { - _lanStyleName = TypeUtil.ToJavaStyleName(Name); - } - return _lanStyleName; - } - } + //private string _lanStyleName; + //public string CsStyleName + //{ + // get + // { + // if (_lanStyleName == null) + // { + // _lanStyleName = TypeUtil.ToCsStyleName(Name); + // } + // return _lanStyleName; + // } + //} - public string CppStyleName => JavaStyleName; + //public string JavaStyleName + //{ + // get + // { + // if (_lanStyleName == null) + // { + // _lanStyleName = TypeUtil.ToJavaStyleName(Name); + // } + // return _lanStyleName; + // } + //} - public string TsStyleName - { - get - { - if (_lanStyleName == null) - { - _lanStyleName = TypeUtil.ToJavaStyleName(Name); - } - return _lanStyleName; - } - } + //public string CppStyleName => JavaStyleName; - public string PyStyleName => Name; + //public string TsStyleName + //{ + // get + // { + // if (_lanStyleName == null) + // { + // _lanStyleName = TypeUtil.ToJavaStyleName(Name); + // } + // return _lanStyleName; + // } + //} - public string GoStyleName => CsStyleName; + //public string PyStyleName => Name; - public string RustStyleName => Name != "type" ? Name : "r#" + Name; + //public string GoStyleName => CsStyleName; + + //public string RustStyleName => Name != "type" ? Name : "r#" + Name; //public string GoStyleAssignName => CType.IsNullable ? "*" + CsStyleName : CsStyleName; diff --git a/src/Luban.Job.Common/Source/ELanguage.cs b/src/Luban.Job.Common/Source/ELanguage.cs index 6bd7456..e36115a 100644 --- a/src/Luban.Job.Common/Source/ELanguage.cs +++ b/src/Luban.Job.Common/Source/ELanguage.cs @@ -2,6 +2,7 @@ namespace Luban.Job.Common { public enum ELanguage { + INVALID, CS, JAVA, GO, diff --git a/src/Luban.Job.Common/Source/GenArgsBase.cs b/src/Luban.Job.Common/Source/GenArgsBase.cs index b14aa2e..b086350 100644 --- a/src/Luban.Job.Common/Source/GenArgsBase.cs +++ b/src/Luban.Job.Common/Source/GenArgsBase.cs @@ -28,6 +28,31 @@ namespace Luban.Job.Common [Option("use_unity_vector", Required = false, HelpText = "use UnityEngine.Vector{2,3,4}")] public bool UseUnityVectors { get; set; } + [Option("naming_convention_module", Required = false, HelpText = "naming convention of module. can be language_recommend,origin,camelCase,PascalCase,under_scores")] + public string NamingConventionModuleStr { get; set; } + + public NamingConvention NamingConventionModule { get; set; } + + [Option("naming_convention_type", Required = false, HelpText = "naming convention of enum and bean. can be language_recommend,origin,camelCase,PascalCase,under_scores")] + public string NamingConventionTypeStr { get; set; } + + public NamingConvention NamingConventionType { get; set; } + + [Option("naming_convention_bean_member", Required = false, HelpText = "naming convention of bean member. can be language_recommend,origin,camelCase,PascalCase,under_scores")] + public string NamingConventionBeanMemberStr { get; set; } + + public NamingConvention NamingConventionBeanMember { get; set; } + + [Option("naming_convention_enum_member", Required = false, HelpText = "naming convention of enum member. can be language_recommend,origin,camelCase,PascalCase,under_scores")] + public string NamingConventionEnumMemberStr { get; set; } + + public NamingConvention NamingConventionEnumMember { get; set; } + + [Option("access_bean_member", Required = false, HelpText = "mode of bean field. can be language_recommend,variable,getter_setter,property")] + public string AccessConventionBeanMemberStr { get; set; } + + public AccessConvention AccessConventionBeanMember { get; set; } + public bool ValidateOutouptCodeDir(ref string errMsg) { if (string.IsNullOrWhiteSpace(this.OutputCodeDir)) @@ -38,6 +63,36 @@ namespace Luban.Job.Common return true; } + public static bool TryParseNamingConvention(string nc, out NamingConvention result) + { + switch (nc) + { + case null: + case "": + case "language_recommend": result = NamingConvention.LanguangeRecommend; return true; + case "origin": result = NamingConvention.Origin; return true; + case "camelCase": result = NamingConvention.CameraCase; return true; + case "PascalCase": result = NamingConvention.PascalCase; return true; + case "under_scores": result = NamingConvention.UnderScores; return true; + default: result = NamingConvention.Invalid; return false; + } + } + + public static bool TryParseAccessConvention(string fm, out AccessConvention ac) + { + //return string.IsNullOrEmpty(fm) || fm == "language_recommend" || fm == "variable" || fm == "getter_setter" || fm == "property"; + switch (fm) + { + case null: + case "": + case "language_recommnd": ac = AccessConvention.LanguangeRecommend; return true; + case "variable": ac = AccessConvention.Variable; return true; + case "getter_setter": ac = AccessConvention.GetterSetter; return true; + case "property": ac = AccessConvention.Property; return true; + default: ac = AccessConvention.Invalid; return false; + } + } + public bool ValidateTypescriptRequire(string genType, ref string errMsg) { if (!string.IsNullOrWhiteSpace(this.TypescriptBrightRequirePath) && !string.IsNullOrWhiteSpace(this.TypescriptBrightPackageName)) @@ -58,5 +113,40 @@ namespace Luban.Job.Common } return true; } + + public bool ValidateConvention(ref string errMsg) + { + if (!TryParseNamingConvention(NamingConventionModuleStr, out var m)) + { + errMsg = "--naming_convention_module invalid! valid values: language_recommend,origin,camelCase,PascalCase,under_scores"; + return false; + } + NamingConventionModule = m; + if (!TryParseNamingConvention(NamingConventionTypeStr, out var t)) + { + errMsg = "--naming_convention_type invalid! valid values: language_recommend,origin,camelCase,PascalCase,under_scores"; + return false; + } + NamingConventionType = t; + if (!TryParseNamingConvention(NamingConventionBeanMemberStr, out var bm)) + { + errMsg = "--naming_convention_bean_member invalid! valid values: language_recommend,origin,camelCase,PascalCase,under_scores"; + return false; + } + NamingConventionBeanMember = bm; + if (!TryParseNamingConvention(NamingConventionEnumMemberStr, out var em)) + { + errMsg = "--naming_convention_enum_member invalid! valid values: language_recommend,origin,camelCase,PascalCase,under_scores"; + return false; + } + NamingConventionEnumMember = em; + if (!TryParseAccessConvention(AccessConventionBeanMemberStr, out var acbm)) + { + errMsg = "--access_bean_member invalid! valid values: language_recommend,variable,getter_setter,property"; + return false; + } + AccessConventionBeanMember = acbm; + return true; + } } } diff --git a/src/Luban.Job.Common/Source/NamingConvention.cs b/src/Luban.Job.Common/Source/NamingConvention.cs new file mode 100644 index 0000000..196e314 --- /dev/null +++ b/src/Luban.Job.Common/Source/NamingConvention.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Luban.Job.Common +{ + public enum NamingConvention + { + Invalid, + LanguangeRecommend, + Origin, + CameraCase, + PascalCase, + UnderScores, + } +} diff --git a/src/Luban.Job.Db/Source/Defs/TTypeTemplateExtends.cs b/src/Luban.Job.Db/Source/Defs/TTypeTemplateExtends.cs index 389a38f..879cb49 100644 --- a/src/Luban.Job.Db/Source/Defs/TTypeTemplateExtends.cs +++ b/src/Luban.Job.Db/Source/Defs/TTypeTemplateExtends.cs @@ -70,7 +70,7 @@ namespace Luban.Job.Db.Defs public static string CsInitFieldCtorValue(DefField field) { - return $"{field.CsStyleName} = default;"; + return $"{field.ConventionName} = default;"; } public static string CsWriteBlob(string bufName, string fieldName, TType type) diff --git a/src/Luban.Job.Db/Source/JobController.cs b/src/Luban.Job.Db/Source/JobController.cs index 9859214..df7dca9 100644 --- a/src/Luban.Job.Db/Source/JobController.cs +++ b/src/Luban.Job.Db/Source/JobController.cs @@ -51,6 +51,10 @@ namespace Luban.Job.Db { return false; } + if (!options.ValidateConvention(ref errMsg)) + { + return false; + } return true; } @@ -85,7 +89,13 @@ namespace Luban.Job.Db var rawDefines = loader.BuildDefines(); - var ass = new DefAssembly(); + var ass = new DefAssembly() + { + NamingConventionModule = args.NamingConventionModule, + NamingConventionType = args.NamingConventionType, + NamingConventionBeanMember = args.NamingConventionBeanMember, + NamingConventionEnumMember = args.NamingConventionEnumMember, + }; ass.Load(rawDefines, agent); @@ -101,6 +111,7 @@ namespace Luban.Job.Db { case "cs": { + ass.CurrentLanguage = ELanguage.CS; var render = new AsyncCsRender(); foreach (var c in ass.Types.Values) { @@ -128,6 +139,7 @@ namespace Luban.Job.Db } case "typescript": { + ass.CurrentLanguage = ELanguage.TYPESCRIPT; var render = new TypescriptRender(); var brightRequirePath = args.TypescriptBrightRequirePath; var brightPackageName = args.TypescriptBrightPackageName; diff --git a/src/Luban.Job.Proto/Source/JobController.cs b/src/Luban.Job.Proto/Source/JobController.cs index 7e70e5c..8438684 100644 --- a/src/Luban.Job.Proto/Source/JobController.cs +++ b/src/Luban.Job.Proto/Source/JobController.cs @@ -58,6 +58,10 @@ namespace Luban.Job.Proto { return false; } + if (!options.ValidateConvention(ref errMsg)) + { + return false; + } return true; } @@ -92,7 +96,15 @@ namespace Luban.Job.Proto var rawDefines = loader.BuildDefines(); - var ass = new DefAssembly() { UseUnityVectors = args.UseUnityVectors }; + var ass = new DefAssembly() + { + UseUnityVectors = args.UseUnityVectors, + + NamingConventionModule = args.NamingConventionModule, + NamingConventionType = args.NamingConventionType, + NamingConventionBeanMember = args.NamingConventionBeanMember, + NamingConventionEnumMember = args.NamingConventionEnumMember, + }; ass.Load(rawDefines, agent); @@ -112,6 +124,7 @@ namespace Luban.Job.Proto { case "cs": { + ass.CurrentLanguage = ELanguage.CS; var render = new CsRender(); foreach (var c in ass.Types.Values) { @@ -140,6 +153,7 @@ namespace Luban.Job.Proto } case "lua": { + ass.CurrentLanguage = ELanguage.LUA; tasks.Add(Task.Run(() => { var render = new LuaRender(); @@ -152,6 +166,7 @@ namespace Luban.Job.Proto } case "typescript": { + ass.CurrentLanguage = ELanguage.TYPESCRIPT; var render = new TypescriptRender(); var brightRequirePath = args.TypescriptBrightRequirePath; var brightPackageName = args.TypescriptBrightPackageName; diff --git a/src/Luban.Server/Templates/config/cpp_bin/bean.tpl b/src/Luban.Server/Templates/config/cpp_bin/bean.tpl index ace20f8..271d80f 100644 --- a/src/Luban.Server/Templates/config/cpp_bin/bean.tpl +++ b/src/Luban.Server/Templates/config/cpp_bin/bean.tpl @@ -31,7 +31,7 @@ class {{name}} : public {{if parent_def_type}} {{parent_def_type.cpp_full_name}} { {{~ for field in export_fields ~}} - this->{{field.cpp_style_name}} = {{field.name}}; + this->{{field.convention_name}} = {{field.name}}; {{~end~}} } {{~end~}} @@ -45,9 +45,9 @@ class {{name}} : public {{if parent_def_type}} {{parent_def_type.cpp_full_name}} * {{field.comment}} */ {{~end~}} - {{cpp_define_type field.ctype}} {{field.cpp_style_name}}; + {{cpp_define_type field.ctype}} {{field.convention_name}}; {{~if field.index_field~}} - ::bright::HashMap<{{cpp_define_type field.index_field.ctype}}, {{cpp_define_type field.ctype.element_type}}> {{field.cpp_style_name}}_Index; + ::bright::HashMap<{{cpp_define_type field.index_field.ctype}}, {{cpp_define_type field.ctype.element_type}}> {{field.convention_name}}_Index; {{~end~}} {{~if field.gen_ref~}} {{field.cpp_ref_validator_define}} diff --git a/src/Luban.Server/Templates/config/cpp_bin/stub.tpl b/src/Luban.Server/Templates/config/cpp_bin/stub.tpl index 1b61135..1b2e6fd 100644 --- a/src/Luban.Server/Templates/config/cpp_bin/stub.tpl +++ b/src/Luban.Server/Templates/config/cpp_bin/stub.tpl @@ -17,11 +17,11 @@ namespace {{x.top_module}} {{~end~}} {{~ for field in type.export_fields ~}} - {{cpp_deserialize '_buf' field.cpp_style_name field.ctype}} + {{cpp_deserialize '_buf' field.convention_name field.ctype}} {{~if field.index_field ~}} - for(auto& _v : this->{{field.cpp_style_name}}) + for(auto& _v : this->{{field.convention_name}}) { - {{field.cpp_style_name}}_Index.insert({_v->{{field.index_field.cpp_style_name}}, _v}); + {{field.convention_name}}_Index.insert({_v->{{field.index_field.convention_name}}, _v}); } {{~end~}} {{~end~}} diff --git a/src/Luban.Server/Templates/config/cpp_bin/table.tpl b/src/Luban.Server/Templates/config/cpp_bin/table.tpl index 660d3c2..3e46038 100644 --- a/src/Luban.Server/Templates/config/cpp_bin/table.tpl +++ b/src/Luban.Server/Templates/config/cpp_bin/table.tpl @@ -30,7 +30,7 @@ class {{name}} {{cpp_define_type value_type}} _v; {{cpp_deserialize '_buf' '_v' value_type}} _dataList.push_back(_v); - _dataMap[_v->{{x.index_field.cpp_style_name}}] = _v; + _dataMap[_v->{{x.index_field.convention_name}}] = _v; } return true; } @@ -85,7 +85,7 @@ class {{name}} * {{field.comment}} */ {{~end~}} - {{cpp_define_type field.ctype}}& {{field.cpp_getter_name}}() const { return _data->{{field.cpp_style_name}}; } + {{cpp_define_type field.ctype}}& {{field.convention_getter_name}}() const { return _data->{{field.convention_name}}; } {{~end~}} {{~end~}} }; diff --git a/src/Luban.Server/Templates/config/cs_bin/bean.tpl b/src/Luban.Server/Templates/config/cs_bin/bean.tpl index 2ce28f2..d742698 100644 --- a/src/Luban.Server/Templates/config/cs_bin/bean.tpl +++ b/src/Luban.Server/Templates/config/cs_bin/bean.tpl @@ -21,11 +21,11 @@ public {{x.cs_class_modifier}} partial class {{name}} : {{if parent_def_type}} { public {{name}}(ByteBuf _buf) {{if parent_def_type}} : base(_buf) {{end}} { {{~ for field in export_fields ~}} - {{cs_deserialize '_buf' field.cs_style_name field.ctype}} + {{cs_deserialize '_buf' field.convention_name field.ctype}} {{~if field.index_field~}} - foreach(var _v in {{field.cs_style_name}}) + foreach(var _v in {{field.convention_name}}) { - {{field.cs_style_name}}_Index.Add(_v.{{field.index_field.cs_style_name}}, _v); + {{field.convention_name}}_Index.Add(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} @@ -52,9 +52,9 @@ public {{x.cs_class_modifier}} partial class {{name}} : {{if parent_def_type}} { /// {{field.comment}} /// {{~end~}} - public {{cs_define_type field.ctype}} {{field.cs_style_name}} { get; private set; } + public {{cs_define_type field.ctype}} {{field.convention_name}} { get; private set; } {{~if field.index_field~}} - public readonly Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}> {{field.cs_style_name}}_Index = new Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}>(); + public readonly Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}> {{field.convention_name}}_Index = new Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}>(); {{~end~}} {{~if field.gen_ref~}} public {{field.cs_ref_validator_define}} @@ -101,7 +101,7 @@ public {{x.cs_class_modifier}} partial class {{name}} : {{if parent_def_type}} { { return "{{full_name}}{ " {{~for field in hierarchy_export_fields ~}} - + "{{field.cs_style_name}}:" + {{cs_to_string field.cs_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{cs_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/config/cs_bin/table.tpl b/src/Luban.Server/Templates/config/cs_bin/table.tpl index e4e554f..6b8adde 100644 --- a/src/Luban.Server/Templates/config/cs_bin/table.tpl +++ b/src/Luban.Server/Templates/config/cs_bin/table.tpl @@ -31,7 +31,7 @@ public sealed class {{name}} {{cs_define_type value_type}} _v; {{cs_deserialize '_buf' '_v' value_type}} _dataList.Add(_v); - _dataMap.Add(_v.{{x.index_field.cs_style_name}}, _v); + _dataMap.Add(_v.{{x.index_field.convention_name}}, _v); } } @@ -80,9 +80,9 @@ public sealed class {{name}} /// {{field.comment}} /// {{~end~}} - public {{cs_define_type field.ctype}} {{field.cs_style_name}} => _data.{{field.cs_style_name}}; + public {{cs_define_type field.ctype}} {{field.convention_name}} => _data.{{field.convention_name}}; {{~if field.ref~}} - public {{field.cs_ref_type_name}} {{field.cs_ref_var_name}} => _data.{{field.cs_ref_var_name}}; + public {{field.cs_ref_type_name}} {{field.ref_var_name}} => _data.{{field.ref_var_name}}; {{~end~}} {{~end~}} diff --git a/src/Luban.Server/Templates/config/cs_editor_json/bean.tpl b/src/Luban.Server/Templates/config/cs_editor_json/bean.tpl index c0d8aff..3b65283 100644 --- a/src/Luban.Server/Templates/config/cs_editor_json/bean.tpl +++ b/src/Luban.Server/Templates/config/cs_editor_json/bean.tpl @@ -43,7 +43,7 @@ public {{cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{parent}} } {{~end~}} {{~for field in fields ~}} - public {{field.ctype.cs_define_type}} {{field.cs_style_name}}; + public {{field.ctype.cs_define_type}} {{field.convention_name}}; {{~end~}} {{~if !parent_def_type && is_abstract_type~}} @@ -81,7 +81,7 @@ public {{cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{parent}} { return "{{full_name}}{ " {{~for field in hierarchy_fields ~}} - + "{{field.cs_style_name}}:" + {{field.proto_cs_to_string}} + "," + + "{{field.convention_name}}:" + {{field.proto_cs_to_string}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/config/cs_editor_json/table.tpl b/src/Luban.Server/Templates/config/cs_editor_json/table.tpl index 6cf4e65..852e9b1 100644 --- a/src/Luban.Server/Templates/config/cs_editor_json/table.tpl +++ b/src/Luban.Server/Templates/config/cs_editor_json/table.tpl @@ -6,7 +6,7 @@ namespace {{namespace}} public sealed class {{name}} : Bright.Net.Protocol { {{~for field in fields ~}} - public {{field.ctype.cs_define_type}} {{field.cs_style_name}}; + public {{field.ctype.cs_define_type}} {{field.convention_name}}; {{~end~}} public {{name}}() { @@ -54,7 +54,7 @@ public sealed class {{name}} : Bright.Net.Protocol { return "{{full_name}}{ " {{~for field in fields ~}} - + "{{field.cs_style_name}}:" + {{field.proto_cs_to_string}} + "," + + "{{field.convention_name}}:" + {{field.proto_cs_to_string}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/config/cs_json/bean.tpl b/src/Luban.Server/Templates/config/cs_json/bean.tpl index 78848f1..0290dff 100644 --- a/src/Luban.Server/Templates/config/cs_json/bean.tpl +++ b/src/Luban.Server/Templates/config/cs_json/bean.tpl @@ -23,9 +23,9 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{parent} public {{name}}(JsonElement _json) {{if parent_def_type}} : base(_json) {{end}} { {{~ for field in export_fields ~}} - {{cs_json_deserialize '_json' field.cs_style_name field.name field.ctype}} + {{cs_json_deserialize '_json' field.convention_name field.name field.ctype}} {{~if field.index_field~}} - foreach(var _v in {{field.cs_style_name}}) { {{field.cs_style_name}}_Index.Add(_v.{{field.index_field.cs_style_name}}, _v); } + foreach(var _v in {{field.convention_name}}) { {{field.convention_name}}_Index.Add(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} } @@ -33,9 +33,9 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{parent} public {{name}}({{~for field in hierarchy_export_fields }}{{cs_define_type field.ctype}} {{field.name}}{{if !for.last}},{{end}} {{end}}) {{if parent_def_type}} : base({{- for field in parent_def_type.hierarchy_export_fields }}{{field.name}}{{if !for.last}},{{end}}{{end}}) {{end}} { {{~ for field in export_fields ~}} - this.{{field.cs_style_name}} = {{field.name}}; + this.{{field.convention_name}} = {{field.name}}; {{~if field.index_field~}} - foreach(var _v in {{field.cs_style_name}}) { {{field.cs_style_name}}_Index.Add(_v.{{field.index_field.cs_style_name}}, _v); } + foreach(var _v in {{field.convention_name}}) { {{field.convention_name}}_Index.Add(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} } @@ -61,9 +61,9 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{parent} /// {{field.comment}} /// {{~end~}} - public {{cs_define_type field.ctype}} {{field.cs_style_name}} { get; private set; } + public {{cs_define_type field.ctype}} {{field.convention_name}} { get; private set; } {{~if field.index_field~}} - public readonly Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}> {{field.cs_style_name}}_Index = new Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}>(); + public readonly Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}> {{field.convention_name}}_Index = new Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}>(); {{~end~}} {{~if field.gen_ref~}} public {{field.cs_ref_validator_define}} @@ -110,7 +110,7 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{parent} { return "{{full_name}}{ " {{~ for field in hierarchy_export_fields ~}} - + "{{field.cs_style_name}}:" + {{cs_to_string field.cs_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{cs_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/config/cs_json/table.tpl b/src/Luban.Server/Templates/config/cs_json/table.tpl index dcbe626..9d2a391 100644 --- a/src/Luban.Server/Templates/config/cs_json/table.tpl +++ b/src/Luban.Server/Templates/config/cs_json/table.tpl @@ -33,7 +33,7 @@ public sealed class {{name}} { var _v = {{cs_define_type value_type}}.Deserialize{{value_type.bean.name}}(_row); _dataList.Add(_v); - _dataMap.Add(_v.{{x.index_field.cs_style_name}}, _v); + _dataMap.Add(_v.{{x.index_field.convention_name}}, _v); } } @@ -81,9 +81,9 @@ public sealed class {{name}} /// {{field.comment}} /// {{~end~}} - public {{cs_define_type field.ctype}} {{field.cs_style_name}} => _data.{{field.cs_style_name}}; + public {{cs_define_type field.ctype}} {{field.convention_name}} => _data.{{field.convention_name}}; {{~if field.ref~}} - public {{field.cs_ref_type_name}} {{field.cs_ref_var_name}} => _data.{{field.cs_ref_var_name}}; + public {{field.cs_ref_type_name}} {{field.ref_var_name}} => _data.{{field.ref_var_name}}; {{~end~}} {{~end~}} diff --git a/src/Luban.Server/Templates/config/cs_unity_json/bean.tpl b/src/Luban.Server/Templates/config/cs_unity_json/bean.tpl index bd827c0..213f784 100644 --- a/src/Luban.Server/Templates/config/cs_unity_json/bean.tpl +++ b/src/Luban.Server/Templates/config/cs_unity_json/bean.tpl @@ -23,9 +23,9 @@ public {{x.cs_class_modifier}} partial class {{name}} : {{if parent_def_type}} { public {{name}}(JSONNode _json) {{if parent_def_type}} : base(_json) {{end}} { {{~ for field in export_fields ~}} - {{cs_unity_json_deserialize '_json' field.cs_style_name field.name field.ctype}} + {{cs_unity_json_deserialize '_json' field.convention_name field.name field.ctype}} {{~if field.index_field~}} - foreach(var _v in {{field.cs_style_name}}) { {{field.cs_style_name}}_Index.Add(_v.{{field.index_field.cs_style_name}}, _v); } + foreach(var _v in {{field.convention_name}}) { {{field.convention_name}}_Index.Add(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} } @@ -33,9 +33,9 @@ public {{x.cs_class_modifier}} partial class {{name}} : {{if parent_def_type}} { public {{name}}({{~for field in hierarchy_export_fields }}{{cs_define_type field.ctype}} {{field.name}}{{if !for.last}},{{end}} {{end}}) {{if parent_def_type}} : base({{- for field in parent_def_type.hierarchy_export_fields }}{{field.name}}{{if !for.last}},{{end}}{{end}}) {{end}} { {{~ for field in export_fields ~}} - this.{{field.cs_style_name}} = {{field.name}}; + this.{{field.convention_name}} = {{field.name}}; {{~if field.index_field~}} - foreach(var _v in {{field.cs_style_name}}) { {{field.cs_style_name}}_Index.Add(_v.{{field.index_field.cs_style_name}}, _v); } + foreach(var _v in {{field.convention_name}}) { {{field.convention_name}}_Index.Add(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} } @@ -62,9 +62,9 @@ public {{x.cs_class_modifier}} partial class {{name}} : {{if parent_def_type}} { /// {{field.comment}} /// {{~end~}} - public {{cs_define_type field.ctype}} {{field.cs_style_name}} { get; private set; } + public {{cs_define_type field.ctype}} {{field.convention_name}} { get; private set; } {{~if field.index_field~}} - public readonly Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}> {{field.cs_style_name}}_Index = new Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}>(); + public readonly Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}> {{field.convention_name}}_Index = new Dictionary<{{cs_define_type field.index_field.ctype}}, {{cs_define_type field.ctype.element_type}}>(); {{~end~}} {{~if field.gen_ref~}} public {{field.cs_ref_validator_define}} @@ -111,7 +111,7 @@ public {{x.cs_class_modifier}} partial class {{name}} : {{if parent_def_type}} { { return "{{full_name}}{ " {{~ for field in hierarchy_export_fields ~}} - + "{{field.cs_style_name}}:" + {{cs_to_string field.cs_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{cs_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/config/cs_unity_json/table.tpl b/src/Luban.Server/Templates/config/cs_unity_json/table.tpl index ccd2d18..8421b1f 100644 --- a/src/Luban.Server/Templates/config/cs_unity_json/table.tpl +++ b/src/Luban.Server/Templates/config/cs_unity_json/table.tpl @@ -33,7 +33,7 @@ public sealed class {{name}} { var _v = {{cs_define_type value_type}}.Deserialize{{value_type.bean.name}}(_row); _dataList.Add(_v); - _dataMap.Add(_v.{{x.index_field.cs_style_name}}, _v); + _dataMap.Add(_v.{{x.index_field.convention_name}}, _v); } } @@ -84,9 +84,9 @@ public sealed class {{name}} /// {{field.comment}} /// {{~end~}} - public {{cs_define_type field.ctype}} {{field.cs_style_name}} => _data.{{field.cs_style_name}}; + public {{cs_define_type field.ctype}} {{field.convention_name}} => _data.{{field.convention_name}}; {{~if field.ref~}} - public {{field.cs_ref_type_name}} {{field.cs_ref_var_name}} => _data.{{field.cs_ref_var_name}}; + public {{field.cs_ref_type_name}} {{field.ref_var_name}} => _data.{{field.ref_var_name}}; {{~end~}} {{~end~}} diff --git a/src/Luban.Server/Templates/config/go_bin/bean.tpl b/src/Luban.Server/Templates/config/go_bin/bean.tpl index 3da1e5e..532928f 100644 --- a/src/Luban.Server/Templates/config/go_bin/bean.tpl +++ b/src/Luban.Server/Templates/config/go_bin/bean.tpl @@ -19,7 +19,7 @@ type {{go_full_name}} struct { {{parent_def_type.go_full_name}} {{~end~}} {{~for field in export_fields ~}} - {{field.cs_style_name}} {{go_define_type field.ctype}} + {{field.convention_name}} {{go_define_type field.ctype}} {{~end~}} } @@ -52,7 +52,7 @@ func New{{go_full_name}}_Body(_buf *serialization.ByteBuf) (_v *{{go_full_name}} _v.{{parent_def_type.go_full_name}} = *_p {{~end~}} {{~for field in export_fields ~}} - {{go_deserialize_field field.ctype ("_v." + field.go_style_name) '_buf'}} + {{go_deserialize_field field.ctype ("_v." + field.convention_name) '_buf'}} {{~end~}} return } @@ -66,7 +66,7 @@ func New{{go_full_name}}(_buf *serialization.ByteBuf) (_v *{{go_full_name}}, err _v.{{parent_def_type.go_full_name}} = *_p {{~end~}} {{~for field in export_fields ~}} - {{go_deserialize_field field.ctype ("_v." + field.go_style_name) '_buf'}} + {{go_deserialize_field field.ctype ("_v." + field.convention_name) '_buf'}} {{~end~}} return } diff --git a/src/Luban.Server/Templates/config/go_bin/table.tpl b/src/Luban.Server/Templates/config/go_bin/table.tpl index e22e42b..0d06c9d 100644 --- a/src/Luban.Server/Templates/config/go_bin/table.tpl +++ b/src/Luban.Server/Templates/config/go_bin/table.tpl @@ -34,12 +34,12 @@ func New{{go_full_name}}(_buf *serialization.ByteBuf) (*{{go_full_name}}, error) {{~if value_type.is_dynamic ~}} {{~for child in value_type.bean.hierarchy_not_abstract_children~}} if __v, __is := _v.(*{{child.go_full_name}}) ; __is { - dataMap[__v.{{index_field.cs_style_name}}] = _v + dataMap[__v.{{index_field.convention_name}}] = _v continue } {{~end~}} {{~else~}} - dataMap[_v.{{index_field.cs_style_name}}] = _v + dataMap[_v.{{index_field.convention_name}}] = _v {{~end~}} } } diff --git a/src/Luban.Server/Templates/config/go_json/bean.tpl b/src/Luban.Server/Templates/config/go_json/bean.tpl index 89033bf..1327744 100644 --- a/src/Luban.Server/Templates/config/go_json/bean.tpl +++ b/src/Luban.Server/Templates/config/go_json/bean.tpl @@ -15,7 +15,7 @@ type {{go_full_name}} struct { {{parent_def_type.go_full_name}} {{~end~}} {{~for field in export_fields ~}} - {{field.cs_style_name}} {{go_define_type field.ctype}} + {{field.convention_name}} {{go_define_type field.ctype}} {{~end~}} } @@ -49,7 +49,7 @@ func New{{go_full_name}}_Body(_buf map[string]interface{}) (_v *{{go_full_name}} _v.{{parent_def_type.go_full_name}} = *_p {{~end~}} {{~for field in export_fields ~}} - {{go_deserialize_json_field field.ctype ("_v." + field.go_style_name) field.name '_buf'}} + {{go_deserialize_json_field field.ctype ("_v." + field.convention_name) field.name '_buf'}} {{~end~}} return } @@ -62,7 +62,7 @@ func New{{go_full_name}}(_buf map[string]interface{}) (_v *{{go_full_name}}, err _v.{{parent_def_type.go_full_name}} = *_p {{~end~}} {{~for field in export_fields ~}} - {{go_deserialize_json_field field.ctype ("_v." + field.go_style_name) field.name '_buf'}} + {{go_deserialize_json_field field.ctype ("_v." + field.convention_name) field.name '_buf'}} {{~end~}} return } diff --git a/src/Luban.Server/Templates/config/go_json/table.tpl b/src/Luban.Server/Templates/config/go_json/table.tpl index 2e28bec..1897dc7 100644 --- a/src/Luban.Server/Templates/config/go_json/table.tpl +++ b/src/Luban.Server/Templates/config/go_json/table.tpl @@ -28,12 +28,12 @@ func New{{go_full_name}}(_buf []map[string]interface{}) (*{{go_full_name}}, erro {{~if value_type.is_dynamic ~}} {{~for child in value_type.bean.hierarchy_not_abstract_children~}} if __v, __is := _v.(*{{child.go_full_name}}) ; __is { - dataMap[__v.{{index_field.cs_style_name}}] = _v + dataMap[__v.{{index_field.convention_name}}] = _v continue } {{~end~}} {{~else~}} - dataMap[_v.{{index_field.cs_style_name}}] = _v + dataMap[_v.{{index_field.convention_name}}] = _v {{~end~}} } } diff --git a/src/Luban.Server/Templates/config/java_bin/bean.tpl b/src/Luban.Server/Templates/config/java_bin/bean.tpl index 65d77e8..86b2e3a 100644 --- a/src/Luban.Server/Templates/config/java_bin/bean.tpl +++ b/src/Luban.Server/Templates/config/java_bin/bean.tpl @@ -20,10 +20,10 @@ public {{x.java_class_modifier}} class {{name}}{{if parent_def_type}} extends {{ super(_buf); {{~end~}} {{~ for field in export_fields ~}} - {{java_deserialize '_buf' field.java_style_name field.ctype}} + {{java_deserialize '_buf' field.convention_name field.ctype}} {{~if field.index_field~}} - for({{java_box_define_type field.ctype.element_type}} _v : {{field.java_style_name}}) { - {{field.java_style_name}}_Index.put(_v.{{field.index_field.java_style_name}}, _v); + for({{java_box_define_type field.ctype.element_type}} _v : {{field.convention_name}}) { + {{field.convention_name}}_Index.put(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} @@ -34,10 +34,10 @@ public {{x.java_class_modifier}} class {{name}}{{if parent_def_type}} extends {{ super({{ for field in parent_def_type.hierarchy_export_fields }}{{field.name}}{{if !for.last}}, {{end}}{{end}}); {{~end~}} {{~ for field in export_fields ~}} - this.{{field.java_style_name}} = {{field.name}}; + this.{{field.convention_name}} = {{field.name}}; {{~if field.index_field~}} - for({{java_box_define_type field.ctype.element_type}} _v : {{field.java_style_name}}) { - {{field.java_style_name}}_Index.put(_v.{{field.index_field.java_style_name}}, _v); + for({{java_box_define_type field.ctype.element_type}} _v : {{field.convention_name}}) { + {{field.convention_name}}_Index.put(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} @@ -60,9 +60,9 @@ public {{x.java_class_modifier}} class {{name}}{{if parent_def_type}} extends {{ * {{field.comment}} */ {{~end~}} - public final {{java_define_type field.ctype}} {{field.java_style_name}}; + public final {{java_define_type field.ctype}} {{field.convention_name}}; {{~if field.index_field~}} - public final java.util.HashMap<{{java_box_define_type field.index_field.ctype}}, {{java_box_define_type field.ctype.element_type}}> {{field.java_style_name}}_Index = new java.util.HashMap<>(); + public final java.util.HashMap<{{java_box_define_type field.index_field.ctype}}, {{java_box_define_type field.ctype.element_type}}> {{field.convention_name}}_Index = new java.util.HashMap<>(); {{~end~}} {{~if field.gen_ref~}} public {{field.java_ref_validator_define}} @@ -98,7 +98,7 @@ public {{x.java_class_modifier}} class {{name}}{{if parent_def_type}} extends {{ public String toString() { return "{{full_name}}{ " {{~for field in hierarchy_export_fields ~}} - + "{{field.java_style_name}}:" + {{java_to_string field.java_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{java_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/config/java_bin/table.tpl b/src/Luban.Server/Templates/config/java_bin/table.tpl index 466e65e..7f551fd 100644 --- a/src/Luban.Server/Templates/config/java_bin/table.tpl +++ b/src/Luban.Server/Templates/config/java_bin/table.tpl @@ -28,7 +28,7 @@ public final class {{name}} { {{java_box_define_type value_type}} _v; {{java_deserialize '_buf' '_v' value_type}} _dataList.add(_v); - _dataMap.put(_v.{{x.index_field.java_style_name}}, _v); + _dataMap.put(_v.{{x.index_field.convention_name}}, _v); } } @@ -65,7 +65,7 @@ public final class {{name}} { * {{field.comment}} */ {{~end~}} - public {{java_define_type field.ctype}} {{field.java_getter_name}}() { return _data.{{field.java_style_name}}; } + public {{java_define_type field.ctype}} {{field.convention_getter_name}}() { return _data.{{field.convention_name}}; } {{~end~}} public void resolve(java.util.HashMap _tables) { diff --git a/src/Luban.Server/Templates/config/java_json/bean.tpl b/src/Luban.Server/Templates/config/java_json/bean.tpl index 216e72b..1d6843b 100644 --- a/src/Luban.Server/Templates/config/java_json/bean.tpl +++ b/src/Luban.Server/Templates/config/java_json/bean.tpl @@ -21,10 +21,10 @@ public {{x.java_class_modifier}} class {{name}}{{if parent_def_type}} extends {{ super(__json__); {{~end~}} {{~ for field in export_fields ~}} - {{java_json_deserialize '__json__' field.java_style_name field.name field.ctype}} + {{java_json_deserialize '__json__' field.convention_name field.name field.ctype}} {{~if field.index_field~}} - for({{java_box_define_type field.ctype.element_type}} _v : {{field.java_style_name}}) { - {{field.java_style_name}}_Index.put(_v.{{field.index_field.java_style_name}}, _v); + for({{java_box_define_type field.ctype.element_type}} _v : {{field.convention_name}}) { + {{field.convention_name}}_Index.put(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} @@ -35,10 +35,10 @@ public {{x.java_class_modifier}} class {{name}}{{if parent_def_type}} extends {{ super({{ for field in parent_def_type.hierarchy_export_fields }}{{field.name}}{{if !for.last}}, {{end}}{{end}}); {{~end~}} {{~ for field in export_fields ~}} - this.{{field.java_style_name}} = {{field.name}}; + this.{{field.convention_name}} = {{field.name}}; {{~if field.index_field~}} - for({{java_box_define_type field.ctype.element_type}} _v : {{field.java_style_name}}) { - {{field.java_style_name}}_Index.put(_v.{{field.index_field.java_style_name}}, _v); + for({{java_box_define_type field.ctype.element_type}} _v : {{field.convention_name}}) { + {{field.convention_name}}_Index.put(_v.{{field.index_field.convention_name}}, _v); } {{~end~}} {{~end~}} @@ -63,9 +63,9 @@ public {{x.java_class_modifier}} class {{name}}{{if parent_def_type}} extends {{ * {{field.comment}} */ {{~end~}} - public final {{java_define_type field.ctype}} {{field.java_style_name}}; + public final {{java_define_type field.ctype}} {{field.convention_name}}; {{~if field.index_field~}} - public final java.util.HashMap<{{java_box_define_type field.index_field.ctype}}, {{java_box_define_type field.ctype.element_type}}> {{field.java_style_name}}_Index = new java.util.HashMap<>(); + public final java.util.HashMap<{{java_box_define_type field.index_field.ctype}}, {{java_box_define_type field.ctype.element_type}}> {{field.convention_name}}_Index = new java.util.HashMap<>(); {{~end~}} {{~if field.gen_ref~}} public {{field.java_ref_validator_define}} @@ -101,7 +101,7 @@ public {{x.java_class_modifier}} class {{name}}{{if parent_def_type}} extends {{ public String toString() { return "{{full_name}}{ " {{~for field in hierarchy_export_fields ~}} - + "{{field.java_style_name}}:" + {{java_to_string field.java_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{java_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/config/java_json/table.tpl b/src/Luban.Server/Templates/config/java_json/table.tpl index 16fc260..180f415 100644 --- a/src/Luban.Server/Templates/config/java_json/table.tpl +++ b/src/Luban.Server/Templates/config/java_json/table.tpl @@ -28,7 +28,7 @@ public final class {{name}} { {{java_box_define_type value_type}} _v; {{java_deserialize '_e_.getAsJsonObject()' '_v' value_type}} _dataList.add(_v); - _dataMap.put(_v.{{x.index_field.java_style_name}}, _v); + _dataMap.put(_v.{{x.index_field.convention_name}}, _v); } } @@ -65,7 +65,7 @@ public final class {{name}} { * {{field.comment}} */ {{~end~}} - public {{java_define_type field.ctype}} {{field.java_getter_name}}() { return _data.{{field.java_style_name}}; } + public {{java_define_type field.ctype}} {{field.convention_getter_name}}() { return _data.{{field.convention_name}}; } {{~end~}} public void resolve(java.util.HashMap _tables) { diff --git a/src/Luban.Server/Templates/config/lua_bin/all.tpl b/src/Luban.Server/Templates/config/lua_bin/all.tpl index b0fbd5d..580e7bc 100644 --- a/src/Luban.Server/Templates/config/lua_bin/all.tpl +++ b/src/Luban.Server/Templates/config/lua_bin/all.tpl @@ -95,9 +95,9 @@ local function InitTypes(methods) local o = { {{~ for field in bean.hierarchy_export_fields ~}} {{~if !(need_marshal_bool_prefix field.ctype)~}} - {{field.name}} = {{lua_undering_deserialize 'bs' field.ctype}}, + {{field.convention_name}} = {{lua_undering_deserialize 'bs' field.ctype}}, {{~else~}} - {{field.name}} = {{if !field.ctype.is_bool}}readBool(bs) and {{lua_undering_deserialize 'bs' field.ctype}} or nil {{-else-}} readNullableBool(bs) {{-end-}}, + {{field.convention_name}} = {{if !field.ctype.is_bool}}readBool(bs) and {{lua_undering_deserialize 'bs' field.ctype}} or nil {{-else-}} readNullableBool(bs) {{-end-}}, {{~end~}} {{~end~}} } diff --git a/src/Luban.Server/Templates/config/lua_lua/all.tpl b/src/Luban.Server/Templates/config/lua_lua/all.tpl index 94c073a..2ad16d3 100644 --- a/src/Luban.Server/Templates/config/lua_lua/all.tpl +++ b/src/Luban.Server/Templates/config/lua_lua/all.tpl @@ -13,12 +13,12 @@ local beans = {} {{~ for bean in beans ~}} ---@class {{bean.full_name}} {{if bean.parent_def_type}}:{{bean.parent}} {{end}} {{~ for field in bean.export_fields~}} ----@field public {{field.name}} {{lua_comment_type field.ctype}} +---@field public {{field.convention_name}} {{lua_comment_type field.ctype}} {{~end~}} beans['{{bean.full_name}}'] = { {{~ for field in bean.hierarchy_export_fields ~}} - { name='{{field.name}}', type='{{lua_comment_type field.ctype}}'}, + { name='{{field.convention_name}}', type='{{lua_comment_type field.ctype}}'}, {{~end~}} } diff --git a/src/Luban.Server/Templates/config/python_json/bean.tpl b/src/Luban.Server/Templates/config/python_json/bean.tpl index b5bfd6b..3104521 100644 --- a/src/Luban.Server/Templates/config/python_json/bean.tpl +++ b/src/Luban.Server/Templates/config/python_json/bean.tpl @@ -33,7 +33,7 @@ class {{name}} {{if parent_def_type}}({{parent_def_type.py_full_name}}){{else if {{parent_def_type.py_full_name}}.__init__(self, _json_) {{~end~}} {{~ for field in export_fields ~}} - {{py3_deserialize_field ('self.' + field.py_style_name) '_json_' field.name field.ctype}} + {{py3_deserialize_field ('self.' + field.convention_name) '_json_' field.name field.ctype}} {{~end~}} {{~if export_fields.empty?}} pass diff --git a/src/Luban.Server/Templates/config/python_json/table.tpl b/src/Luban.Server/Templates/config/python_json/table.tpl index 634d11e..bb8e6e3 100644 --- a/src/Luban.Server/Templates/config/python_json/table.tpl +++ b/src/Luban.Server/Templates/config/python_json/table.tpl @@ -16,7 +16,7 @@ class {{name}}: for _json2_ in _json_: {{py3_deserialize_value '_v' '_json2_' value_type}} self._dataList.append(_v) - self._dataMap[_v.{{x.index_field.py_style_name}}] = _v + self._dataMap[_v.{{x.index_field.convention_name}}] = _v def getDataMap(self) : return self._dataMap def getDataList(self) : return self._dataList @@ -37,6 +37,6 @@ class {{name}}: {{field.comment}} ''' {{~end~}} - def {{field.py_style_name}}(self) : return self._data.{{field.py_style_name}} + def {{field.convention_name}}(self) : return self._data.{{field.convention_name}} {{~end~}} {{~end~}} diff --git a/src/Luban.Server/Templates/config/rust_json/bean.tpl b/src/Luban.Server/Templates/config/rust_json/bean.tpl index 7a75cd1..20ded90 100644 --- a/src/Luban.Server/Templates/config/rust_json/bean.tpl +++ b/src/Luban.Server/Templates/config/rust_json/bean.tpl @@ -15,7 +15,7 @@ #[allow(non_camel_case_types)] pub struct {{name}} { {{~for field in hierarchy_export_fields~}} -pub {{field.rust_style_name}}: {{rust_define_type field.ctype}}, +pub {{field.convention_name}}: {{rust_define_type field.ctype}}, {{~end~}} } @@ -24,7 +24,7 @@ impl {{name}} { pub fn new(__js: &json::JsonValue) -> Result<{{name}}, LoadError> { let __b = {{name}} { {{~for field in hierarchy_export_fields~}} - {{field.rust_style_name}}: {{rust_json_constructor ('__js["' + field.name + '"]') field.ctype}}, + {{field.convention_name}}: {{rust_json_constructor ('__js["' + field.name + '"]') field.ctype}}, {{~end~}} }; Ok(__b) diff --git a/src/Luban.Server/Templates/config/rust_json/table.tpl b/src/Luban.Server/Templates/config/rust_json/table.tpl index 8285c0f..3fc3e70 100644 --- a/src/Luban.Server/Templates/config/rust_json/table.tpl +++ b/src/Luban.Server/Templates/config/rust_json/table.tpl @@ -37,11 +37,11 @@ impl {{name}}{ let __v2 = std::rc::Rc::clone(&__v); t.data_list.push(__v); {{~if !value_type.bean.is_abstract_type~}} - t.data_map.insert(__v2.{{x.index_field.rust_style_name}}.clone(), __v2); + t.data_map.insert(__v2.{{x.index_field.convention_name}}.clone(), __v2); {{~else~}} match &*__v2 { {{~for child in value_type.bean.hierarchy_not_abstract_children~}} - {{rust_class_name value_type}}::{{child.name}}(__w__) => t.data_map.insert(__w__.{{x.index_field.rust_style_name}}.clone(), __v2), + {{rust_class_name value_type}}::{{child.name}}(__w__) => t.data_map.insert(__w__.{{x.index_field.convention_name}}.clone(), __v2), {{~end~}} }; {{~end~}} diff --git a/src/Luban.Server/Templates/config/typescript_bin/bean.tpl b/src/Luban.Server/Templates/config/typescript_bin/bean.tpl index 9aad858..f0c584d 100644 --- a/src/Luban.Server/Templates/config/typescript_bin/bean.tpl +++ b/src/Luban.Server/Templates/config/typescript_bin/bean.tpl @@ -29,7 +29,7 @@ export {{if x.is_abstract_type}} abstract {{end}} class {{name}} {{if parent_def super(_buf_) {{~end~}} {{~ for field in export_fields ~}} - {{ts_bin_constructor ('this.' + field.ts_style_name) '_buf_' field.ctype}} + {{ts_bin_constructor ('this.' + field.convention_name) '_buf_' field.ctype}} {{~end~}} } @@ -39,7 +39,7 @@ export {{if x.is_abstract_type}} abstract {{end}} class {{name}} {{if parent_def * {{field.comment}} */ {{~end~}} - readonly {{field.ts_style_name}}: {{ts_define_type field.ctype}} + readonly {{field.convention_name}}: {{ts_define_type field.ctype}} {{~if field.gen_ref~}} {{field.ts_ref_validator_define}} {{~end~}} diff --git a/src/Luban.Server/Templates/config/typescript_bin/table.tpl b/src/Luban.Server/Templates/config/typescript_bin/table.tpl index 09aa25e..2969fd6 100644 --- a/src/Luban.Server/Templates/config/typescript_bin/table.tpl +++ b/src/Luban.Server/Templates/config/typescript_bin/table.tpl @@ -24,7 +24,7 @@ export class {{name}} { let _v: {{ts_define_type value_type}} {{ts_bin_constructor '_v' '_buf_' value_type}} this._dataList.push(_v) - this._dataMap.set(_v.{{x.index_field.ts_style_name}}, _v) + this._dataMap.set(_v.{{x.index_field.convention_name}}, _v) } } @@ -56,7 +56,7 @@ export class {{name}} { * {{field.comment}} */ {{~end~}} - get {{field.ts_style_name}}(): {{ts_define_type field.ctype}} { return this._data.{{field.ts_style_name}} } + get {{field.convention_name}}(): {{ts_define_type field.ctype}} { return this._data.{{field.convention_name}} } {{~end~}} resolve(_tables: Map) { diff --git a/src/Luban.Server/Templates/config/typescript_json/bean.tpl b/src/Luban.Server/Templates/config/typescript_json/bean.tpl index 7ce0d1e..9bda0d2 100644 --- a/src/Luban.Server/Templates/config/typescript_json/bean.tpl +++ b/src/Luban.Server/Templates/config/typescript_json/bean.tpl @@ -32,7 +32,7 @@ export {{if x.is_abstract_type}}abstract {{end}}class {{name}}{{if parent_def_ty {{~if !field.ctype.is_nullable~}} if (_json_.{{field.name}} === undefined) { throw new Error() } {{~end~}} - {{ts_json_constructor ('this.' + field.ts_style_name) ( '_json_.' + field.name) field.ctype}} + {{ts_json_constructor ('this.' + field.convention_name) ( '_json_.' + field.name) field.ctype}} {{~end~}} } @@ -42,7 +42,7 @@ export {{if x.is_abstract_type}}abstract {{end}}class {{name}}{{if parent_def_ty * {{field.comment}} */ {{~end~}} - readonly {{field.ts_style_name}}: {{ts_define_type field.ctype}} + readonly {{field.convention_name}}: {{ts_define_type field.ctype}} {{~if field.gen_ref~}} {{field.ts_ref_validator_define}} {{~end~}} diff --git a/src/Luban.Server/Templates/config/typescript_json/table.tpl b/src/Luban.Server/Templates/config/typescript_json/table.tpl index 4f710ad..cba1a08 100644 --- a/src/Luban.Server/Templates/config/typescript_json/table.tpl +++ b/src/Luban.Server/Templates/config/typescript_json/table.tpl @@ -22,7 +22,7 @@ export class {{name}}{ let _v: {{ts_define_type value_type}} {{ts_json_constructor '_v' '_json2_' value_type}} this._dataList.push(_v) - this._dataMap.set(_v.{{x.index_field.ts_style_name}}, _v) + this._dataMap.set(_v.{{x.index_field.convention_name}}, _v) } } @@ -53,7 +53,7 @@ export class {{name}}{ * {{field.comment}} */ {{~end~}} - get {{field.ts_style_name}}(): {{ts_define_type field.ctype}} { return this._data.{{field.ts_style_name}}; } + get {{field.convention_name}}(): {{ts_define_type field.ctype}} { return this._data.{{field.convention_name}}; } {{~end~}} resolve(_tables: Map) { diff --git a/src/Luban.Server/Templates/db/cs_async/bean.tpl b/src/Luban.Server/Templates/db/cs_async/bean.tpl index f8948d5..e7db776 100644 --- a/src/Luban.Server/Templates/db/cs_async/bean.tpl +++ b/src/Luban.Server/Templates/db/cs_async/bean.tpl @@ -20,7 +20,7 @@ namespace {{x.namespace_with_top_module}} public interface {{readonly_name}} {{if parent_def_type}}: IReadOnly{{x.parent_def_type.name}} {{end}} { {{~ for field in fields~}} - {{db_cs_readonly_define_type field.ctype}} {{field.cs_style_name}} { get; } + {{db_cs_readonly_define_type field.ctype}} {{field.convention_name}} { get; } {{~end~}} } @@ -68,7 +68,7 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{x.paren /// {{field.comment}} /// {{~end~}} - public {{db_cs_define_type ctype}} {{field.cs_style_name}} + public {{db_cs_define_type ctype}} {{field.convention_name}} { get { @@ -109,7 +109,7 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{x.paren /// {{field.comment}} /// {{~end~}} - public {{db_cs_define_type ctype}} {{field.cs_style_name}} => {{field.internal_name}}; + public {{db_cs_define_type ctype}} {{field.convention_name}} => {{field.internal_name}}; {{~end~}} {{~if ctype.bean || ctype.element_type ~}} @@ -118,14 +118,14 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{x.paren /// {{field.comment}} /// {{~end~}} - {{db_cs_readonly_define_type ctype}} {{readonly_name}}.{{field.cs_style_name}} => {{field.internal_name}}; + {{db_cs_readonly_define_type ctype}} {{readonly_name}}.{{field.convention_name}} => {{field.internal_name}}; {{~else if ctype.is_map~}} {{~if field.comment != '' ~}} /// /// {{field.comment}} /// {{~end~}} - {{db_cs_readonly_define_type ctype}} {{readonly_name}}.{{field.cs_style_name}} => new Bright.Transaction.Collections.PReadOnlyMap<{{db_cs_readonly_define_type ctype.key_type}}, {{db_cs_readonly_define_type ctype.value_type}}, {{db_cs_define_type ctype.value_type}}>({{field.internal_name}}); + {{db_cs_readonly_define_type ctype}} {{readonly_name}}.{{field.convention_name}} => new Bright.Transaction.Collections.PReadOnlyMap<{{db_cs_readonly_define_type ctype.key_type}}, {{db_cs_readonly_define_type ctype.value_type}}, {{db_cs_define_type ctype.value_type}}>({{field.internal_name}}); {{~end~}} {{~end~}} @@ -193,7 +193,7 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{x.paren { return "{{full_name}}{ " {{~ for field in hierarchy_fields~}} - + "{{field.cs_style_name}}:" + {{cs_to_string field.cs_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{cs_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/db/cs_sync/bean.tpl b/src/Luban.Server/Templates/db/cs_sync/bean.tpl index f8948d5..e7db776 100644 --- a/src/Luban.Server/Templates/db/cs_sync/bean.tpl +++ b/src/Luban.Server/Templates/db/cs_sync/bean.tpl @@ -20,7 +20,7 @@ namespace {{x.namespace_with_top_module}} public interface {{readonly_name}} {{if parent_def_type}}: IReadOnly{{x.parent_def_type.name}} {{end}} { {{~ for field in fields~}} - {{db_cs_readonly_define_type field.ctype}} {{field.cs_style_name}} { get; } + {{db_cs_readonly_define_type field.ctype}} {{field.convention_name}} { get; } {{~end~}} } @@ -68,7 +68,7 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{x.paren /// {{field.comment}} /// {{~end~}} - public {{db_cs_define_type ctype}} {{field.cs_style_name}} + public {{db_cs_define_type ctype}} {{field.convention_name}} { get { @@ -109,7 +109,7 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{x.paren /// {{field.comment}} /// {{~end~}} - public {{db_cs_define_type ctype}} {{field.cs_style_name}} => {{field.internal_name}}; + public {{db_cs_define_type ctype}} {{field.convention_name}} => {{field.internal_name}}; {{~end~}} {{~if ctype.bean || ctype.element_type ~}} @@ -118,14 +118,14 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{x.paren /// {{field.comment}} /// {{~end~}} - {{db_cs_readonly_define_type ctype}} {{readonly_name}}.{{field.cs_style_name}} => {{field.internal_name}}; + {{db_cs_readonly_define_type ctype}} {{readonly_name}}.{{field.convention_name}} => {{field.internal_name}}; {{~else if ctype.is_map~}} {{~if field.comment != '' ~}} /// /// {{field.comment}} /// {{~end~}} - {{db_cs_readonly_define_type ctype}} {{readonly_name}}.{{field.cs_style_name}} => new Bright.Transaction.Collections.PReadOnlyMap<{{db_cs_readonly_define_type ctype.key_type}}, {{db_cs_readonly_define_type ctype.value_type}}, {{db_cs_define_type ctype.value_type}}>({{field.internal_name}}); + {{db_cs_readonly_define_type ctype}} {{readonly_name}}.{{field.convention_name}} => new Bright.Transaction.Collections.PReadOnlyMap<{{db_cs_readonly_define_type ctype.key_type}}, {{db_cs_readonly_define_type ctype.value_type}}, {{db_cs_define_type ctype.value_type}}>({{field.internal_name}}); {{~end~}} {{~end~}} @@ -193,7 +193,7 @@ public {{x.cs_class_modifier}} class {{name}} : {{if parent_def_type}} {{x.paren { return "{{full_name}}{ " {{~ for field in hierarchy_fields~}} - + "{{field.cs_style_name}}:" + {{cs_to_string field.cs_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{cs_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/db/typescript/bean.tpl b/src/Luban.Server/Templates/db/typescript/bean.tpl index 316cb16..63e812f 100644 --- a/src/Luban.Server/Templates/db/typescript/bean.tpl +++ b/src/Luban.Server/Templates/db/typescript/bean.tpl @@ -53,7 +53,7 @@ export {{x.ts_class_modifier}} class {{name}} extends {{if parent_def_type}} {{x * {{field.comment}} */ {{~end~}} - get {{field.ts_style_name}}(): {{db_ts_define_type ctype}} { + get {{field.convention_name}}(): {{db_ts_define_type ctype}} { if (this.isManaged) { var txn = TransactionContext.current if (txn == null) return {{field.internal_name_with_this}} @@ -69,7 +69,7 @@ export {{x.ts_class_modifier}} class {{name}} extends {{if parent_def_type}} {{x * {{field.comment}} */ {{~end~}} - set {{field.ts_style_name}}(value: {{db_ts_define_type ctype}}) { + set {{field.convention_name}}(value: {{db_ts_define_type ctype}}) { {{~if db_field_cannot_null~}} if (value == null) throw new Error() {{~end~}} @@ -90,7 +90,7 @@ export {{x.ts_class_modifier}} class {{name}} extends {{if parent_def_type}} {{x * {{field.comment}} */ {{~end~}} - get {{field.ts_style_name}}(): {{db_ts_define_type ctype}} { return {{field.internal_name_with_this}} } + get {{field.convention_name}}(): {{db_ts_define_type ctype}} { return {{field.internal_name_with_this}} } {{~end~}} {{~end~}} @@ -148,7 +148,7 @@ export {{x.ts_class_modifier}} class {{name}} extends {{if parent_def_type}} {{x toString(): string { return '{{full_name}}{ ' {{~ for field in hierarchy_fields~}} - + '{{field.ts_style_name}}:' + {{ts_to_string ('this.' + field.ts_style_name) field.ctype}} + ',' + + '{{field.convention_name}}:' + {{ts_to_string ('this.' + field.convention_name) field.ctype}} + ',' {{~end~}} + '}' } diff --git a/src/Luban.Server/Templates/proto/cs/bean.tpl b/src/Luban.Server/Templates/proto/cs/bean.tpl index e5d9e77..fa223c7 100644 --- a/src/Luban.Server/Templates/proto/cs/bean.tpl +++ b/src/Luban.Server/Templates/proto/cs/bean.tpl @@ -30,9 +30,9 @@ namespace {{x.namespace_with_top_module}} { {{~ for field in fields ~}} {{~if cs_need_init field.ctype~}} - {{cs_init_field_ctor_value field.cs_style_name field.ctype}} + {{cs_init_field_ctor_value field.convention_name field.ctype}} {{~else if is_value_type~}} - {{field.cs_style_name}} = default; + {{field.convention_name}} = default; {{~end~}} {{~end~}} } @@ -80,7 +80,7 @@ namespace {{x.namespace_with_top_module}} /// {{field.comment}} /// {{~end~}} - public {{cs_define_type field.ctype}} {{field.cs_style_name}}; + public {{cs_define_type field.ctype}} {{field.convention_name}}; {{~end~}} @@ -91,14 +91,14 @@ namespace {{x.namespace_with_top_module}} public override void Serialize(ByteBuf _buf) { {{~ for field in hierarchy_fields ~}} - {{cs_serialize '_buf' field.cs_style_name field.ctype}} + {{cs_serialize '_buf' field.convention_name field.ctype}} {{~end~}} } public override void Deserialize(ByteBuf _buf) { {{~ for field in hierarchy_fields ~}} - {{cs_deserialize '_buf' field.cs_style_name field.ctype}} + {{cs_deserialize '_buf' field.convention_name field.ctype}} {{~end~}} } @@ -106,7 +106,7 @@ namespace {{x.namespace_with_top_module}} { return "{{full_name}}{ " {{~ for field in hierarchy_fields ~}} - + "{{field.cs_style_name}}:" + {{cs_to_string field.cs_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{cs_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/proto/cs/proto.tpl b/src/Luban.Server/Templates/proto/cs/proto.tpl index 31cf50f..0fbfddb 100644 --- a/src/Luban.Server/Templates/proto/cs/proto.tpl +++ b/src/Luban.Server/Templates/proto/cs/proto.tpl @@ -21,7 +21,7 @@ namespace {{x.namespace_with_top_module}} /// {{field.comment}} /// {{~end~}} - public {{cs_define_type field.ctype}} {{field.cs_style_name}}; + public {{cs_define_type field.ctype}} {{field.convention_name}}; {{~end~}} @@ -33,7 +33,7 @@ namespace {{x.namespace_with_top_module}} { {{~ for field in fields ~}} {{~if cs_need_init field.ctype~}} - {{cs_init_field_ctor_value field.cs_style_name field.ctype}} + {{cs_init_field_ctor_value field.convention_name field.ctype}} {{~end~}} {{~end~}} } @@ -47,14 +47,14 @@ namespace {{x.namespace_with_top_module}} public override void Serialize(ByteBuf _buf) { {{~ for field in fields ~}} - {{cs_serialize '_buf' field.cs_style_name field.ctype}} + {{cs_serialize '_buf' field.convention_name field.ctype}} {{~end~}} } public override void Deserialize(ByteBuf _buf) { {{~ for field in fields ~}} - {{cs_deserialize '_buf' field.cs_style_name field.ctype}} + {{cs_deserialize '_buf' field.convention_name field.ctype}} {{~end~}} } @@ -72,7 +72,7 @@ namespace {{x.namespace_with_top_module}} { return "{{full_name}}{ " {{~ for field in fields ~}} - + "{{field.cs_style_name}}:" + {{cs_to_string field.cs_style_name field.ctype}} + "," + + "{{field.convention_name}}:" + {{cs_to_string field.convention_name field.ctype}} + "," {{~end~}} + "}"; } diff --git a/src/Luban.Server/Templates/proto/typescript/bean.tpl b/src/Luban.Server/Templates/proto/typescript/bean.tpl index 033aeb3..16a8936 100644 --- a/src/Luban.Server/Templates/proto/typescript/bean.tpl +++ b/src/Luban.Server/Templates/proto/typescript/bean.tpl @@ -48,13 +48,13 @@ export {{if x.is_abstract_type}} abstract {{end}} class {{name}} extends {{if pa * {{field.comment}} */ {{~end~}} - {{field.ts_style_name}}{{if field.is_nullable}}?{{end}} : {{ts_define_type field.ctype}} + {{field.convention_name}}{{if field.is_nullable}}?{{end}} : {{ts_define_type field.ctype}} {{~end~}} constructor() { super() {{~ for field in fields ~}} - this.{{field.ts_style_name}} = {{ts_ctor_default_value field.ctype}} + this.{{field.convention_name}} = {{ts_ctor_default_value field.ctype}} {{~end~}} } @@ -64,7 +64,7 @@ export {{if x.is_abstract_type}} abstract {{end}} class {{name}} extends {{if pa super.serialize(_buf_) {{~end~}} {{~ for field in fields ~}} - {{ts_bin_serialize ('this.' + field.ts_style_name) '_buf_' field.ctype}} + {{ts_bin_serialize ('this.' + field.convention_name) '_buf_' field.ctype}} {{~end~}} } @@ -73,14 +73,14 @@ export {{if x.is_abstract_type}} abstract {{end}} class {{name}} extends {{if pa super.deserialize(_buf_) {{~end~}} {{~ for field in fields ~}} - {{ts_bin_deserialize ('this.' + field.ts_style_name) '_buf_' field.ctype}} + {{ts_bin_deserialize ('this.' + field.convention_name) '_buf_' field.ctype}} {{~end~}} } toString(): string { return '{{full_name}}{ ' {{~ for field in hierarchy_fields ~}} - + '{{field.ts_style_name}}:' + this.{{field.ts_style_name}} + ',' + + '{{field.convention_name}}:' + this.{{field.convention_name}} + ',' {{~end~}} + '}' } diff --git a/src/Luban.Server/Templates/proto/typescript/proto.tpl b/src/Luban.Server/Templates/proto/typescript/proto.tpl index af7a897..a515501 100644 --- a/src/Luban.Server/Templates/proto/typescript/proto.tpl +++ b/src/Luban.Server/Templates/proto/typescript/proto.tpl @@ -22,32 +22,32 @@ export class {{name}} extends Protocol { * {{field.comment}} */ {{~end~}} - {{field.ts_style_name}}{{if field.is_nullable}}?{{end}} : {{ts_define_type field.ctype}} + {{field.convention_name}}{{if field.is_nullable}}?{{end}} : {{ts_define_type field.ctype}} {{~end~}} constructor() { super() {{~ for field in fields ~}} - this.{{field.ts_style_name}} = {{ts_ctor_default_value field.ctype}} + this.{{field.convention_name}} = {{ts_ctor_default_value field.ctype}} {{~end~}} } serialize(_buf_ : ByteBuf) { {{~ for field in fields ~}} - {{ts_bin_serialize ('this.' + field.ts_style_name) '_buf_' field.ctype}} + {{ts_bin_serialize ('this.' + field.convention_name) '_buf_' field.ctype}} {{~end~}} } deserialize(_buf_ : ByteBuf) { {{~ for field in fields ~}} - {{ts_bin_deserialize ('this.' + field.ts_style_name) '_buf_' field.ctype}} + {{ts_bin_deserialize ('this.' + field.convention_name) '_buf_' field.ctype}} {{~end~}} } toString(): string { return '{{full_name}}{ ' {{~ for field in fields ~}} - + '{{field.ts_style_name}}:' + this.{{field.ts_style_name}} + ',' + + '{{field.convention_name}}:' + this.{{field.convention_name}} + ',' {{~end~}} + '}' }