typedef NS_OPTIONS()

in Sources/OpenCore/OpenCore.xcframework/ios-arm64/OpenCore.framework/Headers/ORClassInfo.h [9:53]


typedef NS_OPTIONS(NSUInteger, OREncodingType) {
    OREncodingTypeMask       = 0xFF, ///< mask of type value
    OREncodingTypeUnknown    = 0, ///< unknown
    OREncodingTypeVoid       = 1, ///< void
    OREncodingTypeBool       = 2, ///< bool
    OREncodingTypeInt8       = 3, ///< char / BOOL
    OREncodingTypeUInt8      = 4, ///< unsigned char
    OREncodingTypeInt16      = 5, ///< short
    OREncodingTypeUInt16     = 6, ///< unsigned short
    OREncodingTypeInt32      = 7, ///< int
    OREncodingTypeUInt32     = 8, ///< unsigned int
    OREncodingTypeInt64      = 9, ///< long long
    OREncodingTypeUInt64     = 10, ///< unsigned long long
    OREncodingTypeFloat      = 11, ///< float
    OREncodingTypeDouble     = 12, ///< double
    OREncodingTypeLongDouble = 13, ///< long double
    OREncodingTypeObject     = 14, ///< id
    OREncodingTypeClass      = 15, ///< Class
    OREncodingTypeSEL        = 16, ///< SEL
    OREncodingTypeBlock      = 17, ///< block
    OREncodingTypePointer    = 18, ///< void*
    OREncodingTypeStruct     = 19, ///< struct
    OREncodingTypeUnion      = 20, ///< union
    OREncodingTypeCString    = 21, ///< char*
    OREncodingTypeCArray     = 22, ///< char[10] (for example)
    
    OREncodingTypeQualifierMask   = 0xFF00,   ///< mask of qualifier
    OREncodingTypeQualifierConst  = 1 << 8,  ///< const
    OREncodingTypeQualifierIn     = 1 << 9,  ///< in
    OREncodingTypeQualifierInout  = 1 << 10, ///< inout
    OREncodingTypeQualifierOut    = 1 << 11, ///< out
    OREncodingTypeQualifierBycopy = 1 << 12, ///< bycopy
    OREncodingTypeQualifierByref  = 1 << 13, ///< byref
    OREncodingTypeQualifierOneway = 1 << 14, ///< oneway
    
    OREncodingTypePropertyMask         = 0xFF0000, ///< mask of property
    OREncodingTypePropertyReadonly     = 1 << 16, ///< readonly
    OREncodingTypePropertyCopy         = 1 << 17, ///< copy
    OREncodingTypePropertyRetain       = 1 << 18, ///< retain
    OREncodingTypePropertyNonatomic    = 1 << 19, ///< nonatomic
    OREncodingTypePropertyWeak         = 1 << 20, ///< weak
    OREncodingTypePropertyCustomGetter = 1 << 21, ///< getter=
    OREncodingTypePropertyCustomSetter = 1 << 22, ///< setter=
    OREncodingTypePropertyDynamic      = 1 << 23, ///< @dynamic
};