1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set ts=2 et sw=2 tw=80: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4  * License, v. 2.0. If a copy of the MPL was not distributed with this
5  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 
7 /*
8  * This file contains a series of C-style declarations for constants defined in
9  * windows.h using #define. Adding a new constant should be a simple as adding
10  * its name (and optionally type) to this file.
11  *
12  * This file is processed by make-windows-h-wrapper.py to generate a wrapper for
13  * the header which removes the defines usually implementing these constants.
14  *
15  * Wrappers defined in this file will be declared as `constexpr` values,
16  * and will have their value derived from the windows.h define.
17  *
18  * NOTE: This is *NOT* a real C header, but rather an input to the avove script.
19  * Only basic declarations in the form found here are allowed.
20  */
21 
22 // XXX(nika): There are a lot of these (>30k)!
23 // This is just a set of ones I saw in a quick scan which looked problematic.
24 
25 auto CREATE_NEW;
26 auto CREATE_ALWAYS;
27 auto OPEN_EXISTING;
28 auto OPEN_ALWAYS;
29 auto TRUNCATE_EXISTING;
30 auto INVALID_FILE_SIZE;
31 auto INVALID_SET_FILE_POINTER;
32 auto INVALID_FILE_ATTRIBUTES;
33 
34 auto ANSI_NULL;
35 auto UNICODE_NULL;
36 
37 auto MINCHAR;
38 auto MAXCHAR;
39 auto MINSHORT;
40 auto MAXSHORT;
41 auto MINLONG;
42 auto MAXLONG;
43 auto MAXBYTE;
44 auto MAXWORD;
45 auto MAXDWORD;
46 
47 auto ERROR;
48 
49 auto DELETE;
50 auto READ_CONTROL;
51 auto WRITE_DAC;
52 auto WRITE_OWNER;
53 auto SYNCHRONIZE;
54 
55 auto MAXIMUM_ALLOWED;
56 auto GENERIC_READ;
57 auto GENERIC_WRITE;
58 auto GENERIC_EXECUTE;
59 auto GENERIC_ALL;
60 
61 auto NO_ERROR;
62 auto WAIT_FAILED;
63 auto WAIT_ABANDONED;
64 auto WAIT_TIMEOUT;
65