Allow specifying realm when generating docs for a single type and added PlayerInput to docs

This commit is contained in:
EvilFactory
2023-03-18 15:43:10 -03:00
parent 6974c5338a
commit 64215c5722
3 changed files with 15 additions and 6 deletions
@@ -0,0 +1,8 @@
-- luacheck: ignore 111
--[[--
Barotrauma.PlayerInput
]]
-- @code PlayerInput
-- @pragma nostrip
local PlayerInput = {}
@@ -483,7 +483,7 @@ local {type.Name} = {{}}".ReplaceLineEndings("\n");
return baseLuaText; return baseLuaText;
} }
public static void GenerateDocs(Type type, string baseFile, string outFile, string? categoryName = null) public static void GenerateDocs(Type type, string baseFile, string outFile, string? categoryName = null, string realm = "shared")
{ {
categoryName ??= type.Name; categoryName ??= type.Name;
var sb = new StringBuilder(); var sb = new StringBuilder();
@@ -503,21 +503,21 @@ local {type.Name} = {{}}".ReplaceLineEndings("\n");
{ {
case MemberTypes.Method: case MemberTypes.Method:
{ {
sb.Append(ConvertAnnotation(type, (MethodInfo)member, "shared")); sb.Append(ConvertAnnotation(type, (MethodInfo)member, realm));
sb.AppendLine(); sb.AppendLine();
break; break;
} }
case MemberTypes.Field: case MemberTypes.Field:
{ {
sb.Append(ConvertAnnotation(type, (FieldInfo)member, "shared")); sb.Append(ConvertAnnotation(type, (FieldInfo)member, realm));
sb.AppendLine(); sb.AppendLine();
break; break;
} }
case MemberTypes.Property: case MemberTypes.Property:
{ {
sb.Append(ConvertAnnotation(type, (PropertyInfo)member, "shared")); sb.Append(ConvertAnnotation(type, (PropertyInfo)member, realm));
sb.AppendLine(); sb.AppendLine();
break; break;
} }
@@ -10,9 +10,9 @@ namespace LuaDocsGenerator
private static string generatedDir = ""; private static string generatedDir = "";
private static string baseLuaDir = ""; private static string baseLuaDir = "";
private static void GenerateDocs<T>(string file, string? categoryName = null) private static void GenerateDocs<T>(string file, string? categoryName = null, string realm = "shared")
{ {
DocsGenerator.GenerateDocs(typeof(T), $"{baseLuaDir}/{file}", $"{generatedDir}/{file}", categoryName); DocsGenerator.GenerateDocs(typeof(T), $"{baseLuaDir}/{file}", $"{generatedDir}/{file}", categoryName, realm);
} }
private static void GenerateDocs<T1, T2>(string file, string? categoryName = null) private static void GenerateDocs<T1, T2>(string file, string? categoryName = null)
@@ -87,6 +87,7 @@ namespace LuaDocsGenerator
GenerateDocs<BarotraumaClient::Barotrauma.StructurePrefab, BarotraumaServer::Barotrauma.StructurePrefab>("StructurePrefab.lua"); GenerateDocs<BarotraumaClient::Barotrauma.StructurePrefab, BarotraumaServer::Barotrauma.StructurePrefab>("StructurePrefab.lua");
GenerateDocs<BarotraumaClient::Barotrauma.PhysicsBody, BarotraumaServer::Barotrauma.PhysicsBody>("PhysicsBody.lua"); GenerateDocs<BarotraumaClient::Barotrauma.PhysicsBody, BarotraumaServer::Barotrauma.PhysicsBody>("PhysicsBody.lua");
GenerateDocs<BarotraumaClient::Barotrauma.Limb, BarotraumaServer::Barotrauma.Limb>("Limb.lua"); GenerateDocs<BarotraumaClient::Barotrauma.Limb, BarotraumaServer::Barotrauma.Limb>("Limb.lua");
GenerateDocs<BarotraumaClient::Barotrauma.PlayerInput>("PlayerInput.lua", "PlayerInput", "client");
GenerateEnum<BarotraumaClient.Barotrauma.CauseOfDeathType>("CauseOfDeathType.lua"); GenerateEnum<BarotraumaClient.Barotrauma.CauseOfDeathType>("CauseOfDeathType.lua");
GenerateEnum<BarotraumaClient.Barotrauma.CharacterTeamType>("CharacterTeamType.lua"); GenerateEnum<BarotraumaClient.Barotrauma.CharacterTeamType>("CharacterTeamType.lua");