]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkCompatibilityPkg/Sample/Tools/Source/UefiStrGather/StrGather.h
1) Sync EdkCompatibilityPkg with EDK 1.04. The changes includes:
[mirror_edk2.git] / EdkCompatibilityPkg / Sample / Tools / Source / UefiStrGather / StrGather.h
diff --git a/EdkCompatibilityPkg/Sample/Tools/Source/UefiStrGather/StrGather.h b/EdkCompatibilityPkg/Sample/Tools/Source/UefiStrGather/StrGather.h
new file mode 100644 (file)
index 0000000..a14ef92
--- /dev/null
@@ -0,0 +1,87 @@
+/*++\r
+\r
+Copyright (c) 2004, Intel Corporation                                                         \r
+All rights reserved. This program and the accompanying materials                          \r
+are licensed and made available under the terms and conditions of the BSD License         \r
+which accompanies this distribution.  The full text of the license may be found at        \r
+http://opensource.org/licenses/bsd-license.php                                            \r
+                                                                                          \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+\r
+Module Name:\r
+\r
+  StrGather.h\r
+\r
+Abstract:\r
+\r
+  Common defines and prototypes for StrGather.\r
+  \r
+--*/\r
+\r
+#ifndef _STR_GATHER_H_\r
+#define _STR_GATHER_H_\r
+\r
+#define MALLOC(size)  malloc (size)\r
+#define FREE(ptr)     do { if ((ptr) != NULL) { free (ptr); } } while (0)\r
+\r
+#define PROGRAM_NAME  "StrGather"\r
+\r
+typedef CHAR16  WCHAR;\r
+\r
+#define UNICODE_TO_ASCII(w)   (INT8) ((w) & 0xFF)\r
+#define ASCII_TO_UNICODE(a)   (WCHAR) ((UINT8) (a))\r
+\r
+#define UNICODE_HASH          L'#'\r
+#define UNICODE_BACKSLASH     L'\\'\r
+#define UNICODE_SLASH         L'/'\r
+#define UNICODE_EQUAL_SIGN    L'='\r
+#define UNICODE_PLUS_SIGN     L'+'\r
+\r
+#define UNICODE_FILE_START    0xFEFF\r
+#define UNICODE_CR            0x000D\r
+#define UNICODE_LF            0x000A\r
+#define UNICODE_NULL          0x0000\r
+#define UNICODE_SPACE         L' '\r
+#define UNICODE_SLASH         L'/'\r
+#define UNICODE_DOUBLE_QUOTE  L'"'\r
+#define UNICODE_OPEN_PAREN    L'('\r
+#define UNICODE_CLOSE_PAREN   L')'\r
+#define UNICODE_Z             L'Z'\r
+#define UNICODE_z             L'z'\r
+#define UNICODE_A             L'A'\r
+#define UNICODE_a             L'a'\r
+#define UNICODE_F             L'F'\r
+#define UNICODE_f             L'f'\r
+#define UNICODE_UNDERSCORE    L'_'\r
+#define UNICODE_MINUS         L'-'\r
+#define UNICODE_0             L'0'\r
+#define UNICODE_9             L'9'\r
+#define UNICODE_TAB           L'\t'\r
+#define UNICODE_NBR_STRING    L"\\nbr"\r
+#define UNICODE_BR_STRING     L"\\br"\r
+#define UNICODE_WIDE_STRING   L"\\wide"\r
+#define UNICODE_NARROW_STRING L"\\narrow"\r
+\r
+//\r
+// This is the length of a valid string identifier\r
+//\r
+#define LANGUAGE_IDENTIFIER_NAME_LEN  128\r
+\r
+typedef struct _TEXT_STRING_LIST {\r
+  struct _TEXT_STRING_LIST  *Next;\r
+  UINT8                     *Str;\r
+} TEXT_STRING_LIST;\r
+\r
+typedef struct _WCHAR_STRING_LIST {\r
+  struct _WCHAR_STRING_LIST *Next;\r
+  WCHAR                     *Str;\r
+} WCHAR_STRING_LIST;\r
+\r
+typedef struct _WCHAR_MATCHING_STRING_LIST {\r
+  struct _WCHAR_MATCHING_STRING_LIST  *Next;\r
+  WCHAR                               *Str1;\r
+  WCHAR                               *Str2;\r
+} WCHAR_MATCHING_STRING_LIST;\r
+\r
+#endif // #ifndef _STR_GATHER_H_\r