mirror of https://github.com/XTLS/Xray-core
				
				
				
			
		
			
				
	
	
		
			22 lines
		
	
	
		
			318 B
		
	
	
	
		
			Go
		
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			318 B
		
	
	
	
		
			Go
		
	
	
package bitmask
 | 
						|
 | 
						|
// Byte is a bitmask in byte.
 | 
						|
type Byte byte
 | 
						|
 | 
						|
// Has returns true if this bitmask contains another bitmask.
 | 
						|
func (b Byte) Has(bb Byte) bool {
 | 
						|
	return (b & bb) != 0
 | 
						|
}
 | 
						|
 | 
						|
func (b *Byte) Set(bb Byte) {
 | 
						|
	*b |= bb
 | 
						|
}
 | 
						|
 | 
						|
func (b *Byte) Clear(bb Byte) {
 | 
						|
	*b &= ^bb
 | 
						|
}
 | 
						|
 | 
						|
func (b *Byte) Toggle(bb Byte) {
 | 
						|
	*b ^= bb
 | 
						|
}
 |