Browse code
chore: reformat
Ed Langley authored on 27/10/2019 04:37:14
Showing 5 changed files
Showing 5 changed files
... | ... |
@@ -8,10 +8,12 @@ |
8 | 8 |
"Use the current package name to generate a <PACKAGE-NAME>.MAIN function in CL-USER. |
9 | 9 |
|
10 | 10 |
This will not do anything if :FW.DEV is not in features as it's only intended as a shortcut" |
11 |
- (if (featurep :fw.dev) |
|
12 |
- (let ((entrypoint-symbol (intern (format nil "~a.~a" (package-name *package*) '#:main) |
|
13 |
- :cl-user))) |
|
14 |
- `(progn (defun ,entrypoint-symbol ,args |
|
15 |
- ,@body) |
|
16 |
- (export ',entrypoint-symbol :cl-user))) |
|
17 |
- ())) |
|
11 |
+ `(progn ,@(when (featurep :fw.dev) |
|
12 |
+ (let ((entrypoint-symbol (intern (format nil "~a.~a" (package-name *package*) '#:main) |
|
13 |
+ :cl-user))) |
|
14 |
+ `((defun ,entrypoint-symbol ,args |
|
15 |
+ ,@body) |
|
16 |
+ (export ',entrypoint-symbol :cl-user)))) |
|
17 |
+ (defun ,(intern (symbol-name '#:main) *package*) ,args |
|
18 |
+ ,@body) |
|
19 |
+ (export ',(intern (symbol-name '#:main) *package*) *package*))) |
... | ... |
@@ -1,44 +1,42 @@ |
1 |
-;;;; package.lisp |
|
1 |
+(defpackage :fwoar-lisputils.package |
|
2 |
+ (:use :cl) |
|
3 |
+ (:export)) |
|
4 |
+(in-package :fwoar-lisputils.package) |
|
2 | 5 |
|
3 | 6 |
(defpackage :fwoar.counter |
4 | 7 |
(:use :cl)) |
5 | 8 |
|
6 |
-(defpackage :patmatch |
|
9 |
+(defpackage :fwoar.anonymous-gf |
|
7 | 10 |
(:use :cl) |
8 |
- (:export :let-pat* :handle-pattern)) |
|
11 |
+ (:export #:glambda)) |
|
9 | 12 |
|
10 |
-(defpackage :fwoar.anonymous-gf |
|
13 |
+(defpackage :fwoar-lisputils.restarts |
|
11 | 14 |
(:use :cl) |
12 |
- (:export :glambda)) |
|
15 |
+ (:export #:with-retry #:with-retry* #:safely-invoke-restart)) |
|
13 | 16 |
|
14 |
-(defpackage #:fwoar.lisputils |
|
17 |
+(defpackage :fwoar.lisputils |
|
15 | 18 |
(:use #:cl #:alexandria) |
16 | 19 |
(:nicknames #:fw.lu) |
17 | 20 |
(:shadow #:with) |
18 |
- (:import-from :fwoar.anonymous-gf :glambda) |
|
19 |
- (:import-from :patmatch :let-pat*) |
|
20 |
- (:import-from :serapeum :op) |
|
21 |
+ (:import-from #:fwoar.anonymous-gf #:glambda) |
|
22 |
+ (:import-from #:patmatch #:let-pat*) |
|
21 | 23 |
(:export #:lambda-if #:lambda-cond #:alambda #:rollup-list |
22 | 24 |
#:ensure-mapping #:alist-string-hash-table #:make-pairs |
23 | 25 |
#:copy-slots #:transform-alist #:%json-pair-transform |
24 |
- #:%default-pair-transform #:default-when |
|
25 |
- #:transform-result #:slots-to-pairs #:normalize-html |
|
26 |
- #:destructuring-lambda #:let-each #:let-first #:let-second |
|
27 |
- #:neither #:neither-null #:m-lambda #:sets #:defparameters |
|
28 |
- #:setfs #:prog1-let #:prog1-bind #:if-let* #:with #:aconsf |
|
29 |
- #+null #:ensure-list #:pick #:vector-destructuring-bind #:with-accessors* |
|
30 |
- #:skip-values #:limit-values #:substitute-values #:op #:pick/r |
|
31 |
- #:pick-error #:twice #:glambda #:default-unless #:transform-first-value |
|
32 |
- #:may #:defun-ct |
|
33 |
- #:define-cluser-entrypoint |
|
34 |
- #:new |
|
35 |
- #:make-constructor |
|
36 |
- #:dive |
|
37 |
- #:empty-hash-table-like |
|
38 |
- #:v-assoc)) |
|
26 |
+ #:%default-pair-transform #:default-when #:transform-result |
|
27 |
+ #:slots-to-pairs #:normalize-html #:destructuring-lambda |
|
28 |
+ #:let-each #:let-first #:let-second #:neither |
|
29 |
+ #:neither-null #:m-lambda #:sets #:defparameters #:setfs |
|
30 |
+ #:prog1-let #:prog1-bind #:if-let* #:with #:aconsf #:pick |
|
31 |
+ #:vector-destructuring-bind #:with-accessors* #:skip-values |
|
32 |
+ #:limit-values #:substitute-values #:op #:pick/r |
|
33 |
+ #:pick-error #:twice #:glambda #:default-unless |
|
34 |
+ #:transform-first-value #:may #:defun-ct |
|
35 |
+ #:define-cluser-entrypoint #:new #:make-constructor #:dive |
|
36 |
+ #:empty-hash-table-like #:v-assoc #:defclass+)) |
|
39 | 37 |
|
40 | 38 |
|
41 | 39 |
(defpackage :fwoar.lisputils.shortcuts |
42 | 40 |
(:use :cl :fwoar.lisputils) |
43 | 41 |
(:nicknames #:fw.lu.t) |
44 |
- (:export :~>)) |
|
42 |
+ (:export #:~>)) |
... | ... |
@@ -7,8 +7,8 @@ |
7 | 7 |
(once-only (vector) |
8 | 8 |
`(symbol-macrolet ,(mapcar (destructuring-lambda ((num symbol)) |
9 | 9 |
`(,symbol (aref ,vector ,num))) |
10 |
- mappings) |
|
11 |
- ,@body)))) |
|
10 |
+ mappings) |
|
11 |
+ ,@body)))) |
|
12 | 12 |
|
13 | 13 |
|
14 | 14 |
(defun v-assoc (item vector &key test test-not key) |
... | ... |
@@ -16,8 +16,8 @@ |
16 | 16 |
for assoc-key = (car cur) |
17 | 17 |
for keyed = (if key (funcall key assoc-key) assoc-key) |
18 | 18 |
if (and test (funcall test item keyed)) do (return cur) |
19 |
- else if (and test-not (not (funcall test item keyed))) do (return cur) |
|
20 |
- else when (eql item keyed) do (return cur))) |
|
19 |
+ else if (and test-not (not (funcall test item keyed))) do (return cur) |
|
20 |
+ else when (eql item keyed) do (return cur))) |
|
21 | 21 |
|
22 | 22 |
(defun v-first (vector) |
23 | 23 |
(elt vector 0)) |
... | ... |
@@ -27,10 +27,11 @@ |
27 | 27 |
(check-type table (array * (* *))) |
28 | 28 |
(let ((table-index (cl-containers:make-container 'cl-containers:simple-associative-container :test test))) |
29 | 29 |
(loop for row-num from 0 to (1- (array-dimension table 0)) |
30 |
- for current-row = (make-array (array-dimension table 1) |
|
31 |
- :displaced-to table |
|
32 |
- :displaced-index-offset (apply #'array-row-major-index table (list row-num 0))) |
|
33 |
- do (setf (cl-containers:item-at table-index (funcall key current-row)) row-num)) |
|
30 |
+ for current-row = (make-array (array-dimension table 1) |
|
31 |
+ :displaced-to table |
|
32 |
+ :displaced-index-offset (apply #'array-row-major-index |
|
33 |
+ table (list row-num 0))) |
|
34 |
+ do (setf (cl-containers:item-at table-index (funcall key current-row)) row-num)) |
|
34 | 35 |
table-index)) |
35 | 36 |
|
36 | 37 |
(defun join-tables (table1 table2 &key (test 'eql) (key1 'v-first) (key2 'v-first)) |
... | ... |
@@ -39,13 +40,15 @@ |
39 | 40 |
(check-type table2 (array * (* *))) |
40 | 41 |
(let ((table2-index (index-table table2 :test test :key key2))) |
41 | 42 |
(loop for row-num from 0 to (1- (array-dimension table1 0)) |
42 |
- for current-row = (make-array (array-dimension table1 1) |
|
43 |
- :displaced-to table1 |
|
44 |
- :displaced-index-offset (apply #'array-row-major-index table1 (list row-num 0))) |
|
45 |
- for dest-index = (cl-containers:item-at table2-index (funcall key1 current-row)) |
|
46 |
- when dest-index |
|
47 |
- collect (let* ((to-row (make-array (array-dimension table2 1) |
|
48 |
- :displaced-to table2 |
|
49 |
- :displaced-index-offset (apply #'array-row-major-index table2 (list dest-index 0))))) |
|
50 |
- (concatenate 'vector current-row to-row))))) |
|
43 |
+ for current-row = (make-array (array-dimension table1 1) |
|
44 |
+ :displaced-to table1 |
|
45 |
+ :displaced-index-offset (apply #'array-row-major-index |
|
46 |
+ table1 (list row-num 0))) |
|
47 |
+ for dest-index = (cl-containers:item-at table2-index (funcall key1 current-row)) |
|
48 |
+ when dest-index |
|
49 |
+ collect (let* ((to-row (make-array (array-dimension table2 1) |
|
50 |
+ :displaced-to table2 |
|
51 |
+ :displaced-index-offset (apply #'array-row-major-index |
|
52 |
+ table2 (list dest-index 0))))) |
|
53 |
+ (concatenate 'vector current-row to-row))))) |
|
51 | 54 |
|