]> git.proxmox.com Git - mirror_edk2.git/blob - Tools/CCode/Source/StrGather/StrGather.h
65dc15cbe85821434ebf0279dc137d538e91a435
[mirror_edk2.git] / Tools / CCode / Source / StrGather / 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) free (ptr)
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_Z L'Z'
49 #define UNICODE_z L'z'
50 #define UNICODE_A L'A'
51 #define UNICODE_a L'a'
52 #define UNICODE_F L'F'
53 #define UNICODE_f L'f'
54 #define UNICODE_UNDERSCORE L'_'
55 #define UNICODE_0 L'0'
56 #define UNICODE_9 L'9'
57 #define UNICODE_TAB L'\t'
58 #define UNICODE_NBR_STRING L"\\nbr"
59 #define UNICODE_BR_STRING L"\\br"
60 #define UNICODE_WIDE_STRING L"\\wide"
61 #define UNICODE_NARROW_STRING L"\\narrow"
62
63 //
64 // This is the length of a valid string identifier
65 //
66 #define LANGUAGE_IDENTIFIER_NAME_LEN 3
67
68 typedef struct _TEXT_STRING_LIST {
69 struct _TEXT_STRING_LIST *Next;
70 CHAR8 *Str;
71 } TEXT_STRING_LIST;
72
73 typedef struct _WCHAR_STRING_LIST {
74 struct _WCHAR_STRING_LIST *Next;
75 WCHAR *Str;
76 } WCHAR_STRING_LIST;
77
78 typedef struct _WCHAR_MATCHING_STRING_LIST {
79 struct _WCHAR_MATCHING_STRING_LIST *Next;
80 WCHAR *Str1;
81 WCHAR *Str2;
82 } WCHAR_MATCHING_STRING_LIST;
83
84 #endif // #ifndef _STR_GATHER_H_