mirror of
https://github.com/janet-lang/janet
synced 2024-09-29 23:40:40 +00:00
Run boot.janet through janet-format.
This commit is contained in:
parent
658941d26d
commit
c4c86f8671
@ -939,37 +939,37 @@
|
|||||||
indexed beyond the first.`
|
indexed beyond the first.`
|
||||||
[n maptype res f ind inds]
|
[n maptype res f ind inds]
|
||||||
~(do
|
~(do
|
||||||
(def ,(seq [k :range [0 n]] (symbol 'ind k)) ,inds)
|
(def ,(seq [k :range [0 n]] (symbol 'ind k)) ,inds)
|
||||||
,;(seq [k :range [0 n]] ~(var ,(symbol 'key k) nil))
|
,;(seq [k :range [0 n]] ~(var ,(symbol 'key k) nil))
|
||||||
(each x ,ind
|
(each x ,ind
|
||||||
,;(seq [k :range [0 n]]
|
,;(seq [k :range [0 n]]
|
||||||
~(if (= nil (set ,(symbol 'key k) (next ,(symbol 'ind k) ,(symbol 'key k)))) (break)))
|
~(if (= nil (set ,(symbol 'key k) (next ,(symbol 'ind k) ,(symbol 'key k)))) (break)))
|
||||||
(map-aggregator ,maptype ,res (,f x ,;(seq [k :range [0 n]] ~(in ,(symbol 'ind k) ,(symbol 'key k))))))))
|
(map-aggregator ,maptype ,res (,f x ,;(seq [k :range [0 n]] ~(in ,(symbol 'ind k) ,(symbol 'key k))))))))
|
||||||
|
|
||||||
(defmacro- map-template
|
(defmacro- map-template
|
||||||
[maptype res f ind inds]
|
[maptype res f ind inds]
|
||||||
~(do
|
~(do
|
||||||
(def ninds (length ,inds))
|
(def ninds (length ,inds))
|
||||||
(case ninds
|
(case ninds
|
||||||
0 (each x ,ind (map-aggregator ,maptype ,res (,f x)))
|
0 (each x ,ind (map-aggregator ,maptype ,res (,f x)))
|
||||||
1 (map-n 1 ,maptype ,res ,f ,ind ,inds)
|
1 (map-n 1 ,maptype ,res ,f ,ind ,inds)
|
||||||
2 (map-n 2 ,maptype ,res ,f ,ind ,inds)
|
2 (map-n 2 ,maptype ,res ,f ,ind ,inds)
|
||||||
3 (map-n 3 ,maptype ,res ,f ,ind ,inds)
|
3 (map-n 3 ,maptype ,res ,f ,ind ,inds)
|
||||||
4 (map-n 4 ,maptype ,res ,f ,ind ,inds)
|
4 (map-n 4 ,maptype ,res ,f ,ind ,inds)
|
||||||
(do
|
(do
|
||||||
(def iter-keys (array/new-filled ninds))
|
(def iter-keys (array/new-filled ninds))
|
||||||
(def call-buffer (array/new-filled ninds))
|
(def call-buffer (array/new-filled ninds))
|
||||||
(var done false)
|
(var done false)
|
||||||
(each x ,ind
|
(each x ,ind
|
||||||
(forv i 0 ninds
|
(forv i 0 ninds
|
||||||
(let [old-key (in iter-keys i)
|
(let [old-key (in iter-keys i)
|
||||||
ii (in ,inds i)
|
ii (in ,inds i)
|
||||||
new-key (next ii old-key)]
|
new-key (next ii old-key)]
|
||||||
(if (= nil new-key)
|
(if (= nil new-key)
|
||||||
(do (set done true) (break))
|
(do (set done true) (break))
|
||||||
(do (set (iter-keys i) new-key) (set (call-buffer i) (in ii new-key))))))
|
(do (set (iter-keys i) new-key) (set (call-buffer i) (in ii new-key))))))
|
||||||
(if done (break))
|
(if done (break))
|
||||||
(map-aggregator ,maptype ,res (,f x ;call-buffer)))))))
|
(map-aggregator ,maptype ,res (,f x ;call-buffer)))))))
|
||||||
|
|
||||||
(defn map
|
(defn map
|
||||||
`Map a function over every value in a data structure and
|
`Map a function over every value in a data structure and
|
||||||
@ -2131,23 +2131,23 @@
|
|||||||
(not= tx (type y))
|
(not= tx (type y))
|
||||||
(case tx
|
(case tx
|
||||||
:tuple (or (not= (length x) (length y))
|
:tuple (or (not= (length x) (length y))
|
||||||
(do
|
(do
|
||||||
(var ret false)
|
(var ret false)
|
||||||
(forv i 0 (length x)
|
(forv i 0 (length x)
|
||||||
(def xx (in x i))
|
(def xx (in x i))
|
||||||
(def yy (in y i))
|
(def yy (in y i))
|
||||||
(if (deep-not= xx yy)
|
(if (deep-not= xx yy)
|
||||||
(break (set ret true))))
|
(break (set ret true))))
|
||||||
ret))
|
ret))
|
||||||
:array (or (not= (length x) (length y))
|
:array (or (not= (length x) (length y))
|
||||||
(do
|
(do
|
||||||
(var ret false)
|
(var ret false)
|
||||||
(forv i 0 (length x)
|
(forv i 0 (length x)
|
||||||
(def xx (in x i))
|
(def xx (in x i))
|
||||||
(def yy (in y i))
|
(def yy (in y i))
|
||||||
(if (deep-not= xx yy)
|
(if (deep-not= xx yy)
|
||||||
(break (set ret true))))
|
(break (set ret true))))
|
||||||
ret))
|
ret))
|
||||||
:struct (deep-not= (kvs x) (kvs y))
|
:struct (deep-not= (kvs x) (kvs y))
|
||||||
:table (deep-not= (table/to-struct x) (table/to-struct y))
|
:table (deep-not= (table/to-struct x) (table/to-struct y))
|
||||||
:buffer (not= (string x) (string y))
|
:buffer (not= (string x) (string y))
|
||||||
@ -3213,16 +3213,17 @@
|
|||||||
(cond
|
(cond
|
||||||
(or (= b (chr "\n")) (= b (chr " "))) (endtoken)
|
(or (= b (chr "\n")) (= b (chr " "))) (endtoken)
|
||||||
(= b (chr "`")) (delim :code)
|
(= b (chr "`")) (delim :code)
|
||||||
(not (modes :code)) (cond
|
(not (modes :code))
|
||||||
|
(cond
|
||||||
(= b (chr `\`)) (do
|
(= b (chr `\`)) (do
|
||||||
(++ token-length)
|
(++ token-length)
|
||||||
(buffer/push token (get line (++ i))))
|
(buffer/push token (get line (++ i))))
|
||||||
(= b (chr "_")) (delim :underline)
|
(= b (chr "_")) (delim :underline)
|
||||||
(= b (chr "*"))
|
(= b (chr "*"))
|
||||||
(if (= (chr "*") (get line (+ i 1)))
|
(if (= (chr "*") (get line (+ i 1)))
|
||||||
(do (++ i)
|
(do (++ i)
|
||||||
(delim :bold))
|
(delim :bold))
|
||||||
(delim :italics))
|
(delim :italics))
|
||||||
(do (++ token-length) (buffer/push token b)))
|
(do (++ token-length) (buffer/push token b)))
|
||||||
(do (++ token-length) (buffer/push token b))))
|
(do (++ token-length) (buffer/push token b))))
|
||||||
(endtoken)
|
(endtoken)
|
||||||
@ -3766,10 +3767,10 @@
|
|||||||
(defn make-ptr []
|
(defn make-ptr []
|
||||||
(assert (ffi/lookup (if lazy (llib) lib) raw-symbol) (string "failed to find ffi symbol " raw-symbol)))
|
(assert (ffi/lookup (if lazy (llib) lib) raw-symbol) (string "failed to find ffi symbol " raw-symbol)))
|
||||||
(if lazy
|
(if lazy
|
||||||
~(defn ,name ,;meta [,;formal-args]
|
~(defn ,name ,;meta [,;formal-args]
|
||||||
(,ffi/call (,(delay (make-ptr))) (,(delay (make-sig))) ,;formal-args))
|
(,ffi/call (,(delay (make-ptr))) (,(delay (make-sig))) ,;formal-args))
|
||||||
~(defn ,name ,;meta [,;formal-args]
|
~(defn ,name ,;meta [,;formal-args]
|
||||||
(,ffi/call ,(make-ptr) ,(make-sig) ,;formal-args)))))
|
(,ffi/call ,(make-ptr) ,(make-sig) ,;formal-args)))))
|
||||||
|
|
||||||
###
|
###
|
||||||
###
|
###
|
||||||
|
Loading…
Reference in New Issue
Block a user