Imported Upstream version 9.20
[platform/upstream/7zip.git] / CPP / 7zip / Common / MethodId.cpp
1 // MethodId.cpp\r
2 \r
3 #include "StdAfx.h"\r
4 \r
5 #include "MethodId.h"\r
6 #include "../../Common/MyString.h"\r
7 \r
8 static inline wchar_t GetHex(Byte value)\r
9 {\r
10   return (wchar_t)((value < 10) ? ('0' + value) : ('A' + (value - 10)));\r
11 }\r
12 \r
13 UString ConvertMethodIdToString(UInt64 id)\r
14 {\r
15   wchar_t s[32];\r
16   int len = 32;\r
17   s[--len] = 0;\r
18   do\r
19   {\r
20     s[--len] = GetHex((Byte)id & 0xF);\r
21     id >>= 4;\r
22     s[--len] = GetHex((Byte)id & 0xF);\r
23     id >>= 4;\r
24   }\r
25   while (id != 0);\r
26   return s + len;\r
27 }\r