summaryrefslogtreecommitdiffstats
path: root/debian/uncrustify-trinity/uncrustify-trinity-0.75.0/tests/expected/oc/50113-ns_enum.m
blob: 5c30d740f4ed8d072f034723c1b7f5a806e0936f (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
// The semicolons at the end of these declarations are not superfluous.
typedef NS_ENUM(NSUInteger, MyEnum) {MyValue1, MyValue2, MyValue3};
typedef NS_OPTIONS(NSUInteger, MyBitmask) {MyBit1, MyBit2, MyBit3};

// NS_ENUM specifies the type and name of the enum.
typedef enum {
	MyValue1,
	MyValue2,
	MyValue3
} MyEnum;
typedef NS_ENUM(NSUInteger, MyEnum) {
	MyValue1,
	MyValue2,
	MyValue3
};

// NS_OPTIONS is equivalent to NS_ENUM, but semantically used for bitmask enums.
typedef enum {
	MyBit1 = (1u << 0),
	MyBit2Longer = (1u << 1),
	MyBit3ThatIsConsiderablyMoreVerbose = (1u << 2)
} MyBitmask;
typedef NS_OPTIONS(NSUInteger, MyBitmask) {
	MyBit1 = (1u << 0),
	MyBit2Longer = (1u << 1),
	MyBit3ThatIsConsiderablyMoreVerbose = (1u << 2)
};