More Elisp linting
This should cover most of the remaining linting errors. After this, I expect fewer than ten linting errors.
This commit is contained in:
		
							parent
							
								
									a638e15c0d
								
							
						
					
					
						commit
						fb5ec068dd
					
				
					 47 changed files with 1049 additions and 989 deletions
				
			
		|  | @ -1,5 +1,9 @@ | |||
| ;;; bytes.el --- Working with byte values -*- lexical-binding: t -*- | ||||
| 
 | ||||
| ;; Author: William Carroll <wpcarro@gmail.com> | ||||
| ;; Version: 0.0.1 | ||||
| ;; URL: https://git.wpcarro.dev/wpcarro/briefcase | ||||
| ;; Package-Requires: ((emacs "24.3")) | ||||
| 
 | ||||
| ;;; Commentary: | ||||
| ;; Functions to help with human-readable representations of byte values. | ||||
|  | @ -40,49 +44,49 @@ | |||
| ;; Constants | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| 
 | ||||
| (defconst bytes/kb (math/exp 2 10) | ||||
| (defconst bytes-kb (math-exp 2 10) | ||||
|   "Number of bytes in a kilobyte.") | ||||
| 
 | ||||
| (defconst bytes/mb (math/exp 2 20) | ||||
| (defconst bytes-mb (math-exp 2 20) | ||||
|   "Number of bytes in a megabytes.") | ||||
| 
 | ||||
| (defconst bytes/gb (math/exp 2 30) | ||||
| (defconst bytes-gb (math-exp 2 30) | ||||
|   "Number of bytes in a gigabyte.") | ||||
| 
 | ||||
| (defconst bytes/tb (math/exp 2 40) | ||||
| (defconst bytes-tb (math-exp 2 40) | ||||
|   "Number of bytes in a terabyte.") | ||||
| 
 | ||||
| (defconst bytes/pb (math/exp 2 50) | ||||
| (defconst bytes-pb (math-exp 2 50) | ||||
|   "Number of bytes in a petabyte.") | ||||
| 
 | ||||
| (defconst bytes/eb (math/exp 2 60) | ||||
| (defconst bytes-eb (math-exp 2 60) | ||||
|   "Number of bytes in an exabyte.") | ||||
| 
 | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| ;; Functions | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| 
 | ||||
| (defun bytes/classify (x) | ||||
| (defun bytes-classify (x) | ||||
|   "Return unit that closest fits byte count, X." | ||||
|   (prelude-assert (number/whole? x)) | ||||
|   (prelude-assert (number-whole? x)) | ||||
|   (cond | ||||
|    ((and (>= x 0)        (< x bytes/kb))     'byte) | ||||
|    ((and (>= x bytes/kb) (< x bytes/mb)) 'kilobyte) | ||||
|    ((and (>= x bytes/mb) (< x bytes/gb)) 'megabyte) | ||||
|    ((and (>= x bytes/gb) (< x bytes/tb)) 'gigabyte) | ||||
|    ((and (>= x bytes/tb) (< x bytes/pb)) 'terabyte) | ||||
|    ((and (>= x bytes/pb) (< x bytes/eb)) 'petabyte))) | ||||
|    ((and (>= x 0)        (< x bytes-kb))     'byte) | ||||
|    ((and (>= x bytes-kb) (< x bytes-mb)) 'kilobyte) | ||||
|    ((and (>= x bytes-mb) (< x bytes-gb)) 'megabyte) | ||||
|    ((and (>= x bytes-gb) (< x bytes-tb)) 'gigabyte) | ||||
|    ((and (>= x bytes-tb) (< x bytes-pb)) 'terabyte) | ||||
|    ((and (>= x bytes-pb) (< x bytes-eb)) 'petabyte))) | ||||
| 
 | ||||
| (defun bytes/to-string (x) | ||||
| (defun bytes-to-string (x) | ||||
|   "Convert integer X into a human-readable string." | ||||
|   (let ((base-and-unit | ||||
|          (pcase (bytes/classify x) | ||||
|          (pcase (bytes-classify x) | ||||
|            ('byte     (tuple/from        1 "B")) | ||||
|            ('kilobyte (tuple/from bytes/kb "KB")) | ||||
|            ('megabyte (tuple/from bytes/mb "MB")) | ||||
|            ('gigabyte (tuple/from bytes/gb "GB")) | ||||
|            ('terabyte (tuple/from bytes/tb "TB")) | ||||
|            ('petabyte (tuple/from bytes/pb "PB"))))) | ||||
|            ('kilobyte (tuple/from bytes-kb "KB")) | ||||
|            ('megabyte (tuple/from bytes-mb "MB")) | ||||
|            ('gigabyte (tuple/from bytes-gb "GB")) | ||||
|            ('terabyte (tuple/from bytes-tb "TB")) | ||||
|            ('petabyte (tuple/from bytes-pb "PB"))))) | ||||
|     (string-format "%d%s" | ||||
|                    (round x (tuple/first base-and-unit)) | ||||
|                    (tuple/second base-and-unit)))) | ||||
|  | @ -93,17 +97,17 @@ | |||
| 
 | ||||
| (progn | ||||
|   (prelude-assert | ||||
|    (equal "1000B" (bytes/to-string 1000))) | ||||
|    (equal "1000B" (bytes-to-string 1000))) | ||||
|   (prelude-assert | ||||
|    (equal "2KB" (bytes/to-string (* 2 bytes/kb)))) | ||||
|    (equal "2KB" (bytes-to-string (* 2 bytes-kb)))) | ||||
|   (prelude-assert | ||||
|    (equal "17MB" (bytes/to-string (* 17 bytes/mb)))) | ||||
|    (equal "17MB" (bytes-to-string (* 17 bytes-mb)))) | ||||
|   (prelude-assert | ||||
|    (equal "419GB" (bytes/to-string (* 419 bytes/gb)))) | ||||
|    (equal "419GB" (bytes-to-string (* 419 bytes-gb)))) | ||||
|   (prelude-assert | ||||
|    (equal "999TB" (bytes/to-string (* 999 bytes/tb)))) | ||||
|    (equal "999TB" (bytes-to-string (* 999 bytes-tb)))) | ||||
|   (prelude-assert | ||||
|    (equal "2PB" (bytes/to-string (* 2 bytes/pb))))) | ||||
|    (equal "2PB" (bytes-to-string (* 2 bytes-pb))))) | ||||
| 
 | ||||
| (provide 'bytes) | ||||
| ;;; bytes.el ends here | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue