Lines Matching refs:ResourceMask

34 class ResourceMask {
36 constexpr ResourceMask(uint64_t mask1, uint64_t mask2) in ResourceMask() function
58 constexpr ResourceMask() in ResourceMask() function
63 ResourceMask(const ResourceMask& other) = default;
64 ResourceMask& operator=(const ResourceMask& other) = default;
67 bool operator==(const ResourceMask& other) {
71 static constexpr ResourceMask RawMask(uint64_t mask1, uint64_t mask2) { in RawMask()
72 return ResourceMask(mask1, mask2); in RawMask()
75 static constexpr ResourceMask Bit(size_t bit) { in Bit()
76 return ResourceMask(bit >= 64u ? 0u : UINT64_C(1) << bit, in Bit()
81 static constexpr ResourceMask TwoBits(size_t start_bit) { in TwoBits()
84 ResourceMask(start_bit >= 64u ? 0u : UINT64_C(3) << start_bit, in TwoBits()
88 static constexpr ResourceMask NoBits() { in NoBits()
89 return ResourceMask(UINT64_C(0), UINT64_C(0)); in NoBits()
92 static constexpr ResourceMask AllBits() { in AllBits()
93 return ResourceMask(~UINT64_C(0), ~UINT64_C(0)); in AllBits()
96 constexpr ResourceMask Union(const ResourceMask& other) const { in Union()
97 return ResourceMask(masks_[0] | other.masks_[0], masks_[1] | other.masks_[1]); in Union()
100 constexpr ResourceMask Intersection(const ResourceMask& other) const { in Intersection()
101 return ResourceMask(masks_[0] & other.masks_[0], masks_[1] & other.masks_[1]); in Intersection()
104 constexpr ResourceMask Without(const ResourceMask& other) const { in Without()
105 return ResourceMask(masks_[0] & ~other.masks_[0], masks_[1] & ~other.masks_[1]); in Without()
108 constexpr bool Equals(const ResourceMask& other) const { in Equals()
112 constexpr bool Intersects(const ResourceMask& other) const { in Intersects()
125 ResourceMask& SetBits(const ResourceMask& other) { in SetBits()
131 ResourceMask& ClearBits(const ResourceMask& other) { in ClearBits()
143 constexpr ResourceMask kEncodeNone = ResourceMask::NoBits();
144 constexpr ResourceMask kEncodeAll = ResourceMask::AllBits();
145 constexpr ResourceMask kEncodeHeapRef = ResourceMask::Bit(ResourceMask::kHeapRef);
146 constexpr ResourceMask kEncodeLiteral = ResourceMask::Bit(ResourceMask::kLiteral);
147 constexpr ResourceMask kEncodeDalvikReg = ResourceMask::Bit(ResourceMask::kDalvikReg);
148 constexpr ResourceMask kEncodeMem = kEncodeLiteral.Union(kEncodeDalvikReg).Union(
149 kEncodeHeapRef).Union(ResourceMask::Bit(ResourceMask::kMustNotAlias));
157 const ResourceMask* GetMask(const ResourceMask& mask);