blob: e1c0b18796e29c028f1c63ef0232ad91903d26ed (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
//
// This file is designed to be included multiple times with different definitions of the
// DEFINE_INLINE_OPTIONAL_FIELD and DEFINE_OUTLINE_OPTIONAL_FIELD macros in order to build data structures
// related to each type of EEType optional field we support (see OptionalFields.h for details).
//
// The order of definition of the fields is somewhat important: for types that require multiple optional
// fields the fields are laid out in the order of definition. Thus access to the fields defined first will be
// slightly faster than the later fields.
#ifndef DEFINE_INLINE_OPTIONAL_FIELD
#error Must define DEFINE_INLINE_OPTIONAL_FIELD before including this file
#endif
#ifndef DEFINE_OUTLINE_OPTIONAL_FIELD
#error Must define DEFINE_OUTLINE_OPTIONAL_FIELD before including this file
#endif
// Field name Field type
DEFINE_INLINE_OPTIONAL_FIELD (RareFlags, UInt32)
DEFINE_INLINE_OPTIONAL_FIELD (ICastableIsInstSlot, UInt16)
DEFINE_INLINE_OPTIONAL_FIELD (DispatchMap, UInt32)
DEFINE_INLINE_OPTIONAL_FIELD (ValueTypeFieldPadding, UInt32)
DEFINE_INLINE_OPTIONAL_FIELD (ICastableGetImplTypeSlot, UInt16)
DEFINE_INLINE_OPTIONAL_FIELD (NullableValueOffset, UInt8)
#undef DEFINE_INLINE_OPTIONAL_FIELD
#undef DEFINE_OUTLINE_OPTIONAL_FIELD
|