;;;; cl-scopes/storage/folder - persistent folders, stored in a SQL database. (defpackage :scopes/storage/folder (:use :common-lisp) (:local-nicknames (:shape :scopes/shape) (:tracking :scopes/storage/tracking)) (:export #:folder #:make-container)) (in-package :scopes/storage/folder) (defclass folder (tracking:track) ((shape:head-fields :initform '(:parent :name :ref)))) (defun indexes (cont) '((parent name ref) (ref))) (defun make-container (storage) (make-instance 'tracking:container :item-class 'folder :short-name :fldr :table-name :folders :index-factory #'indexes :storage storage))