代码拉取完成,页面将自动刷新
package cssrc
// 报错行号+3
const templateText = `// Generated by gitee.com/jackytse/tabtoy
// DO NOT EDIT!!
// Version: {{.Version}}
using System;
using System.Collections.Generic;
namespace {{.PackageName}}
{ {{range $sn, $objName := $.Types.EnumNames}}
public enum {{$objName}}
{ {{range $fi,$field := $.Types.AllFieldByName $objName}}
{{$field.FieldName}} = {{$field.Value}}, // {{$field.Name}} {{end}}
}
{{end}} {{range $sn, $objName := $.Types.StructNames}}
public partial class {{$objName}} : tabtoy.ITableSerializable
{ {{range $fi,$field := $.Types.AllFieldByName $objName}}
public {{CSType $field}} {{$field.FieldName}} = {{CSDefaultValue $ $field}}; {{end}}
{{if $.GenBinary}}#region Deserialize Code
public void Deserialize( tabtoy.TableReader reader )
{
UInt32 tag = 0;
while ( reader.ReadTag(ref tag) )
{
switch (tag)
{ {{range $fi,$field := $.Types.AllFieldByName $objName}}
case {{CSTag $ $fi $field}}:
{
reader.Read{{CSReader $ $field}}( ref {{$field.FieldName}} );
}
break;{{end}}
}
}
}
#endregion {{end}}
}
{{end}}
// Combine struct
public partial class {{.CombineStructName}}
{ {{range $ti, $tab := $.Datas.AllTables}}
// table: {{$tab.HeaderType}}
public List<{{$tab.HeaderType}}> {{$tab.HeaderType}} = new List<{{$tab.HeaderType}}>(); {{end}}
// Indices {{range $ii, $idx := GetIndices $}}
public Dictionary<{{CSType $idx.FieldInfo}},{{$idx.Table.HeaderType}}> {{$idx.Table.HeaderType}}By{{$idx.FieldInfo.FieldName}} = new Dictionary<{{CSType $idx.FieldInfo}},{{$idx.Table.HeaderType}}>(); {{end}}
{{if HasKeyValueTypes $}}
//{{range $ti, $name := GetKeyValueTypeNames $}} table: {{$name}}
public {{$name}} GetKeyValue_{{$name}}()
{
return {{$name}}[0];
}{{end}}{{end}}
public void ResetData( )
{ {{range $ti, $tab := $.Datas.AllTables}}
{{$tab.HeaderType}}.Clear(); {{end}} {{range $ii, $idx := GetIndices $}}
{{$idx.Table.HeaderType}}By{{$idx.FieldInfo.FieldName}}.Clear(); {{end}}
}
{{if $.GenBinary}}
public void Deserialize( tabtoy.TableReader reader )
{
reader.ReadHeader();{{range $ti, $tab := $.Datas.AllTables}}
reader.ReadStruct(ref {{$tab.HeaderType}}); {{end}}
{{range $ii, $idx := GetIndices $}}
foreach( var kv in {{$idx.Table.HeaderType}} )
{
{{$idx.Table.HeaderType}}By{{$idx.FieldInfo.FieldName}}[kv.{{$idx.FieldInfo.FieldName}}] = kv;
}
{{end}}
}{{end}}
}
}
`
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。