The mutility Reference Manual

This is the mutility Reference Manual, version 0.5, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 15 07:07:45 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 mutility

modula’s utilities

Author

modula t.

Contact

Home Page

https://github.com/defaultxr/mutility

Source Control

(GIT git@github.com:defaultxr/mutility.git)

Bug Tracker

https://github.com/defaultxr/mutility/issues

License

MIT

Version

0.5

Dependencies
  • alexandria (system).
  • local-time (system).
  • closer-mop (system).
  • sb-introspect (system)., required, for feature :sbcl
Source

mutility.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 mutility/mutility.asd

Source

mutility.asd.

Parent Component

mutility (system).

ASDF Systems

mutility.


3.1.2 mutility/package.lisp

Source

mutility.asd.

Parent Component

mutility (system).

Packages

mutility.


3.1.3 mutility/mutility.lisp

Dependency

package.lisp (file).

Source

mutility.asd.

Parent Component

mutility (system).

Public Interface
Internals

3.1.4 mutility/ringbuffer.lisp

Dependency

mutility.lisp (file).

Source

mutility.asd.

Parent Component

mutility (system).

Public Interface
Internals

3.1.5 mutility/queue.lisp

Dependency

ringbuffer.lisp (file).

Source

mutility.asd.

Parent Component

mutility (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 mutility

Source

package.lisp.

Use List
  • alexandria.
  • common-lisp.
Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Constants

Constant: +whitespace-chars+

List of characters that represent whitespace like space and tab.

Package

mutility.

Source

mutility.lisp.


5.1.2 Macros

Macro: a (&rest args)

Quickly and conveniently generate lists. Use ! to denote repetition of the previous element, or .. to denote a range.

Inspired by similar functionality in SuperCollider.

Examples:

;; (a 3!3)
;; ;=> (3 3 3)

;; (a -5 (random 3)!5 9 10)
;; ;=> (-5 0 2 2 1 2 9 10)

;; (a 2..9)
;; ;=> (2 3 4 5 6 7 8 9)

See also: ‘fn’, ‘repeat-by-!’, ‘expand-ranges’

Package

mutility.

Source

mutility.lisp.

Macro: affixnew (place thing)

Affix THING to the end of PLACE if it’s not already a member.

See also: ‘alexandria:appendf’, ‘cl:pushnew’.

Package

mutility.

Source

mutility.lisp.

Macro: cut (func &rest args)

The cut macro; notation for specializing parameters without currying, as described in SRFI 26.

https://srfi.schemers.org/srfi-26/srfi-26.html

Examples:

;; (cut ’/ 1 <>) ;=> (lambda (x) (/ 1 x))
;; (cut <> 1 2) ;=> (lambda (func) (funcall func 1 2))
;; (cut ’+ <> <>) ;=> (lambda (x y) (+ x y))

See also: ‘fn’

Package

mutility.

Source

mutility.lisp.

Macro: defclass+ (name direct-superclasses &body body)

‘cl:defclass’ convenience wrapper. Features a much more succinct syntax, additionally defining common functions for the class such as the predicate function.

Adds the following features to ‘cl:defclass’:

- Docstring can be specified as the first element of BODY, similar to ‘cl:defun’.
- Automatically defines a NAME-p (predicate) function.
- Adds a :function option which can be used to specify what to call when the object is ‘cl:funcall’ed. The metaclass is also automatically set to ‘closer-mop:funcallable-standard-class’.

Example:

;; (defclass+ foo ()
;; "Example class defined with defclass+"
;; (a-slot :initarg :a-slot :initform 3)
;; (:function ’print))
;;
;; (funcall (make-instance ’foo)) ; since print is the :function, this is the same as (print (make-instance ’foo))

See also: ‘cl:defclass’

Package

mutility.

Source

mutility.lisp.

Macro: define-dictionary (name &key name-type include-errorp errorp-default define-class-functions find-function-name)

Define a "dictionary" named NAME that maps symbols to objects. Defines the *NAME-dictionary* hash table and several functions for access to said table and the associated objects.

Functions defined:

- NAME-p - Test whether an object is an instance of NAME (if NAME is a class).
- find-NAME - Find the object in the dictionary with the specified name.
- (setf find-NAME) - Set the object in the dictionary with the specified name.
- all-NAMEs - Get a list of all of the objects in the dictionary.
- all-NAME-names - Get a list of all symbols defined in the dictionary.
- NAME-names - Get a list of all names in the dictionary that point to the specified object, optionally including aliases.
- If NAME is the name of a class and DEFINE-CLASS-FUNCTIONS is true, also define methods specializing on symbols for each of that class’s accessors, which look up the object pointed to by that symbol and return the value of that method being called on said object.

Options:

- NAME-TYPE - The type that a NAME dictionary name (key) can be; typically symbol, string, or string-designator.
- INCLUDE-ERRORP - Whether to include the errorp keyword argument for find-NAME.
- ERRORP-DEFAULT - The default value for find-NAME’s errorp argument.
- DEFINE-CLASS-FUNCTIONS - If t, define functions and methods for the class named NAME and error if no such class exists. If :if-class-exists, define methods if the class exists but don’t error otherwise. If nil, don’t define any methods even if the class exists. - FIND-FUNCTION-NAME - The name that should be used to define the find-NAME function. Defaults to find-NAME.

Example:

;; (define-dictionary foo)
;;
;; (setf (find-foo ’bar) (list 1 2 3))
;;
;; (find-foo ’bar) ;=> (1 2 3)

See also: ‘make-hash-table’, ‘find-class’, ‘do-symbols’

Package

mutility.

Source

mutility.lisp.

Macro: do-queue ((var queue &optional result-form) &body body)

Execute BODY once for each element in QUEUE from oldest to newest, with VAR bound to the element, then return RESULT-FORM.

See also: ‘queue-elt’, ‘queue-enqueue’, ‘queue-dequeue’, ‘queue’

Package

mutility.

Source

queue.lisp.

Macro: do-ringbuffer ((var ringbuffer &optional result-form) &body body)

Execute BODY once for each element in RINGBUFFER from oldest to newest, with VAR bound to the element, then return RESULT-FORM.

See also: ‘ringbuffer-elt’, ‘ringbuffer-push’, ‘ringbuffer-pop’, ‘ringbuffer-size’, ‘ringbuffer-index’, ‘ringbuffer-length’, ‘ringbuffer’

Package

mutility.

Source

ringbuffer.lisp.

Macro: dprint (&rest args)

Easy macro to get debug output for a list of variables, ARGS. For each argument in ARGS, print the argument itself, then print what it evaluates to. Returns the last value.

Example:

;; (dprint (random 10) (+ 2 2))

...prints something like the following:
(RANDOM 10): 6; (+ 2 2): 4;
...and returns the value 4.

Package

mutility.

Source

mutility.lisp.

Macro: fn (&body body)

Syntax sugar for ‘lambda’. BODY is the function body. Symbols consisting of an underscore and a number are treated as the lambda’s argument at that index. For example, _1 is the second argument of the lambda. A single underscore is treated the same as _0.

Examples:

;; (funcall (fn (list _1 _0)) :foo :bar) ;=> (:BAR :FOO)

;; (funcall (fn (/ 3 _1)) :foo 2) ;=> 3/2

See also: ‘cut’, ‘a’

Package

mutility.

Source

mutility.lisp.

Macro: with-access (slots instance &body body)

Deprecated; recommended to use metabang-bind’s "bind" macro instead.

Like ‘with-accessors’ and ‘with-slots’ combined; any slots provided as symbols are assumed to refer to both the variable name and the accessor. If no such accessor exists, just grab the slot as per ‘with-slots’.

Example:

If FOO is a function and BAR is not:

;; (with-access (foo bar) blah
;; (format t "~S ~S~%" foo bar))

...is the same as:

;; (with-accessors ((foo foo)) blah
;; (with-slots (bar) blah
;; (format t "~S ~S~%" foo bar)))

See also: ‘cl:with-accessors’, ‘cl:with-slots’

Package

mutility.

Source

mutility.lisp.


5.1.3 Compiler macros

Compiler Macro: current-seconds (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: insert-if (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: join-pathnames (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: length-upto (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: list-length-upto (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: list-length> (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: list-length>= (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: my-intern (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: reintern (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: replace-all (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: round-by-direction (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: split-sequence (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: split-string (&rest args)
Package

mutility.

Source

mutility.lisp.

Compiler Macro: un-intern (&rest args)
Package

mutility.

Source

mutility.lisp.


5.1.4 Ordinary functions

Function: all-classes (&optional package)

Get a list of all defined classes in the Lisp image. With PACKAGE, only get classes belonging to that package.

See also: ‘subclasses-of’

Package

mutility.

Source

mutility.lisp.

Function: approx= (number1 number2 &optional max-dist)

Test whether NUMBER1 and NUMBER2 are "approximately" equal, i.e. within MAX-DIST of each other.

See also: ‘near-zero-p’

Package

mutility.

Source

mutility.lisp.

Function: balanced-subsequences (sequence &key open close test)

Get a list of subsequences of SEQUENCE enclosed between a balanced pairs of OPEN and CLOSE.

Example:

;; (balanced-subsequences "foo [bar] baz [qux [this]] that" :open #[ :close #] :test #’char=) ;; ;=> ("bar" "qux [this]")

See also: ‘sequence-split’, ‘cl:read’

Package

mutility.

Source

mutility.lisp.

Function: ceiling-by (number &optional by)

Round NUMBER up to the next multiple of BY.

See also: ‘cl:ceiling’, ‘floor-by’, ‘round-by’

Package

mutility.

Source

mutility.lisp.

Function: concat (&rest objects)

Concatenate all non-nil OBJECTS together into a string.

See also: ‘cl:concatenate’, ‘uiop:strcat’

Package

mutility.

Source

mutility.lisp.

Function: current-seconds ()

Deprecated alias for ‘lisp-uptime’.

Package

mutility.

Source

mutility.lisp.

Function: elt-wrap (sequence n)

Get the Nth item in SEQUENCE, wrapping the index if out of range. Returns the number of times "wrapped" as a second value.

Much like ‘elt’, this function can be used on any sequence. However, because this function calls ‘length’ to determine the wrapped index, it may be slow when used on large lists. Consider using ‘nth-wrap’ in those cases instead.

See also: ‘nth-wrap’

Package

mutility.

Source

mutility.lisp.

Function: exponential-random-range (low high)

Generate a random number between LOW and HIGH, with exponential distribution.

See also: ‘random-range’, ‘random-gauss’

Package

mutility.

Source

mutility.lisp.

Function: find-class-slot (class key value &key test)

Find a slot in CLASS whose slot option KEY is true when TESTed against VALUE.

Package

mutility.

Source

mutility.lisp.

Function: find-if* (predicate sequence)

Like ‘find-if’, but return the index of the found item as a second value.

See also: ‘find-member’

Package

mutility.

Source

mutility.lisp.

Function: find-member (items list &key test)

Returns the first item from ITEMS that is a member of LIST, or nil if none are found.

See also: ‘find-if*’

Package

mutility.

Source

mutility.lisp.

Function: flatten-1 (list)

Like ‘alexandria:flatten’, but only flattens one layer.

Example:

;; (flatten-1 ’(1 (2 (3 4) 5) 6))
;; ;=> (1 2 (3 4) 5 6)

See also: ‘alexandria:flatten’

Package

mutility.

Source

mutility.lisp.

Function: floor-by (number &optional by)

Round NUMBER down to the previous multiple of BY.

See also: ‘cl:floor’, ‘ceiling-by’, ‘round-by’

Package

mutility.

Source

mutility.lisp.

Function: flop (lists)

Given LISTS, a list of lists, swap rows for columns.

Example:

;; (flop ’((0 1 2)
;; (2 0 1)
;; (1 2 0)))
;; ;=> ((0 2 1)
;; (1 0 2)
;; (2 1 0))

Package

mutility.

Source

mutility.lisp.

Function: fold (number &optional bottom top)

Fold numbers outside BOTTOM and TOP back into the range.

Examples:

;; (fold -1 0 1) ;=> 1
;; (fold 5 0 10) ;=> 5
;; (fold 8 0 7) ;=> 6

See also: ‘wrap’, ‘cl:mod’, ‘alexandria:clamp’

Package

mutility.

Source

mutility.lisp.

Function: friendly-bytes (bytes &key short)

Given BYTES, a number of bytes, convert to the most "friendly" unit and return a list containing the number and the unit.

When SHORT is true, the unit is abbreviated.

See also: ‘friendly-bytes-string’

Package

mutility.

Source

mutility.lisp.

Function: friendly-bytes-string (bytes &key short)

Generate a string describing BYTES as a number of bytes, kilobytes, megabytes, etc. When SHORT is true, the unit is abbreviated.

See also: ‘friendly-bytes’

Package

mutility.

Source

mutility.lisp.

Function: friendly-duration-string (seconds &key include-ms)

Format a number of seconds as a more human-readable string. For now, hours are the biggest unit considered.

Example:

;; (friendly-duration-string 300) ;=> "5:00"
;; (friendly-duration-string 3600) ;=> "1:00:00"

See also: ‘friendly-ratio-string’

Package

mutility.

Source

mutility.lisp.

Function: friendly-ratio-string (ratio &optional separator)

Format a ratio as a more human-readable string.

Example:

;; (friendly-ratio-string 5/4) ;=> "1 1/4" ;; (friendly-ratio-string 9/7) ;=> "1 2/7"

See also: ‘friendly-duration-string’

Package

mutility.

Source

mutility.lisp.

Function: friendly-string (input)

Return INPUT as a string with all non-letter, non-number, and non-hyphen characters removed.

Example:

;; (friendly-symbol "foo’s bar, baz, and qux") ;=> :FOOS-BAR-BAZ-AND-QUX

See also: ‘friendly-symbol’, ‘parse-boolean’, ‘friendly-ratio-string’, ‘friendly-duration-string’

Package

mutility.

Source

mutility.lisp.

Function: friendly-symbol (input &optional package)

Return INPUT as a symbol with all non-letter, non-number, and non-hyphen characters removed.

Example:

;; (friendly-symbol "foo’s bar, baz, and qux") ;=> :FOOS-BAR-BAZ-AND-QUX

See also: ‘friendly-string’, ‘parse-boolean’, ‘friendly-ratio-string’, ‘friendly-duration-string’

Package

mutility.

Source

mutility.lisp.

Function: funcallable-object-p (object)

True if OBJECT is a funcallable object.

Package

mutility.

Source

mutility.lisp.

Function: function-arglist (function)

Get the signature of FUNCTION.

Package

mutility.

Source

mutility.lisp.

Function: function-designator-p (object)

True if OBJECT is a ‘function-designator’, i.e. a string or pathname.

Package

mutility.

Source

mutility.lisp.

Function: generate-temporary-file-name (&key name directory extension)

Generate a string representing a full path to a new temporary file. The file name defaults to a timestamp. Will automatically create DIRECTORY if it doesn’t exist. Will also attempt to generate a new name if a file with that name already exists.

Example:

;; (generate-temporary-file-name :name "foo" :directory "/tmp/lisp/" :extension "wav")
;; => "/tmp/lisp/foo.wav"

;; (generate-temporary-file-name :directory "/tmp/lisp/" :extension :flac)
;; => "/tmp/lisp/2020-04-20-06-09-00.flac"

See also: ‘uiop:tmpize-pathname’, ‘uiop:temporary-directory’

Package

mutility.

Source

mutility.lisp.

Function: insert-if (function list item)

Destructively insert ITEM into LIST at the position where FUNCTION is true. If the function doesn’t return true, the item is inserted at the end of the list. Similar to ‘nreverse’, the input list is destructively modified.

Example:

;; (insert-if #’plusp (list -2 -1 1 2) 0) ;=> (-2 -1 0 1 2)

Package

mutility.

Source

mutility.lisp.

Function: ip-string-vector (ip-string)

Convert an IP specified as a string to an IP specified as a 4-element vector.

See also: ‘ip-vector-string’

Package

mutility.

Source

mutility.lisp.

Function: ip-vector-string (ip-vector)

Convert an IP specified as a 4-element sequence to an IP specified as a string.

See also: ‘ip-string-vector’

Package

mutility.

Source

mutility.lisp.

Function: join-path-components (&rest path-components)

Join PATH-COMPONENTS together into a single string, ensuring each is separated by exactly one directory separator.

Example:

;; (join-path-components "foo" "/bar" "baz.qux) ;=> "foo/bar/baz.qux"

See also: ‘cl:merge-pathnames’, ‘uiop:merge-pathnames*’

Package

mutility.

Source

mutility.lisp.

Function: join-pathnames (&rest filenames)

Deprecated alias for ‘join-path-components’.

Package

mutility.

Source

mutility.lisp.

Function: left-trim (bag sequence &key test)

Trim anything from BAG from the start of SEQUENCE.

See also: ‘list-left-trim’, ‘cl:string-left-trim’

Package

mutility.

Source

mutility.lisp.

Function: length-upto (sequence &optional max)

Deprecated function; use ‘alexandria:length=’ instead.

Get the length of SEQUENCE, not counting above MAX.

Example:

;; (length-upto (make-list 200) 20) ;=> 20

See also: ‘alexandria:length=’

Package

mutility.

Source

mutility.lisp.

Function: lisp-connections ()

Get a list of the current connections to this Lisp image.

Package

mutility.

Source

mutility.lisp.

Function: lisp-uptime ()

Get the number of seconds that Lisp has been running for.

Package

mutility.

Source

mutility.lisp.

Function: list-left-trim (bag list &key test)

Trim anything from BAG from the start of LIST.

See also: ‘left-trim’, ‘cl:string-left-trim’

Package

mutility.

Source

mutility.lisp.

Function: list-length-upto (list &optional max)

Deprecated function; use ‘alexandria:length=’ instead.

Package

mutility.

Source

mutility.lisp.

Function: list-length> (list n)

Deprecated function; use ‘serapeum:length>’ or ‘alexandria:length=’ instead.

True if LIST is more than N in length.

See also: ‘serapeum:length>’, ‘alexandria:length=’

Package

mutility.

Source

mutility.lisp.

Function: list-length>= (list n)

Deprecated function; use ‘serapeum:length>=’ or ‘alexandria:length=’ instead.

True if LIST is at least N in length. Probably more efficient than doing something like (>= (length list) n).

Example:

;; (list-length>= (make-list 300) 10) ;=> T

See also: ‘serapeum:length>=’, ‘alexandria:length=’

Package

mutility.

Source

mutility.lisp.

Function: make-queue (size)

Make a ‘queue’ object of the specified size and the specified initial element.

See also: ‘queue-size’, ‘queue-enqueue’, ‘queue-dequeue’, ‘queue-elt’, ‘queue’

Package

mutility.

Source

queue.lisp.

Function: make-ringbuffer (size &optional initial-element)

Make a ‘ringbuffer’ object of the specified size and the specified initial element.

See also: ‘ringbuffer-size’, ‘ringbuffer-index’, ‘ringbuffer-initial-element’, ‘ringbuffer-push’, ‘ringbuffer-elt’, ‘ringbuffer-pop’, ‘ringbuffer-get’, ‘ringbuffer’

Package

mutility.

Source

ringbuffer.lisp.

Function: mapcross (function &rest lists)

"Cross" operator adverb; similar to ‘maptable’ but results in a flat list.

This function is inspired by and equivalent to SuperCollider’s ".x" operator adverb.

Example:

;; (maptable #’+ (list 10 20 30 40 50) (list 1 2 3))
;; ;=> (11 12 13 21 22 23 31 32 33 41 42 43 51 52 53)

See also: ‘mapshort’, ‘mapwrap’, ‘mapfold’, ‘maptable’

Package

mutility.

Source

mutility.lisp.

Function: mapfold (function &rest lists)

"Fold" operator adverb; apply FUNCTION to successive sets of elements from LISTS, producing a list that is the length of the longest list by "folding" indexes into the shorter lists.

This is similar to ‘mapcar’ but results in a list that is the length of the longest input list.

This function is inspired by and equivalent to SuperCollider’s ".f" operator adverb.

Example:

;; (mapfold #’+ (list 10 20 30 40 50) (list 1 2 3))
;; ;=> (11 22 33 42 51)

See also: ‘mapshort’, ‘mapwrap’, ‘maptable’, ‘mapcross’

Package

mutility.

Source

mutility.lisp.

Function: mapshort (function &rest lists)

"Short" operator adverb; apply FUNCTION to successive sets of elements from LISTS. Mostly here for completion sake, as this is effectively the same thing as regular ‘mapcar’.

This function is inspired by and equivalent to SuperCollider’s ".s" operator adverb.

Example:

;; (mapshort #’+ (list 10 20 30 40 50) (list 1 2 3))
;; => (11 22 33)

See also: ‘mapwrap’, ‘mapfold’, ‘maptable’, ‘mapcross’

Package

mutility.

Source

mutility.lisp.

Function: maptable (function &rest lists)

"Table" operator adverb; apply FUNCTION to each element of each list in LISTS, producing a list of lists for each.

This function is inspired by and equivalent to SuperCollider’s ".t" operator adverb.

Example:

;; (maptable #’+ (list 10 20 30 40 50) (list 1 2 3))
;; ;=> ((11 12 13) (21 22 23) (31 32 33) (41 42 43) (51 52 53))

See also: ‘mapshort’, ‘mapwrap’, ‘mapfold’, ‘mapcross’

Package

mutility.

Source

mutility.lisp.

Function: mapwrap (function &rest lists)

"Wrap" operator adverb; apply FUNCTION to successive sets of elements from LISTS, producing a list that is the length of the longest list by "wrapping" indexes into the shorter lists.

This is similar to ‘mapcar’ but results in a list that is the length of the longest input list.

This function is inspired by and equivalent to SuperCollider’s ".w" operator adverb.

Example:

;; (mapwrap #’+ (list 10 20 30 40 50) (list 1 2 3))
;; => (11 22 33 41 52)

See also: ‘mapshort’, ‘mapfold’, ‘maptable’, ‘mapcross’

Package

mutility.

Source

mutility.lisp.

Function: most (function list &key key)

Get the most FUNCTION item in LIST by comparing the KEY of each item with FUNCTION. Unlike ‘reduce’, this function returns the whole item from LIST, even when KEY is provided.

Example:

;; get the item in the list with the smallest car:
;; (most ’< ’((2 :bar) (3 :baz) (1 :foo)) :key ’car) ;=> (1 :FOO)

See also: ‘cl:reduce’, ‘cl:find-if’

Package

mutility.

Source

mutility.lisp.

Function: my-intern (string &optional package)

Deprecated alias for ‘upcase-intern’.

Package

mutility.

Source

mutility.lisp.

Function: near-zero-p (number &optional max-dist)

True if NUMBER is within MAX-DIST of zero. Helps guard against division by zero.

See also: ‘approx=’

Package

mutility.

Source

mutility.lisp.

Function: nth-wrap (n list)

Get the Nth item in LIST, wrapping the index if out of range. Returns the number of times "wrapped" as a second value.

Much like ‘nth’, this function can only be used on lists. Use ‘elt-wrap’ to index into any kind of sequence. However, keep in mind that ‘elt-wrap’ may be slower when used on large lists.

See also: ‘elt-wrap’

Package

mutility.

Source

mutility.lisp.

Function: numeric-char-p (char &key allow-minus allow-ratio)

True if CHAR is a character that can be part of a floating point number.

See also: ‘vowel-char-p’, ‘cl:digit-char-p’, ‘cl:alpha-char-p’, ‘cl:graphic-char-p’, ‘cl:standard-char-p’

Package

mutility.

Source

mutility.lisp.

Function: open-url (url)

Open a URL via the OS’s default application.

Package

mutility.

Source

mutility.lisp.

Function: output (&rest objects)

Concatenate (as per ‘concat’) and print OBJECTS, returning the last one.

See also: ‘concat’

Package

mutility.

Source

mutility.lisp.

Function: parse-boolean (string &optional default)

Parse STRING as a boolean, returning either t or nil, or DEFAULT if it is not a known boolean string.

See also: ‘cl:parse-integer’, ‘url-p’

Package

mutility.

Source

mutility.lisp.

Function: pathname-designator-p (object)

True if OBJECT is a ‘pathname-designator’, i.e. a string or pathname.

Package

mutility.

Source

mutility.lisp.

Function: pretty-print-tree (tree &optional indent)

Pretty print TREE, indenting the elements of each sublist.

Package

mutility.

Source

mutility.lisp.

Function: queue-contents (queue)

Get a list of the current contents of QUEUE.

Package

mutility.

Source

queue.lisp.

Function: (setf queue-contents) (contents)

Set QUEUE’s contents to CONTENTS.

Package

mutility.

Source

queue.lisp.

Function: queue-dequeue (queue)

Get and remove the oldest item from QUEUE. Signals ‘queue-empty’ if there are no elements in QUEUE.

See also: ‘queue-peek’, ‘queue-enqueue’, ‘queue-contents’, ‘queue’

Package

mutility.

Source

queue.lisp.

Function: queue-elt (queue index)

Get the element at INDEX in QUEUE. Negative indexes are from the most recently-pushed elements, while non-negative are from the oldest. So -1 is the most recently-queued item, and -2 is the second most. 0 is the oldest item in the queue, and 1 is the second oldest.

Examples:

;; (defparameter q (make-queue 3))
;; (queue-enqueue q 0)
;; (queue-enqueue q 1)
;; (queue-enqueue q 2)
;; ;; Get the most recently-queued element:
;; (queue-elt q -1) ;=> 2
;; ;; Get the oldest element:
;; (queue-elt q 0) ;=> 0
;; ;; Get the second-oldest element:
;; (queue-elt q 1) ;=> 1

See also: ‘queue-enqueue’, ‘queue-dequeue’, ‘queue-size’, ‘queue’

Package

mutility.

Source

queue.lisp.

Function: (setf queue-elt) (queue index)
Package

mutility.

Source

queue.lisp.

Function: queue-empty-p (queue)

True when QUEUE is empty.

See also: ‘queue-dequeue’, ‘queue-full-p’, ‘queue-enqueue’, ‘queue’

Package

mutility.

Source

queue.lisp.

Function: queue-enqueue (queue object)

Add OBJECT to QUEUE. Signals ‘queue-full’ if QUEUE is full.

See also: ‘queue-dequeue’, ‘queue-contents’, ‘queue’

Package

mutility.

Source

queue.lisp.

Function: queue-full-p (queue)

True when QUEUE is full.

See also: ‘queue-enqueue’, ‘queue-empty-p’, ‘queue-dequeue’, ‘queue’

Package

mutility.

Source

queue.lisp.

Reader: queue-length (instance)

The number of items currently in the queue.

See also: ‘queue-index’, ‘queue-size’, ‘queue’

Package

mutility.

Source

queue.lisp.

Target Slot

length.

Writer: (setf queue-length) (instance)
Package

mutility.

Source

queue.lisp.

Target Slot

length.

Function: queue-peek (queue)

Get the oldest item from QUEUE. Signals ‘queue-empty’ if there are no elements in QUEUE.

See also: ‘queue-dequeue’, ‘queue-enqueue’, ‘queue-contents’, ‘queue’

Package

mutility.

Source

queue.lisp.

Function: queue-size (queue)

The maximum number of elements that QUEUE can hold.

Package

mutility.

Source

queue.lisp.

Function: random-coin (&optional probability)

Randomly return true with a probability of PROBABILITY/1.

Package

mutility.

Source

mutility.lisp.

Function: random-gauss (mean standard-deviation)

Generate a random number from a normal (Gaussian) distribution.

See also: ‘random-range’, ‘exponential-random-range’, ‘alexandria:gaussian-random’

Package

mutility.

Source

mutility.lisp.

Function: random-range (low &optional high)

Return a random number between LOW and HIGH, inclusive. If HIGH is not provided, act the same as (random LOW).

See also: ‘exponential-random-range’, ‘random-gauss’

Package

mutility.

Source

mutility.lisp.

Function: read-as-tokens (stream &key quotes separators count slurp-rest)

Read "token-like" (either separated by SEPARATORS or delimited by QUOTES) strings from STREAM, collecting them into a list of at most COUNT items. Note that QUOTES are only processed as such when they are adjacent to any of the SEPARATORS.

Package

mutility.

Source

mutility.lisp.

Function: reintern (symbol &optional package)

Deprecated function; recommend using ‘alexandria:ensure-symbol’ instead.

Package

mutility.

Source

mutility.lisp.

Function: replace-all (string part replacement &key test)

Deprecated alias for ‘string-replace-all*’.

Package

mutility.

Source

mutility.lisp.

Function: restore-hash-table (filename &rest make-hash-table-args)

Restore a hash table from a file saved with the ‘save-hash-table’ function.

Example:

;; (restore-hash-table "/home/user/blah.hash")
;; ;=> #<HASH-TABLE ...>

See also: ‘save-hash-table’

Package

mutility.

Source

mutility.lisp.

Reader: ringbuffer-array (instance)

The actual array object that contains the ringbuffer data.

See also: ‘ringbuffer-size’, ‘ringbuffer-index’, ‘ringbuffer-length’, ‘ringbuffer-initial-element’

Package

mutility.

Source

ringbuffer.lisp.

Target Slot

array.

Writer: (setf ringbuffer-array) (instance)
Package

mutility.

Source

ringbuffer.lisp.

Target Slot

array.

Function: ringbuffer-elt (ringbuffer index)

Get the element at INDEX in RINGBUFFER. Negative indexes are from the most recently-pushed elements, while zero or positive are from the oldest. So -1 is the most recently-pushed item, and -2 is the second most. 0 is the oldest item in the ringbuffer, and 1 is the second oldest.

Examples:

;; (defparameter rb (make-ringbuffer 3))
;; (ringbuffer-push rb 0)
;; (ringbuffer-push rb 1)
;; (ringbuffer-push rb 2)
;; ;; Get the most recently-pushed element:
;; (ringbuffer-elt rb -1) ;=> 2
;; ;; Get the oldest element:
;; (ringbuffer-elt rb 0) ;=> 0
;; ;; Get the second-oldest element:
;; (ringbuffer-elt rb 1) ;=> 1

See also: ‘ringbuffer-get’, ‘ringbuffer-newest’, ‘ringbuffer-oldest’, ‘ringbuffer-push’, ‘ringbuffer-size’, ‘ringbuffer-index’, ‘ringbuffer-initial-element’, ‘ringbuffer’

Package

mutility.

Source

ringbuffer.lisp.

Function: (setf ringbuffer-elt) (ringbuffer index)
Package

mutility.

Source

ringbuffer.lisp.

Function: ringbuffer-get (ringbuffer)

Get the oldest element from RINGBUFFER, removing it in the process.

See also: ‘ringbuffer-pop’, ‘ringbuffer-elt’, ‘ringbuffer-push’, ‘ringbuffer-size’, ‘ringbuffer-index’, ‘ringbuffer-initial-element’, ‘ringbuffer’

Package

mutility.

Source

ringbuffer.lisp.

Reader: ringbuffer-index (instance)

The current index into the ringbuffer that new elements will be pushed to.

See also: ‘ringbuffer-length’, ‘ringbuffer-size’, ‘ringbuffer-initial-element’

Package

mutility.

Source

ringbuffer.lisp.

Target Slot

index.

Writer: (setf ringbuffer-index) (instance)
Package

mutility.

Source

ringbuffer.lisp.

Target Slot

index.

Reader: ringbuffer-initial-element (instance)

The initial element that each cell in the ringbuffer defaults to, and is set to when the cell is ‘ringbuffer-pop’ped or ‘ringbuffer-get’ted.

See also: ‘ringbuffer-size’, ‘ringbuffer-index’, ‘ringbuffer-length’

Package

mutility.

Source

ringbuffer.lisp.

Target Slot

initial-element.

Writer: (setf ringbuffer-initial-element) (instance)
Package

mutility.

Source

ringbuffer.lisp.

Target Slot

initial-element.

Reader: ringbuffer-length (instance)

The length of the ringbuffer, i.e. the number of items currently in it. It is always a number in the range from 0 to ‘ringbuffer-size’.

See also: ‘ringbuffer-index’, ‘ringbuffer-size’, ‘ringbuffer-initial-element’

Package

mutility.

Source

ringbuffer.lisp.

Target Slot

length.

Writer: (setf ringbuffer-length) (instance)
Package

mutility.

Source

ringbuffer.lisp.

Target Slot

length.

Function: ringbuffer-newest (ringbuffer &optional n)

Get a list of the last N items in RINGBUFFER, from most to least recent.

See also: ‘ringbuffer-oldest’, ‘ringbuffer-elt’, ‘do-ringbuffer’, ‘ringbuffer’

Package

mutility.

Source

ringbuffer.lisp.

Function: ringbuffer-oldest (ringbuffer &optional n)

Get a list of the oldest N items in RINGBUFFER, from least to most recent.

See also: ‘ringbuffer-newest’, ‘ringbuffer-elt’, ‘do-ringbuffer’, ‘ringbuffer’

Package

mutility.

Source

ringbuffer.lisp.

Function: ringbuffer-pop (ringbuffer)

Get the element most recently pushed to RINGBUFFER, removing it and decreasing the ‘ringbuffer-index’ to point at the next most recent element.

See also: ‘ringbuffer-get’, ‘ringbuffer-elt’, ‘ringbuffer-push’, ‘ringbuffer-size’, ‘ringbuffer-index’, ‘ringbuffer-initial-element’, ‘ringbuffer’

Package

mutility.

Source

ringbuffer.lisp.

Function: ringbuffer-push (ringbuffer object)

Add OBJECT to RINGBUFFER.

See also: ‘ringbuffer-pop’, ‘ringbuffer-get’, ‘ringbuffer-elt’, ‘ringbuffer-size’, ‘ringbuffer-index’, ‘ringbuffer-initial-element’, ‘ringbuffer’

Package

mutility.

Source

ringbuffer.lisp.

Reader: ringbuffer-size (instance)

The maximum size of the ringbuffer.

See also: ‘ringbuffer-length’, ‘ringbuffer-index’, ‘ringbuffer-initial-element’

Package

mutility.

Source

ringbuffer.lisp.

Target Slot

size.

Function: rot13 (string &optional n)

Rotate the characters of STRING alphabetically by N letters.

Package

mutility.

Source

mutility.lisp.

Function: round-by (number &optional by)

Round NUMBER to the nearest multiple of BY.

Examples:

;; (round-by 1 2) ; => 0
;; (round-by 1.1 0.5) ; => 1.0
;; (round-by 6 10) ; => 10

See also: ‘cl:round’, ‘floor-by’, ‘ceiling-by’

Package

mutility.

Source

mutility.lisp.

Function: round-by-direction (number &optional by)

Deprecated; use either ‘floor-by’, ‘ceiling-by’, or ‘round-by’ instead.

Package

mutility.

Source

mutility.lisp.

Function: save-hash-table (hash filename &key if-exists)

Save a hash table to a file. See ‘restore-hash-table’ to load the saved table.

Example:

;; (save-hash-table *my-hash* "/home/user/blah.hash" :if-exists :rename)

See also: ‘restore-hash-table’

Package

mutility.

Source

mutility.lisp.

Function: sequence-replace (sequence target replacement &key test count key)

Replace instances of TARGET with REPLACEMENT in SEQUENCE, optionally limiting to COUNT replacements. Returns the number of replacements made as a second value.

See also: ‘sequence-split’

Package

mutility.

Source

mutility.lisp.

Function: sequence-split (sequence delimiter &key test offset)

Split SEQUENCE by searching for instances of DELIMITER using TEST. After finding a match for DELIMITER, the next search is run on the subsequence of SEQUENCE OFFSET from the location of the match.

Example:

;; (sequence-split "foo - bar - baz" " - " :test ’search)
;; ;=> ("foo" "bar" "baz")

See also: ‘sequence-replace’, ‘balanced-subsequences’

Package

mutility.

Source

mutility.lisp.

Function: split-sequence (sequence delimiter)

Deprecated alias for ‘sequence-split’.

Package

mutility.

Source

mutility.lisp.

Function: split-string (&rest rest)

Deprecated alias for ‘string-split’.

Package

mutility.

Source

mutility.lisp.

Function: string-designator-p (object)

True if OBJECT is a string-designator, i.e. a string or symbol.

See also: ‘alexandria:string-designator’

Package

mutility.

Source

mutility.lisp.

Function: string-join* (strings &optional separator)

Join all non-nil elements of STRINGS together, separated by SEPARATOR.

Similar to ‘serapeum:string-join’, but ignores nils in STRINGS.

Examples:

;; (string-join* (list "foo" "bar" "baz") "-") ;=> "foo-bar-baz"

;; (string-join* (list "foo" nil "baz") "-") ;=> "foo-baz"

See also: ‘concat’, ‘serapeum:string-join’

Package

mutility.

Source

mutility.lisp.

Function: string-replace-all* (string part replacement &key test)

Get a new string in which all the occurences of the part is replaced with replacement.

See also: ‘cl-ppcre:regex-replace-all’

Package

mutility.

Source

mutility.lisp.

Function: string-split (string &key char-bag count include-empty max-num)

Split STRING into a list of substrings by partitioning by the characters in CHAR-BAG, optionally to a list of maximum size COUNT. If INCLUDE-EMPTY is true, include empty strings in the resulting list (and length count); otherwise exclude them.

Example:

;; (string-split "this that the other thing")
;; ;=> ("this" "that" "the" "other" "thing")

;; (string-split " foo bar baz qux " :count 2)
;; ;=> ("foo" "bar baz qux ")

See also: ‘string-split-by-string’, ‘sequence-split’, ‘str:split’, ‘split-sequence:split-sequence’

Package

mutility.

Source

mutility.lisp.

Function: string-split-by-string (string split-by &key count include-empty char-comparison)

Split STRING into a list of substrings by partitioning by the string SPLIT-BY, optionally to a list of maximum size COUNT. If INCLUDE-EMPTY is true, include empty strings in the resulting list (and length count); otherwise exclude them. CHAR-COMPARISON is the function to use to compare characters; typically this is either ‘char=’ (the default) for case-sensitive comparison or ‘char-equal’ for case-insensitive comparison.

Example:

;; (string-split-by-string "this - that - the-other thing" " - ")
;; ;=> ("this" "that" "the-other thing")

See also: ‘string-split’, ‘sequence-split’, ‘str:split’, ‘split-sequence:split-sequence’

Package

mutility.

Source

mutility.lisp.

Function: subclasses-of (class &key recursive-p)

Get a list of all direct subclasses of CLASS. If RECURSIVE-P is true, recursively get all subclasses.

See also: ‘all-classes’

Package

mutility.

Source

mutility.lisp.

Function: subseq* (sequence start &optional end)

Like subseq, but allows start and end to be negative.

Package

mutility.

Source

mutility.lisp.

Function: systems-depending-on (system)

Get a list of systems in the current image that include SYSTEM in their :depends-on.

Package

mutility.

Source

mutility.lisp.

Function: un-intern (symbol)

Deprecated alias for ‘string-downcase’.

Package

mutility.

Source

mutility.lisp.

Function: upcase-intern (string &optional package)

Uppercase and convert STRING into a symbol.

See also: ‘alexandria:ensure-symbol’, ‘string-downcase’

Package

mutility.

Source

mutility.lisp.

Function: url-p (string &key ignore-case)

True if STRING looks like a valid URL. If CASE-SENSITIVE, the protocol must be lowercase for the URL to be valid.

See also: ‘open-url’, ‘pathname-designator-p’, ‘parse-boolean’

Package

mutility.

Source

mutility.lisp.

Function: vowel-char-p (char &key include-y include-w)

True if CHAR is a vowel character (i.e. a, e, i, o, or u, and sometimes y and/or w).

See also: ‘numeric-char-p’, ‘cl:alpha-char-p’, ‘cl:digit-char-p’, ‘cl:graphic-char-p’, ‘cl:standard-char-p’

Package

mutility.

Source

mutility.lisp.

Function: wrap (number &optional bottom top)

Wraps a number between BOTTOM and TOP, similar to ‘cl:mod’.

Examples:

;; (wrap 2 0 1) ; => 0
;; (wrap 5 0 10) ; => 5
;; (wrap 15 0 10) ; => 4

See also: ‘fold’, ‘cl:mod’, ‘alexandria:clamp’

Package

mutility.

Source

mutility.lisp.


5.1.5 Generic functions

Generic Function: keys (object)

Get the keys of OBJECT, whether it be a plist, hash table, etc.

Package

mutility.

Source

mutility.lisp.

Methods
Method: keys ((object hash-table))
Method: keys ((object cons))
Method: keys ((object null))
Generic Reader: no-dictionary-entry-dictionary (condition)

The dictionary object itself.

Package

mutility.

Methods
Reader Method: no-dictionary-entry-dictionary ((condition no-dictionary-entry))
Source

mutility.lisp.

Target Slot

dictionary.

Generic Reader: no-dictionary-entry-dictionary-name (condition)

The name of the dictionary.

Package

mutility.

Methods
Reader Method: no-dictionary-entry-dictionary-name ((condition no-dictionary-entry))
Source

mutility.lisp.

Target Slot

dictionary-name.

Generic Reader: no-dictionary-entry-entry (condition)

The name of the entry being looked up.

Package

mutility.

Methods
Reader Method: no-dictionary-entry-entry ((condition no-dictionary-entry))
Source

mutility.lisp.

Target Slot

entry.


5.1.6 Standalone methods

Method: initialize-instance :after ((object funcallable-wrapper) &key)
Source

mutility.lisp.

Method: print-object ((ringbuffer ringbuffer) stream)
Source

ringbuffer.lisp.

Method: print-object ((queue queue) stream)
Source

queue.lisp.


5.1.7 Conditions

Condition: no-dictionary-entry

Condition for when a dictionary entry is not found.

Package

mutility.

Source

mutility.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: entry

The name of the entry being looked up.

Initargs

:entry

Readers

no-dictionary-entry-entry.

Writers

This slot is read-only.

Slot: dictionary-name

The name of the dictionary.

Initargs

:dictionary-name

Readers

no-dictionary-entry-dictionary-name.

Writers

This slot is read-only.

Slot: dictionary

The dictionary object itself.

Initargs

:dictionary

Readers

no-dictionary-entry-dictionary.

Writers

This slot is read-only.

Condition: queue-empty

Condition for when a ‘queue’ is empty.

Package

mutility.

Source

queue.lisp.

Direct superclasses

condition.

Direct methods

queue-empty-queue.

Direct slots
Slot: queue
Initargs

:queue

Readers

queue-empty-queue.

Writers

This slot is read-only.

Condition: queue-full

Condition for when a ‘queue’ is full.

Package

mutility.

Source

queue.lisp.

Direct superclasses

condition.

Direct methods

queue-full-queue.

Direct slots
Slot: queue
Initargs

:queue

Readers

queue-full-queue.

Writers

This slot is read-only.

Condition: queue-index-out-of-range

Condition for when the requested index of a ‘queue’ is out of range.

Package

mutility.

Source

queue.lisp.

Direct superclasses

condition.

Direct methods
Direct slots
Slot: queue
Initargs

:queue

Readers

queue-index-out-of-range-queue.

Writers

This slot is read-only.

Slot: index
Initargs

:index

Readers

queue-index-out-of-range-index.

Writers

This slot is read-only.


5.1.8 Structures

Structure: queue

A first-in-first-out queue.

See also: ‘ringbuffer’

Package

mutility.

Source

queue.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: length
Package

common-lisp.

Type

(integer 0)

Initform

0

Readers

queue-length.

Writers

(setf queue-length).

Slot: index
Type

integer

Initform

0

Readers

queue-index.

Writers

(setf queue-index).

Slot: array
Package

common-lisp.

Type

array

Initform

#()

Readers

queue-array.

Writers

(setf queue-array).

Structure: ringbuffer

A ringbuffer, also known as a circular buffer. Items can be pushed onto it and popped from it just like a regular stack, except that has a finite size. After SIZE elements are pushed to it, the next push overwrites the least recent element.

Package

mutility.

Source

ringbuffer.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: size
Type

integer

Initform

10

Readers

ringbuffer-size.

Writers

This slot is read-only.

Slot: index
Type

integer

Initform

0

Readers

ringbuffer-index.

Writers

(setf ringbuffer-index).

Slot: length
Package

common-lisp.

Type

integer

Initform

0

Readers

ringbuffer-length.

Writers

(setf ringbuffer-length).

Slot: initial-element
Readers

ringbuffer-initial-element.

Writers

(setf ringbuffer-initial-element).

Slot: array
Package

common-lisp.

Readers

ringbuffer-array.

Writers

(setf ringbuffer-array).


5.1.9 Types

Type: function-designator ()

An object that can be used to designate a function, i.e. a function, an ‘fboundp’ symbol, or a funcallable object.

Package

mutility.

Source

mutility.lisp.

Type: pathname-designator ()

An object that can be used to designate a pathname, i.e. a string or pathname.

Package

mutility.

Source

mutility.lisp.


5.2 Internals


5.2.1 Constants

Constant: +quote-chars+

List of characters that represent quotation marks like QUOTATION_MARK and APOSTROPHE.

Package

mutility.

Source

mutility.lisp.


5.2.2 Special variables

Special Variable: *deprecated-function-error-round-by-direction-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-style-warning-current-seconds-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-style-warning-insert-if-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-style-warning-length-upto-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-style-warning-list-length>-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-style-warning-list-length>=-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-style-warning-replace-all-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-warning-join-pathnames-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-warning-list-length-upto-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-warning-my-intern-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-warning-reintern-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-warning-split-sequence-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-warning-split-string-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: *deprecated-function-warning-un-intern-notified-p*
Package

mutility.

Source

mutility.lisp.

Special Variable: +alphabet+
Package

mutility.

Source

mutility.lisp.


5.2.3 Ordinary functions

Function: %make-queue (&key length index array)
Package

mutility.

Source

queue.lisp.

Function: %make-ringbuffer (&key size index length initial-element array)
Package

mutility.

Source

ringbuffer.lisp.

Function: copy-queue (instance)
Package

mutility.

Source

queue.lisp.

Function: copy-ringbuffer (instance)
Package

mutility.

Source

ringbuffer.lisp.

Function: expand-ranges (list)

Expand ranges denoted by a..b in list.

Example:

;; (expand-ranges ’(0..5 -2..2)) ;; => (0 1 2 3 4 5 -2 -1 0 1 2)

Package

mutility.

Source

mutility.lisp.

Function: prepend-list-to-sublists (list)

Prepend the symbol ’list to LIST and all of its sublists.

Package

mutility.

Source

mutility.lisp.

Reader: queue-array (instance)
Writer: (setf queue-array) (instance)
Package

mutility.

Source

queue.lisp.

Target Slot

array.

Function: queue-elt-internal-index (queue index)

Get the index into QUEUE’s internal array to access INDEX.

See also: ‘queue-elt’

Package

mutility.

Source

queue.lisp.

Reader: queue-index (instance)

The index into the queue’s internal array of the element that would be dequeued by ‘queue-dequeue’.

See also: ‘queue-length’, ‘queue-size’, ‘queue-dequeue’, ‘queue’

Package

mutility.

Source

queue.lisp.

Target Slot

index.

Writer: (setf queue-index) (instance)
Package

mutility.

Source

queue.lisp.

Target Slot

index.

Function: queue-p (object)
Package

mutility.

Source

queue.lisp.

Function: random-range.new (low &optional high)

Return a random number between LOW and HIGH, inclusive. If HIGH is not provided, act the same as (random LOW).

Package

mutility.

Source

mutility.lisp.

Function: read-as-token (&optional stream quotes separators)

Read a "token-like" (either separated by SEPARATORS or delimited by QUOTES) string from STREAM. Note that only the start and end of potential tokens (i.e. adjacent to any of SEPARATORS) are checked for QUOTES.

See also: ‘read-as-tokens’

Package

mutility.

Source

mutility.lisp.

Function: repeat (item repeats)

Get a list containing REPEATS ITEMs. If ITEM is a function, return a list of REPEATS of the result of that function.

Example:

;; (repeat (lambda () (random 10)) 10)
;; ;=> (7 0 6 6 7 9 8 1 9 8)

Package

mutility.

Source

mutility.lisp.

Function: repeat-by (object repeats &optional add-list)

Returns a list of object repeated REPEATS times. If REPEATS is a list of multiple numbers, recursively repeat the generated lists.

When ADD-LIST is true, prepend ’list to each generated list.

Example:

;; (repeat-by 3 3)
;; => (3 3 3)
;;
;; (repeat-by 3 ’(3 2))
;; => ((3 3 3) (3 3 3))

See also: ‘repeat-by-!’, ‘a’

Package

mutility.

Source

mutility.lisp.

Function: repeat-by-! (list &optional add-list)

Given LIST, repeat items marked with ! by the number after the !.

When ADD-LIST is true, prepend ’list to each generated list. This is useful if you’re using this function in a macro, such as the ‘a’ macro, which this function does all the heavy lifting for.

Examples:

;; (repeat-by-! ’(1!2))
;; => (1 1)
;;
;; (repeat-by-! ’(1!2!3))
;; => ((1 1) (1 1) (1 1))
;;
;; (repeat-by-! ’(1 (* 2 3)!2))
;; => (1 (* 2 3) (* 2 3))

See also: ‘repeat-by’, ‘a’

Package

mutility.

Source

mutility.lisp.

Function: ringbuffer-p (object)
Package

mutility.

Source

ringbuffer.lisp.

Function: split-by-! (string)

Split STRING up by exclamation points.

Package

mutility.

Source

mutility.lisp.


5.2.4 Generic functions

Generic Reader: funcallable-wrapper-funcall-function (object)
Generic Writer: (setf funcallable-wrapper-funcall-function) (object)
Package

mutility.

Methods
Reader Method: funcallable-wrapper-funcall-function ((funcallable-wrapper funcallable-wrapper))
Writer Method: (setf funcallable-wrapper-funcall-function) ((funcallable-wrapper funcallable-wrapper))

The function to call when this object is ‘funcall’ed.

Source

mutility.lisp.

Target Slot

funcall-function.

Generic Reader: queue-empty-queue (condition)
Package

mutility.

Methods
Reader Method: queue-empty-queue ((condition queue-empty))
Source

queue.lisp.

Target Slot

queue.

Generic Reader: queue-full-queue (condition)
Package

mutility.

Methods
Reader Method: queue-full-queue ((condition queue-full))
Source

queue.lisp.

Target Slot

queue.

Generic Reader: queue-index-out-of-range-index (condition)
Package

mutility.

Methods
Reader Method: queue-index-out-of-range-index ((condition queue-index-out-of-range))
Source

queue.lisp.

Target Slot

index.

Generic Reader: queue-index-out-of-range-queue (condition)
Package

mutility.

Methods
Reader Method: queue-index-out-of-range-queue ((condition queue-index-out-of-range))
Source

queue.lisp.

Target Slot

queue.


5.2.5 Classes

Class: funcallable-wrapper

Simple wrapper class to apply funcallable object functionality to funcallable objects defined with ‘defclass+’.

Package

mutility.

Source

mutility.lisp.

Direct superclasses

funcallable-standard-object.

Direct methods
Direct slots
Slot: funcall-function

The function to call when this object is ‘funcall’ed.

Type

function

Initargs

mutility::funcall-function

Readers

funcallable-wrapper-funcall-function.

Writers

(setf funcallable-wrapper-funcall-function).


5.2.6 Types

Type: slot-definition-slot ()

Slots of slot definitions. This is primarily used for ‘find-class-slot’.

See also: ‘find-class-slot’

Package

mutility.

Source

mutility.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   B   C   D   E   F   G   I   J   K   L   M   N   O   P   Q   R   S   U   V   W  
Index Entry  Section

%
%make-queue: Private ordinary functions
%make-ringbuffer: Private ordinary functions

(
(setf funcallable-wrapper-funcall-function): Private generic functions
(setf funcallable-wrapper-funcall-function): Private generic functions
(setf queue-array): Private ordinary functions
(setf queue-contents): Public ordinary functions
(setf queue-elt): Public ordinary functions
(setf queue-index): Private ordinary functions
(setf queue-length): Public ordinary functions
(setf ringbuffer-array): Public ordinary functions
(setf ringbuffer-elt): Public ordinary functions
(setf ringbuffer-index): Public ordinary functions
(setf ringbuffer-initial-element): Public ordinary functions
(setf ringbuffer-length): Public ordinary functions

A
a: Public macros
affixnew: Public macros
all-classes: Public ordinary functions
approx=: Public ordinary functions

B
balanced-subsequences: Public ordinary functions

C
ceiling-by: Public ordinary functions
Compiler Macro, current-seconds: Public compiler macros
Compiler Macro, insert-if: Public compiler macros
Compiler Macro, join-pathnames: Public compiler macros
Compiler Macro, length-upto: Public compiler macros
Compiler Macro, list-length-upto: Public compiler macros
Compiler Macro, list-length>: Public compiler macros
Compiler Macro, list-length>=: Public compiler macros
Compiler Macro, my-intern: Public compiler macros
Compiler Macro, reintern: Public compiler macros
Compiler Macro, replace-all: Public compiler macros
Compiler Macro, round-by-direction: Public compiler macros
Compiler Macro, split-sequence: Public compiler macros
Compiler Macro, split-string: Public compiler macros
Compiler Macro, un-intern: Public compiler macros
concat: Public ordinary functions
copy-queue: Private ordinary functions
copy-ringbuffer: Private ordinary functions
current-seconds: Public compiler macros
current-seconds: Public ordinary functions
cut: Public macros

D
defclass+: Public macros
define-dictionary: Public macros
do-queue: Public macros
do-ringbuffer: Public macros
dprint: Public macros

E
elt-wrap: Public ordinary functions
expand-ranges: Private ordinary functions
exponential-random-range: Public ordinary functions

F
find-class-slot: Public ordinary functions
find-if*: Public ordinary functions
find-member: Public ordinary functions
flatten-1: Public ordinary functions
floor-by: Public ordinary functions
flop: Public ordinary functions
fn: Public macros
fold: Public ordinary functions
friendly-bytes: Public ordinary functions
friendly-bytes-string: Public ordinary functions
friendly-duration-string: Public ordinary functions
friendly-ratio-string: Public ordinary functions
friendly-string: Public ordinary functions
friendly-symbol: Public ordinary functions
funcallable-object-p: Public ordinary functions
funcallable-wrapper-funcall-function: Private generic functions
funcallable-wrapper-funcall-function: Private generic functions
Function, %make-queue: Private ordinary functions
Function, %make-ringbuffer: Private ordinary functions
Function, (setf queue-array): Private ordinary functions
Function, (setf queue-contents): Public ordinary functions
Function, (setf queue-elt): Public ordinary functions
Function, (setf queue-index): Private ordinary functions
Function, (setf queue-length): Public ordinary functions
Function, (setf ringbuffer-array): Public ordinary functions
Function, (setf ringbuffer-elt): Public ordinary functions
Function, (setf ringbuffer-index): Public ordinary functions
Function, (setf ringbuffer-initial-element): Public ordinary functions
Function, (setf ringbuffer-length): Public ordinary functions
Function, all-classes: Public ordinary functions
Function, approx=: Public ordinary functions
Function, balanced-subsequences: Public ordinary functions
Function, ceiling-by: Public ordinary functions
Function, concat: Public ordinary functions
Function, copy-queue: Private ordinary functions
Function, copy-ringbuffer: Private ordinary functions
Function, current-seconds: Public ordinary functions
Function, elt-wrap: Public ordinary functions
Function, expand-ranges: Private ordinary functions
Function, exponential-random-range: Public ordinary functions
Function, find-class-slot: Public ordinary functions
Function, find-if*: Public ordinary functions
Function, find-member: Public ordinary functions
Function, flatten-1: Public ordinary functions
Function, floor-by: Public ordinary functions
Function, flop: Public ordinary functions
Function, fold: Public ordinary functions
Function, friendly-bytes: Public ordinary functions
Function, friendly-bytes-string: Public ordinary functions
Function, friendly-duration-string: Public ordinary functions
Function, friendly-ratio-string: Public ordinary functions
Function, friendly-string: Public ordinary functions
Function, friendly-symbol: Public ordinary functions
Function, funcallable-object-p: Public ordinary functions
Function, function-arglist: Public ordinary functions
Function, function-designator-p: Public ordinary functions
Function, generate-temporary-file-name: Public ordinary functions
Function, insert-if: Public ordinary functions
Function, ip-string-vector: Public ordinary functions
Function, ip-vector-string: Public ordinary functions
Function, join-path-components: Public ordinary functions
Function, join-pathnames: Public ordinary functions
Function, left-trim: Public ordinary functions
Function, length-upto: Public ordinary functions
Function, lisp-connections: Public ordinary functions
Function, lisp-uptime: Public ordinary functions
Function, list-left-trim: Public ordinary functions
Function, list-length-upto: Public ordinary functions
Function, list-length>: Public ordinary functions
Function, list-length>=: Public ordinary functions
Function, make-queue: Public ordinary functions
Function, make-ringbuffer: Public ordinary functions
Function, mapcross: Public ordinary functions
Function, mapfold: Public ordinary functions
Function, mapshort: Public ordinary functions
Function, maptable: Public ordinary functions
Function, mapwrap: Public ordinary functions
Function, most: Public ordinary functions
Function, my-intern: Public ordinary functions
Function, near-zero-p: Public ordinary functions
Function, nth-wrap: Public ordinary functions
Function, numeric-char-p: Public ordinary functions
Function, open-url: Public ordinary functions
Function, output: Public ordinary functions
Function, parse-boolean: Public ordinary functions
Function, pathname-designator-p: Public ordinary functions
Function, prepend-list-to-sublists: Private ordinary functions
Function, pretty-print-tree: Public ordinary functions
Function, queue-array: Private ordinary functions
Function, queue-contents: Public ordinary functions
Function, queue-dequeue: Public ordinary functions
Function, queue-elt: Public ordinary functions
Function, queue-elt-internal-index: Private ordinary functions
Function, queue-empty-p: Public ordinary functions
Function, queue-enqueue: Public ordinary functions
Function, queue-full-p: Public ordinary functions
Function, queue-index: Private ordinary functions
Function, queue-length: Public ordinary functions
Function, queue-p: Private ordinary functions
Function, queue-peek: Public ordinary functions
Function, queue-size: Public ordinary functions
Function, random-coin: Public ordinary functions
Function, random-gauss: Public ordinary functions
Function, random-range: Public ordinary functions
Function, random-range.new: Private ordinary functions
Function, read-as-token: Private ordinary functions
Function, read-as-tokens: Public ordinary functions
Function, reintern: Public ordinary functions
Function, repeat: Private ordinary functions
Function, repeat-by: Private ordinary functions
Function, repeat-by-!: Private ordinary functions
Function, replace-all: Public ordinary functions
Function, restore-hash-table: Public ordinary functions
Function, ringbuffer-array: Public ordinary functions
Function, ringbuffer-elt: Public ordinary functions
Function, ringbuffer-get: Public ordinary functions
Function, ringbuffer-index: Public ordinary functions
Function, ringbuffer-initial-element: Public ordinary functions
Function, ringbuffer-length: Public ordinary functions
Function, ringbuffer-newest: Public ordinary functions
Function, ringbuffer-oldest: Public ordinary functions
Function, ringbuffer-p: Private ordinary functions
Function, ringbuffer-pop: Public ordinary functions
Function, ringbuffer-push: Public ordinary functions
Function, ringbuffer-size: Public ordinary functions
Function, rot13: Public ordinary functions
Function, round-by: Public ordinary functions
Function, round-by-direction: Public ordinary functions
Function, save-hash-table: Public ordinary functions
Function, sequence-replace: Public ordinary functions
Function, sequence-split: Public ordinary functions
Function, split-by-!: Private ordinary functions
Function, split-sequence: Public ordinary functions
Function, split-string: Public ordinary functions
Function, string-designator-p: Public ordinary functions
Function, string-join*: Public ordinary functions
Function, string-replace-all*: Public ordinary functions
Function, string-split: Public ordinary functions
Function, string-split-by-string: Public ordinary functions
Function, subclasses-of: Public ordinary functions
Function, subseq*: Public ordinary functions
Function, systems-depending-on: Public ordinary functions
Function, un-intern: Public ordinary functions
Function, upcase-intern: Public ordinary functions
Function, url-p: Public ordinary functions
Function, vowel-char-p: Public ordinary functions
Function, wrap: Public ordinary functions
function-arglist: Public ordinary functions
function-designator-p: Public ordinary functions

G
generate-temporary-file-name: Public ordinary functions
Generic Function, (setf funcallable-wrapper-funcall-function): Private generic functions
Generic Function, funcallable-wrapper-funcall-function: Private generic functions
Generic Function, keys: Public generic functions
Generic Function, no-dictionary-entry-dictionary: Public generic functions
Generic Function, no-dictionary-entry-dictionary-name: Public generic functions
Generic Function, no-dictionary-entry-entry: Public generic functions
Generic Function, queue-empty-queue: Private generic functions
Generic Function, queue-full-queue: Private generic functions
Generic Function, queue-index-out-of-range-index: Private generic functions
Generic Function, queue-index-out-of-range-queue: Private generic functions

I
initialize-instance: Public standalone methods
insert-if: Public compiler macros
insert-if: Public ordinary functions
ip-string-vector: Public ordinary functions
ip-vector-string: Public ordinary functions

J
join-path-components: Public ordinary functions
join-pathnames: Public compiler macros
join-pathnames: Public ordinary functions

K
keys: Public generic functions
keys: Public generic functions
keys: Public generic functions
keys: Public generic functions

L
left-trim: Public ordinary functions
length-upto: Public compiler macros
length-upto: Public ordinary functions
lisp-connections: Public ordinary functions
lisp-uptime: Public ordinary functions
list-left-trim: Public ordinary functions
list-length-upto: Public compiler macros
list-length-upto: Public ordinary functions
list-length>: Public compiler macros
list-length>: Public ordinary functions
list-length>=: Public compiler macros
list-length>=: Public ordinary functions

M
Macro, a: Public macros
Macro, affixnew: Public macros
Macro, cut: Public macros
Macro, defclass+: Public macros
Macro, define-dictionary: Public macros
Macro, do-queue: Public macros
Macro, do-ringbuffer: Public macros
Macro, dprint: Public macros
Macro, fn: Public macros
Macro, with-access: Public macros
make-queue: Public ordinary functions
make-ringbuffer: Public ordinary functions
mapcross: Public ordinary functions
mapfold: Public ordinary functions
mapshort: Public ordinary functions
maptable: Public ordinary functions
mapwrap: Public ordinary functions
Method, (setf funcallable-wrapper-funcall-function): Private generic functions
Method, funcallable-wrapper-funcall-function: Private generic functions
Method, initialize-instance: Public standalone methods
Method, keys: Public generic functions
Method, keys: Public generic functions
Method, keys: Public generic functions
Method, no-dictionary-entry-dictionary: Public generic functions
Method, no-dictionary-entry-dictionary-name: Public generic functions
Method, no-dictionary-entry-entry: Public generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, queue-empty-queue: Private generic functions
Method, queue-full-queue: Private generic functions
Method, queue-index-out-of-range-index: Private generic functions
Method, queue-index-out-of-range-queue: Private generic functions
most: Public ordinary functions
my-intern: Public compiler macros
my-intern: Public ordinary functions

N
near-zero-p: Public ordinary functions
no-dictionary-entry-dictionary: Public generic functions
no-dictionary-entry-dictionary: Public generic functions
no-dictionary-entry-dictionary-name: Public generic functions
no-dictionary-entry-dictionary-name: Public generic functions
no-dictionary-entry-entry: Public generic functions
no-dictionary-entry-entry: Public generic functions
nth-wrap: Public ordinary functions
numeric-char-p: Public ordinary functions

O
open-url: Public ordinary functions
output: Public ordinary functions

P
parse-boolean: Public ordinary functions
pathname-designator-p: Public ordinary functions
prepend-list-to-sublists: Private ordinary functions
pretty-print-tree: Public ordinary functions
print-object: Public standalone methods
print-object: Public standalone methods

Q
queue-array: Private ordinary functions
queue-contents: Public ordinary functions
queue-dequeue: Public ordinary functions
queue-elt: Public ordinary functions
queue-elt-internal-index: Private ordinary functions
queue-empty-p: Public ordinary functions
queue-empty-queue: Private generic functions
queue-empty-queue: Private generic functions
queue-enqueue: Public ordinary functions
queue-full-p: Public ordinary functions
queue-full-queue: Private generic functions
queue-full-queue: Private generic functions
queue-index: Private ordinary functions
queue-index-out-of-range-index: Private generic functions
queue-index-out-of-range-index: Private generic functions
queue-index-out-of-range-queue: Private generic functions
queue-index-out-of-range-queue: Private generic functions
queue-length: Public ordinary functions
queue-p: Private ordinary functions
queue-peek: Public ordinary functions
queue-size: Public ordinary functions

R
random-coin: Public ordinary functions
random-gauss: Public ordinary functions
random-range: Public ordinary functions
random-range.new: Private ordinary functions
read-as-token: Private ordinary functions
read-as-tokens: Public ordinary functions
reintern: Public compiler macros
reintern: Public ordinary functions
repeat: Private ordinary functions
repeat-by: Private ordinary functions
repeat-by-!: Private ordinary functions
replace-all: Public compiler macros
replace-all: Public ordinary functions
restore-hash-table: Public ordinary functions
ringbuffer-array: Public ordinary functions
ringbuffer-elt: Public ordinary functions
ringbuffer-get: Public ordinary functions
ringbuffer-index: Public ordinary functions
ringbuffer-initial-element: Public ordinary functions
ringbuffer-length: Public ordinary functions
ringbuffer-newest: Public ordinary functions
ringbuffer-oldest: Public ordinary functions
ringbuffer-p: Private ordinary functions
ringbuffer-pop: Public ordinary functions
ringbuffer-push: Public ordinary functions
ringbuffer-size: Public ordinary functions
rot13: Public ordinary functions
round-by: Public ordinary functions
round-by-direction: Public compiler macros
round-by-direction: Public ordinary functions

S
save-hash-table: Public ordinary functions
sequence-replace: Public ordinary functions
sequence-split: Public ordinary functions
split-by-!: Private ordinary functions
split-sequence: Public compiler macros
split-sequence: Public ordinary functions
split-string: Public compiler macros
split-string: Public ordinary functions
string-designator-p: Public ordinary functions
string-join*: Public ordinary functions
string-replace-all*: Public ordinary functions
string-split: Public ordinary functions
string-split-by-string: Public ordinary functions
subclasses-of: Public ordinary functions
subseq*: Public ordinary functions
systems-depending-on: Public ordinary functions

U
un-intern: Public compiler macros
un-intern: Public ordinary functions
upcase-intern: Public ordinary functions
url-p: Public ordinary functions

V
vowel-char-p: Public ordinary functions

W
with-access: Public macros
wrap: Public ordinary functions


A.3 Variables

Jump to:   *   +  
A   C   D   E   F   I   L   Q   S  
Index Entry  Section

*
*deprecated-function-error-round-by-direction-notified-p*: Private special variables
*deprecated-function-style-warning-current-seconds-notified-p*: Private special variables
*deprecated-function-style-warning-insert-if-notified-p*: Private special variables
*deprecated-function-style-warning-length-upto-notified-p*: Private special variables
*deprecated-function-style-warning-list-length>-notified-p*: Private special variables
*deprecated-function-style-warning-list-length>=-notified-p*: Private special variables
*deprecated-function-style-warning-replace-all-notified-p*: Private special variables
*deprecated-function-warning-join-pathnames-notified-p*: Private special variables
*deprecated-function-warning-list-length-upto-notified-p*: Private special variables
*deprecated-function-warning-my-intern-notified-p*: Private special variables
*deprecated-function-warning-reintern-notified-p*: Private special variables
*deprecated-function-warning-split-sequence-notified-p*: Private special variables
*deprecated-function-warning-split-string-notified-p*: Private special variables
*deprecated-function-warning-un-intern-notified-p*: Private special variables

+
+alphabet+: Private special variables
+quote-chars+: Private constants
+whitespace-chars+: Public constants

A
array: Public structures
array: Public structures

C
Constant, +quote-chars+: Private constants
Constant, +whitespace-chars+: Public constants

D
dictionary: Public conditions
dictionary-name: Public conditions

E
entry: Public conditions

F
funcall-function: Private classes

I
index: Public conditions
index: Public structures
index: Public structures
initial-element: Public structures

L
length: Public structures
length: Public structures

Q
queue: Public conditions
queue: Public conditions
queue: Public conditions

S
size: Public structures
Slot, array: Public structures
Slot, array: Public structures
Slot, dictionary: Public conditions
Slot, dictionary-name: Public conditions
Slot, entry: Public conditions
Slot, funcall-function: Private classes
Slot, index: Public conditions
Slot, index: Public structures
Slot, index: Public structures
Slot, initial-element: Public structures
Slot, length: Public structures
Slot, length: Public structures
Slot, queue: Public conditions
Slot, queue: Public conditions
Slot, queue: Public conditions
Slot, size: Public structures
Special Variable, *deprecated-function-error-round-by-direction-notified-p*: Private special variables
Special Variable, *deprecated-function-style-warning-current-seconds-notified-p*: Private special variables
Special Variable, *deprecated-function-style-warning-insert-if-notified-p*: Private special variables
Special Variable, *deprecated-function-style-warning-length-upto-notified-p*: Private special variables
Special Variable, *deprecated-function-style-warning-list-length>-notified-p*: Private special variables
Special Variable, *deprecated-function-style-warning-list-length>=-notified-p*: Private special variables
Special Variable, *deprecated-function-style-warning-replace-all-notified-p*: Private special variables
Special Variable, *deprecated-function-warning-join-pathnames-notified-p*: Private special variables
Special Variable, *deprecated-function-warning-list-length-upto-notified-p*: Private special variables
Special Variable, *deprecated-function-warning-my-intern-notified-p*: Private special variables
Special Variable, *deprecated-function-warning-reintern-notified-p*: Private special variables
Special Variable, *deprecated-function-warning-split-sequence-notified-p*: Private special variables
Special Variable, *deprecated-function-warning-split-string-notified-p*: Private special variables
Special Variable, *deprecated-function-warning-un-intern-notified-p*: Private special variables
Special Variable, +alphabet+: Private special variables


A.4 Data types

Jump to:   C   F   M   N   P   Q   R   S   T  
Index Entry  Section

C
Class, funcallable-wrapper: Private classes
Condition, no-dictionary-entry: Public conditions
Condition, queue-empty: Public conditions
Condition, queue-full: Public conditions
Condition, queue-index-out-of-range: Public conditions

F
File, mutility.asd: The mutility/mutility․asd file
File, mutility.lisp: The mutility/mutility․lisp file
File, package.lisp: The mutility/package․lisp file
File, queue.lisp: The mutility/queue․lisp file
File, ringbuffer.lisp: The mutility/ringbuffer․lisp file
funcallable-wrapper: Private classes
function-designator: Public types

M
mutility: The mutility system
mutility: The mutility package
mutility.asd: The mutility/mutility․asd file
mutility.lisp: The mutility/mutility․lisp file

N
no-dictionary-entry: Public conditions

P
Package, mutility: The mutility package
package.lisp: The mutility/package․lisp file
pathname-designator: Public types

Q
queue: Public structures
queue-empty: Public conditions
queue-full: Public conditions
queue-index-out-of-range: Public conditions
queue.lisp: The mutility/queue․lisp file

R
ringbuffer: Public structures
ringbuffer.lisp: The mutility/ringbuffer․lisp file

S
slot-definition-slot: Private types
Structure, queue: Public structures
Structure, ringbuffer: Public structures
System, mutility: The mutility system

T
Type, function-designator: Public types
Type, pathname-designator: Public types
Type, slot-definition-slot: Private types