summaryrefslogtreecommitdiff
path: root/src/generics.lisp
blob: 3c3bb8abf2d2c2949ad18dfae346f22da2cbb640 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*-
(declaim (optimize (speed 0) (safety 3) (debug 3)))

(in-package :org-ckons-serializable)

(defgeneric all-slots-value-list-no-nulls (serializable)
  (:documentation "Returns all slots of `record' as an alist. Not
  limited to field slots."))

(defgeneric all-slots-plist-no-nulls (serializable)
  (:documentation "Returns all slots of `record' as a plist. Not
limited to field slots."))

(defgeneric serialize (serializable &key package-name)
  (:documentation "Returns a string that, when read with
`read-from-string', will instantiate the `seializable' object."))