Skuld exposes an HTTP interface on a per-node basis. The available endpoints are outlined below.
Where r is the read concern.
| (definterface INode | |
| (getNext []) | |
| (setNext [n]) | |
| (getPrev []) | |
| (setPrev [n])) | |
| (deftype Node | |
| [data | |
| ^:unsynchronized-mutable prev | |
| ^:unsynchronized-mutable next] |
| (definterface INode | |
| (getCar []) | |
| (setCar [x]) | |
| (getCdr []) | |
| (setCdr [n]) | |
| (cons [x]) | |
| (reverse [])) | |
| (deftype Node | |
| [^:volatile-mutable car ^:volatile-mutable ^INode cdr] |
| (ns datastructures.skip-list) | |
| (defn lt [a b] | |
| (if (nil? a) | |
| false | |
| (case (compare a b) | |
| 1 false | |
| 0 false | |
| -1 true))) |
| (ns brander.core | |
| (:require [clojure.java.io :as io] | |
| [clojure.java.shell :refer [sh]] | |
| [clojure.string :as string])) | |
| (def words | |
| (lazy-seq | |
| (with-open [r (io/reader "/usr/share/dict/words")] | |
| (doall (map (comp string/lower-case string/trim) (line-seq r)))))) |
| ;; Singly-Linked List | |
| (definterface INode | |
| (getCar []) | |
| (getCdr []) | |
| (setCar [x]) | |
| (setCdr [x])) | |
| (deftype Node | |
| [^:volatile-mutable car ^:volatile-mutable cdr] | |
| INode |
| (definterface INode | |
| (getCar []) | |
| (getCdr []) | |
| (setCar [x]) | |
| (setCdr [x])) | |
| (deftype Node | |
| [^:volatile-mutable car ^:volatile-mutable cdr] | |
| INode | |
| (getCar [_] car) |
| ;; Singly-Linked List | |
| (definterface INode | |
| (getCar []) | |
| (getCdr []) | |
| (setCar [x]) | |
| (setCdr [x])) | |
| (deftype Node | |
| [^:volatile-mutable car ^:volatile-mutable cdr] | |
| INode |
| ;; Singly-Linked List | |
| (definterface INode | |
| (getCar []) | |
| (getCdr []) | |
| (setCar [x]) | |
| (setCdr [x])) | |
| (deftype Node [^:volatile-mutable car ^:volatile-mutable cdr] | |
| INode | |
| (getCar [_] car) |
| (definterface INode | |
| (getCar []) | |
| (getCdr []) | |
| (setCar [x]) | |
| (setCdr [x]) | |
| (valAt [i])) | |
| (deftype Node [^:volatile-mutable car ^:volatile-mutable cdr] | |
| INode | |
| (getCar [_] car) |