1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- enum Flags {
- FIRE = 1 << 1,
- ICE = 1 << 2,
- SLIPPERY = 1 << 3,
- STICKY = 1 << 4,
- NONSOLID = 1 << 5,
- ALL = FIRE | ICE | SLIPPERY | STICKY | NONSOLID,
- }
- func test():
- var flags = Flags.FIRE | Flags.SLIPPERY
- print(flags)
- flags = Flags.FIRE & Flags.SLIPPERY
- print(flags)
- flags = Flags.FIRE ^ Flags.SLIPPERY
- print(flags)
- flags = Flags.ALL & (Flags.FIRE | Flags.ICE)
- print(flags)
- flags = (Flags.ALL & Flags.FIRE) | Flags.ICE
- print(flags)
- flags = Flags.ALL & Flags.FIRE | Flags.ICE
- print(flags)
- # Enum value must be casted to an integer. Otherwise, a parser error is emitted.
- flags &= int(Flags.ICE)
- print(flags)
- flags ^= int(Flags.ICE)
- print(flags)
- flags |= int(Flags.STICKY | Flags.SLIPPERY)
- print(flags)
- print()
- var num = 2 << 4
- print(num)
- num <<= 2
- print(num)
- num >>= 2
- print(num)
|