]> git.proxmox.com Git - mirror_edk2.git/blob - 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
1 /*++
2
3 Copyright (c) 2004, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 StrGather.h
15
16 Abstract:
17
18 Common defines and prototypes for StrGather.
19
20 --*/
21
22 #ifndef _STR_GATHER_H_
23 #define _STR_GATHER_H_
24
25 #define MALLOC(size) malloc (size)
26 #define FREE(ptr) do { if ((ptr) != NULL) { free (ptr); } } while (0)
27
28 #define PROGRAM_NAME "StrGather"
29
30 typedef CHAR16 WCHAR;
31
32 #define UNICODE_TO_ASCII(w) (INT8) ((w) & 0xFF)
33 #define ASCII_TO_UNICODE(a) (WCHAR) ((UINT8) (a))
34
35 #define UNICODE_HASH L'#'
36 #define UNICODE_BACKSLASH L'\\'
37 #define UNICODE_SLASH L'/'
38 #define UNICODE_EQUAL_SIGN L'='
39 #define UNICODE_PLUS_SIGN L'+'
40
41 #define UNICODE_FILE_START 0xFEFF
42 #define UNICODE_CR 0x000D
43 #define UNICODE_LF 0x000A
44 #define UNICODE_NULL 0x0000
45 #define UNICODE_SPACE L' '
46 #define UNICODE_SLASH L'/'
47 #define UNICODE_DOUBLE_QUOTE L'"'
48 #define UNICODE_OPEN_PAREN L'('
49 #define UNICODE_CLOSE_PAREN L')'
50 #define UNICODE_Z L'Z'
51 #define UNICODE_z L'z'
52 #define UNICODE_A L'A'
53 #define UNICODE_a L'a'
54 #define UNICODE_F L'F'
55 #define UNICODE_f L'f'
56 #define UNICODE_UNDERSCORE L'_'
57 #define UNICODE_MINUS L'-'
58 #define UNICODE_0 L'0'
59 #define UNICODE_9 L'9'
60 #define UNICODE_TAB L'\t'
61 #define UNICODE_NBR_STRING L"\\nbr"
62 #define UNICODE_BR_STRING L"\\br"
63 #define UNICODE_WIDE_STRING L"\\wide"
64 #define UNICODE_NARROW_STRING L"\\narrow"
65
66 //
67 // This is the length of a valid string identifier
68 //
69 #define LANGUAGE_IDENTIFIER_NAME_LEN 128
70
71 typedef struct _TEXT_STRING_LIST {
72 struct _TEXT_STRING_LIST *Next;
73 UINT8 *Str;
74 } TEXT_STRING_LIST;
75
76 typedef struct _WCHAR_STRING_LIST {
77 struct _WCHAR_STRING_LIST *Next;
78 WCHAR *Str;
79 } WCHAR_STRING_LIST;
80
81 typedef struct _WCHAR_MATCHING_STRING_LIST {
82 struct _WCHAR_MATCHING_STRING_LIST *Next;
83 WCHAR *Str1;
84 WCHAR *Str2;
85 } WCHAR_MATCHING_STRING_LIST;
86
87 #endif // #ifndef _STR_GATHER_H_