// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

library fidl.examples.bits;

bits uint8_bits : uint8 {
    kOne = 1;
    kTwo = 2;
    kFour = 4;
};

bits uint16_bits : uint16 {
    kOne = 0x1;
    kTwo = 2;
    kFour = 4;
};

bits uint32_bits : uint32 {
    kOne = 1;
    kTwo = 2;
    kFour = 4;
    kEight = 8;
};

bits uint64_bits : uint64 {
    kOne = 1;
    kTwo = 2;
    kFour = 4;
    kEight = 8;
    kSixteen = 0x10;
    kThirtyTwo = 0x20;
    kBiggestBit = 0x8000000000000000;
};
