【修复】为ue4生成cfg c++代码并且使用FString作为string类型时,由于FString无法作为unordered_map的key,产生编译错误,索性放弃对FString支持, 统一为std::string
parent
2854ba4a9f
commit
9edb704199
|
|
@ -89,7 +89,7 @@ class {{name}} : public {{if parent_def_type}} {{parent_def_type.cpp_full_name}}
|
||||||
int getTypeId() const { return ID; }
|
int getTypeId() const { return ID; }
|
||||||
{{~end~}}
|
{{~end~}}
|
||||||
|
|
||||||
virtual void resolve(std::unordered_map<bright::String, void*>& _tables);
|
virtual void resolve(std::unordered_map<std::string, void*>& _tables);
|
||||||
};
|
};
|
||||||
|
|
||||||
{{x.cpp_namespace_end}}
|
{{x.cpp_namespace_end}}
|
||||||
|
|
@ -149,7 +149,7 @@ class {{name}}
|
||||||
return it != _dataMap.end() ? it->second : nullptr;
|
return it != _dataMap.end() ? it->second : nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void resolve(std::unordered_map<bright::String, void*>& _tables)
|
void resolve(std::unordered_map<std::string, void*>& _tables)
|
||||||
{
|
{
|
||||||
for(auto v : _dataList)
|
for(auto v : _dataList)
|
||||||
{
|
{
|
||||||
|
|
@ -173,7 +173,7 @@ class {{name}}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void resolve(std::unordered_map<bright::String, void*>& _tables)
|
void resolve(std::unordered_map<std::string, void*>& _tables)
|
||||||
{
|
{
|
||||||
_data->resolve(_tables);
|
_data->resolve(_tables);
|
||||||
}
|
}
|
||||||
|
|
@ -208,9 +208,9 @@ class {{name}}
|
||||||
{{table.cpp_full_name}} {{table.name}};
|
{{table.cpp_full_name}} {{table.name}};
|
||||||
{{~end~}}
|
{{~end~}}
|
||||||
|
|
||||||
bool load(std::function<bool(ByteBuf&, const bright::String&)> loader)
|
bool load(std::function<bool(ByteBuf&, const std::string&)> loader)
|
||||||
{
|
{
|
||||||
std::unordered_map<bright::String, void*> __tables__;
|
std::unordered_map<std::string, void*> __tables__;
|
||||||
|
|
||||||
ByteBuf buf;
|
ByteBuf buf;
|
||||||
{{~for table in tables~}}
|
{{~for table in tables~}}
|
||||||
|
|
@ -294,7 +294,7 @@ namespace {{x.top_module}}
|
||||||
{{~end~}}
|
{{~end~}}
|
||||||
}
|
}
|
||||||
|
|
||||||
void {{type.cpp_full_name}}::resolve(std::unordered_map<bright::String, void*>& _tables)
|
void {{type.cpp_full_name}}::resolve(std::unordered_map<std::string, void*>& _tables)
|
||||||
{
|
{
|
||||||
{{~if type.parent_def_type~}}
|
{{~if type.parent_def_type~}}
|
||||||
{{type.parent_def_type.name}}::resolve(_tables);
|
{{type.parent_def_type.name}}::resolve(_tables);
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@ namespace Luban.Job.Cfg.TypeVisitors
|
||||||
|
|
||||||
public string Accept(TString type, string bufName, string fieldName)
|
public string Accept(TString type, string bufName, string fieldName)
|
||||||
{
|
{
|
||||||
return $"if(!BYTEBUF_READ_STRING({bufName}, {fieldName})) return false;";
|
return $"if(!{bufName}.readString({fieldName})) return false;";
|
||||||
}
|
}
|
||||||
|
|
||||||
public string Accept(TBytes type, string bufName, string fieldName)
|
public string Accept(TBytes type, string bufName, string fieldName)
|
||||||
|
|
|
||||||
|
|
@ -63,7 +63,7 @@ namespace Luban.Job.Common.TypeVisitors
|
||||||
|
|
||||||
public string Accept(TString type)
|
public string Accept(TString type)
|
||||||
{
|
{
|
||||||
return "bright::String";
|
return "std::string";
|
||||||
}
|
}
|
||||||
|
|
||||||
public string Accept(TBytes type)
|
public string Accept(TBytes type)
|
||||||
|
|
@ -73,7 +73,7 @@ namespace Luban.Job.Common.TypeVisitors
|
||||||
|
|
||||||
public string Accept(TText type)
|
public string Accept(TText type)
|
||||||
{
|
{
|
||||||
return "bright::String";
|
return "std::string";
|
||||||
}
|
}
|
||||||
|
|
||||||
public string Accept(TBean type)
|
public string Accept(TBean type)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue