Manually merging: - README.md: I added the description from universe/README.md into the heading of dotfiles/README.md. - .envrc: dotfiles/.envrc was a superset of universe/.envrc - .gitignore: Adding some of the ignored patterns from universe/.gitignore to dotfiles/.gitignore Everything else here should be a simple rename.
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			529 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			529 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| def test(x, i):
 | |
|     return x & (1 << i) != 0
 | |
| 
 | |
| 
 | |
| def set(x, i):
 | |
|     return x | (1 << i)
 | |
| 
 | |
| 
 | |
| def clear(x, i):
 | |
|     return x & ~(1 << i)
 | |
| 
 | |
| 
 | |
| def toggle(x, i):
 | |
|     if test(x, i):
 | |
|         return clear(x, i)
 | |
|     else:
 | |
|         return set(x, i)
 | |
| 
 | |
| 
 | |
| def test_single(x):
 | |
|     if x == 0:
 | |
|         return False
 | |
|     else:
 | |
|         return x & (x - 1) == 0
 | |
| 
 | |
| 
 | |
| print(test(0b1010, 3))
 | |
| print('{0:b}'.format(set(0b1010, 1)))
 | |
| print('{0:b}'.format(clear(0b1010, 1)))
 | |
| print('{0:b}'.format(toggle(0b1010, 2)))
 | |
| print(test_single(0b1010))
 | |
| print(test_single(0b1000))
 |