From 90d57539ae6498c1847f5e5d0c11c93e12cd0a7d Mon Sep 17 00:00:00 2001 From: DCFApixels <99481254+DCFApixels@users.noreply.github.com> Date: Sun, 18 May 2025 00:52:07 +0800 Subject: [PATCH] Update MetaIDAttribute.cs --- .../MetaAttributes/MetaIDAttribute.cs | 30 +++++++++---------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/src/DebugUtils/MetaAttributes/MetaIDAttribute.cs b/src/DebugUtils/MetaAttributes/MetaIDAttribute.cs index 1851e8c..2cd1e73 100644 --- a/src/DebugUtils/MetaAttributes/MetaIDAttribute.cs +++ b/src/DebugUtils/MetaAttributes/MetaIDAttribute.cs @@ -114,28 +114,26 @@ namespace DCFApixels.DragonECS } public static string ParseIDFromTypeName(string name) { - using (StackAllocator.Alloc(name.Length, out char* buffer)) + char* buffer = TempBuffer.Get(name.Length); + int count = 0; + //skip name[0] char + for (int i = 1, iMax = name.Length; i < iMax; i++) { - int count = 0; - //skip name[0] char - for (int i = 1, iMax = name.Length; i < iMax; i++) + char current = name[i]; + if (current == '_') { - char current = name[i]; - if (current == '_') + if (++i >= iMax) { break; } + current = name[i]; + switch (current) { - if (++i >= iMax) { break; } - current = name[i]; - switch (current) - { - case '1': current = '<'; break; - case '2': current = '>'; break; - case '3': current = ','; break; - } + case '1': current = '<'; break; + case '2': current = '>'; break; + case '3': current = ','; break; } - buffer[count++] = current; } - return new string(buffer, 0, count); + buffer[count++] = current; } + return new string(buffer, 0, count); } public static string GenerateNewUniqueIDWithAttribute()