The com.clearly-useful.generic-collection-interface Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The com.clearly-useful.generic-collection-interface Reference Manual

This is the com.clearly-useful.generic-collection-interface Reference Manual, version 0.2.1, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 11:37:33 2018 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Introduction

#+TITLE: generic collection interface for common lisp

* overview

  Warning:
  This system is not yet at 1.0, and the interfaces will change as
  I use them more and work out design problems. Buyer beware!
  
  This system provides several related protocols and a few functions
  for collection manipulation in common lisp, and implementations for
  built-in types. It includes an interface for clojure-style reducers.
  While this system may be used to simply consume collections,
  it does not contain many utility functions for doing so, as
  it is intended to be used by implementors that wish to provide
  a clean interface to their own collection classes.
  As a convenience, interface packages are provided for each of the protocols
  defined which export only the symbols relevant to that
  protocol. (see com.clearly-useful.generic-collection-interface.lisp)
  None of the symbols exported by this system clash
  with common lisp.

* justification

  There are many quality data structure libraries for common lisp,
  but they have disparate interfaces, and swapping in a new collection
  type to existing code can be painful. This library is an attempt
  to provide a sufficiently generic set of protocols so that code written
  to them may use any data structure appropriate to the task at hand
  without difficulty. 

* design

  The design of this library is modelled quite a bit after clojure,
  but it is written to integrate with common lisp. None of the symbols
  exported by this package clash with the cl package, and the code
  follows cl naming conventions. There are several packages related
  to this one that simply export a subset of it's interface. These
  packages are to help implementors who don't want to import the
  entire collection interface just to implement a certain aspect 
  of it.

* protocol overview

  This package defines several protocols for working with
  collections, some of which are interrelated.

** =collection=
   This is the base protocol for the library.
   A collection responds to two methods:

   =empty= -> produce an empty collection
   =empty-p= -> whether the collection is empty

** =seqable=
   A thing which may be converted to a seq.  This protocol
   defines the method =seq= which serves a bit of a double duty: it
   may be used to create a list-like object from another, but should
   always return /nil/ when it's result is empty. For example, given a
   (hypothetical) unordered set which implements =collection= and
   =seqable=:
#begin_src lisp
   a ;=> {2 1 3}
   (empty a) ;=> {}
   (empty-p a) ;=> nil
   (empty-p (empty a)) ;=> t
   (seq a) ; => (3 2 1) or similar
   (seq (empty a)) ;=> nil
#end_src
   
   
** =seq=
   requires =collection=, =seqable=
   This protocol provides a list-like abstraction with
   the methods =head= and =tail=.
 

** =associative=
   requires =collection=
   This protocol provides a dictionary-like abstraction with the
   methods =all-keys=, =all-values=, =contains-key-p=, and
   =value-for-key=.
   

** =countable=
   requires =collection=
   A collection that may be counted.
   =counted-p= -> bool, whether count-elements is o(1)
   =count-elements= -> number
   
** =indexable=
   requires =collection=, =countable=
   This protocol provides a vector-like abstraction
   with the method =element-at=

** =reduceable=
   a thing which can reduce itself via =coll-reduce=
   used to implement clojure-style reducers.
   
** =foldable=
   a thing which can fold itself via =coll-fold=
   ditto reducable, includes a parallel implementation
   for common lisp vectors.
   
* additional functions
** additional associative functions
   all-keys-and-values
   getkey
   
** fold-left, fold

* exported symbols

  See [[https://github.com/jaeschliman/com.clearly-useful.generic-collection-interface/blob/master/package.lisp][package.lisp]] for a list of all exported symbols.

  For in depth information each protocol and their associated symbols,
  visit the links to the individual protocol systems above.

  The file builtins.lisp contains the protocol implementations
  for many built-in common lisp types.
  
* notes & todos

  the file test.lisp defines some data structures, each implementing
  one of the three major protocols & confirms that they translate
  among each other correctly.


** TODO fix hash-table weakness
   (empty h-t) not yet aware of hash table weakness

** TODO write examples/demo, more docs
   better to factor them out among the
   sub-packages


Next: , Previous: , Up: Top   [Contents][Index]

2 Systems

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


Previous: , Up: Systems   [Contents][Index]

2.1 com.clearly-useful.generic-collection-interface

Author

Jason Aeschliman <j.aeschliman@gmail.com>

License

revised BSD

Description

generic collection interfaces for common lisp

Version

0.2.1

Dependencies
Source

com.clearly-useful.generic-collection-interface.asd (file)

Components

Next: , Previous: , Up: Top   [Contents][Index]

3 Files

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


Previous: , Up: Files   [Contents][Index]

3.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.1 com.clearly-useful.generic-collection-interface.asd

Location

com.clearly-useful.generic-collection-interface.asd

Systems

com.clearly-useful.generic-collection-interface (system)


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.2 com.clearly-useful.generic-collection-interface/package.lisp

Parent

com.clearly-useful.generic-collection-interface (system)

Location

package.lisp

Packages

com.clearly-useful.generic-collection-interface


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.3 com.clearly-useful.generic-collection-interface/features.lisp

Dependency

package.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

features.lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.4 com.clearly-useful.generic-collection-interface/protocols.lisp

Dependency

features.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

protocols.lisp

Exported Definitions
Internal Definitions

associative-p (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.5 com.clearly-useful.generic-collection-interface/internal-utils.lisp

Dependency

protocols.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

internal-utils.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.6 com.clearly-useful.generic-collection-interface/macros.lisp

Dependency

internal-utils.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

macros.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.7 com.clearly-useful.generic-collection-interface/methods.lisp

Dependency

macros.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

methods.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.8 com.clearly-useful.generic-collection-interface/conversions.lisp

Dependency

methods.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

conversions.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.9 com.clearly-useful.generic-collection-interface/reduceable-base.lisp

Dependency

conversions.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

reduceable-base.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.10 com.clearly-useful.generic-collection-interface/foldable-base.lisp

Dependency

reduceable-base.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

foldable-base.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.11 com.clearly-useful.generic-collection-interface/base-methods.lisp

Dependency

foldable-base.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

base-methods.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.12 com.clearly-useful.generic-collection-interface/default-methods.lisp

Dependency

base-methods.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

default-methods.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.13 com.clearly-useful.generic-collection-interface/conj.lisp

Dependency

default-methods.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

conj.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.14 com.clearly-useful.generic-collection-interface/parallel.lisp

Dependency

conj.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

parallel.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.15 com.clearly-useful.generic-collection-interface/builtins.lisp

Dependency

parallel.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

builtins.lisp

Exported Definitions

Previous: , Up: Lisp files   [Contents][Index]

3.1.16 com.clearly-useful.generic-collection-interface/com.clearly-useful.generic-collection-interface.lisp

Dependency

builtins.lisp (file)

Parent

com.clearly-useful.generic-collection-interface (system)

Location

com.clearly-useful.generic-collection-interface.lisp

Packages

Next: , Previous: , Up: Top   [Contents][Index]

4 Packages

Packages are listed by definition order.


Next: , Previous: , Up: Packages   [Contents][Index]

4.1 com.clearly-useful.generic-collection-interface

Source

package.lisp (file)

Use List
Used By List
Exported Definitions
Internal Definitions

Next: , Previous: , Up: Packages   [Contents][Index]

4.2 com.clearly-useful.foldable-protocol

Interface to the foldable protocol

Source

com.clearly-useful.generic-collection-interface.lisp (file)

Use List

Next: , Previous: , Up: Packages   [Contents][Index]

4.3 com.clearly-useful.reduceable-protocol

Interface to the reduceable protocol

Source

com.clearly-useful.generic-collection-interface.lisp (file)

Use List

Next: , Previous: , Up: Packages   [Contents][Index]

4.4 com.clearly-useful.associative-protocol

Interface to the associative protocol

Source

com.clearly-useful.generic-collection-interface.lisp (file)

Use List

Next: , Previous: , Up: Packages   [Contents][Index]

4.5 com.clearly-useful.indexable-protocol

Interface to the indexable protocol

Source

com.clearly-useful.generic-collection-interface.lisp (file)

Use List

Next: , Previous: , Up: Packages   [Contents][Index]

4.6 com.clearly-useful.countable-protocol

Interface to the countable protocol

Source

com.clearly-useful.generic-collection-interface.lisp (file)

Use List

Next: , Previous: , Up: Packages   [Contents][Index]

4.7 com.clearly-useful.sequence-protocol

Interface to the sequence protocol

Source

com.clearly-useful.generic-collection-interface.lisp (file)

Use List

Previous: , Up: Packages   [Contents][Index]

4.8 com.clearly-useful.collection-protocol

Interface to the collection protocol

Source

com.clearly-useful.generic-collection-interface.lisp (file)

Use List

Next: , Previous: , Up: Top   [Contents][Index]

5 Definitions

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


Next: , Previous: , Up: Definitions   [Contents][Index]

5.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.1 Macros

Macro: doindexable (VAR FORM &optional RETURN-CLAUSE) &body BODY

bind var to each item in (element-at indexed n) and execute body.
where n is 0..(count-elements indexed)
and indexed is (indexable form)
similar to dolist.

Package

com.clearly-useful.generic-collection-interface

Source

macros.lisp (file)

Macro: doseq (VAR FORM &optional RETURN-CLAUSE) &body BODY

bind var to each item in (seq form) and execute body. similar to dolist.

Package

com.clearly-useful.generic-collection-interface

Source

macros.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.2 Functions

Function: collection-p OBJECT

test if object implements COLLECTION

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Function: countable-p OBJECT

test if object implements COUNTABLE

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Function: filtering PRED
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: fold REDUCEFN COLLECTION &key DIVIDE-BY COMBINE-WITH
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)

Function: fold-left FN COLLECTION &key INITIAL-VALUE
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: foldable-p OBJECT

test if object implements FOLDABLE

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Function: folder COLLECTION TRANSFORMER
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)

Function: getkey OBJECT KEY &optional DEFAULT

calls associative on object. if the result contains key, returns value-for-key, else default

Package

com.clearly-useful.generic-collection-interface

Source

methods.lisp (file)

Function: indexable-p OBJECT

test if object implements INDEXABLE

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Function: into COLL REDUCEABLE
Package

com.clearly-useful.generic-collection-interface

Source

conj.lisp (file)

Function: mapcatting F
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: mapping FN
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: monoid FN EPSILON
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: reduceable-p OBJECT

test if object implements REDUCEABLE

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Function: reduced V
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: reducer COLLECTION TRANSFORMER
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: seq-p OBJECT

test if object implements SEQ

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Function: seq-to-list SEQ

a fresh list will all elements of seq

Package

com.clearly-useful.generic-collection-interface

Source

methods.lisp (file)

Function: seqable-p OBJECT

test if object implements SEQABLE

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.3 Generic functions

Generic Function: all-keys O

a seq of all keys in o

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: all-keys (IT hash-table)
Source

builtins.lisp (file)

Method: all-keys (IT array)
Source

builtins.lisp (file)

Method: all-keys (IT vector)
Source

builtins.lisp (file)

Method: all-keys (O cons)
Source

builtins.lisp (file)

Method: all-keys (O null)
Source

builtins.lisp (file)

Method: all-keys THING
Source

default-methods.lisp (file)

Method: all-keys (O %countable-associative)
Source

conversions.lisp (file)

Generic Function: all-keys-and-values O

return a seq of proper lists in the form (key value)

Package

com.clearly-useful.generic-collection-interface

Source

methods.lisp (file)

Methods
Method: all-keys-and-values (A hash-table)
Source

builtins.lisp (file)

Method: all-keys-and-values O
Generic Function: all-values O

a seq of all values in o

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: all-values (IT hash-table)
Source

builtins.lisp (file)

Method: all-values (IT array)
Source

builtins.lisp (file)

Method: all-values (IT vector)
Source

builtins.lisp (file)

Method: all-values (O cons)
Source

builtins.lisp (file)

Method: all-values (O null)
Source

builtins.lisp (file)

Method: all-values THING
Source

default-methods.lisp (file)

Method: all-values (O %countable-associative)
Source

conversions.lisp (file)

Generic Function: associative OBJECT

convert an object to ASSOCIATIVE protocol, or error.

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: associative (OBJECT hash-table)
Source

builtins.lisp (file)

Method: associative (OBJECT array)
Source

builtins.lisp (file)

Method: associative (OBJECT vector)
Source

builtins.lisp (file)

Method: associative (OBJECT cons)
Source

builtins.lisp (file)

Method: associative (OBJECT null)
Source

builtins.lisp (file)

Method: associative O
Source

base-methods.lisp (file)

Method: associative (OBJECT %countable-associative)
Source

conversions.lisp (file)

Generic Function: coll-fold SELF N COMBINEF REDUCEF
Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: coll-fold (SELF vector) N COMBINEF REDUCEF
Source

builtins.lisp (file)

Method: coll-fold SELF N CM RD
Source

base-methods.lisp (file)

Method: coll-fold (SELF %folder) N COMBINE REDUCE
Source

foldable-base.lisp (file)

Generic Function: coll-reduce SELF FN SEED
Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: coll-reduce (SELF hash-table) FN SEED
Source

builtins.lisp (file)

Method: coll-reduce (SELF array) FN SEED
Source

builtins.lisp (file)

Method: coll-reduce (SELF vector) FN SEED
Source

builtins.lisp (file)

Method: coll-reduce (SELF cons) FN SEED
Source

builtins.lisp (file)

Method: coll-reduce (SELF null) FN SEED
Source

builtins.lisp (file)

Method: coll-reduce SELF FN SEED
Source

base-methods.lisp (file)

Method: coll-reduce (SELF %reducer) FN SEED
Source

reduceable-base.lisp (file)

Generic Function: conj A VAL
Package

com.clearly-useful.generic-collection-interface

Source

conj.lisp (file)

Methods
Method: conj (A null) V
Method: conj (A cons) V
Method: conj (A vector) V
Method: conj (A hash-table) V
Generic Function: contains-key-p O K

whether o contains k

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: contains-key-p (O hash-table) K
Source

builtins.lisp (file)

Method: contains-key-p (IT array) KEY
Source

builtins.lisp (file)

Method: contains-key-p (IT vector) KEY
Source

builtins.lisp (file)

Method: contains-key-p (O cons) KEY
Source

builtins.lisp (file)

Method: contains-key-p (O null) K
Source

builtins.lisp (file)

Method: contains-key-p THING K
Source

default-methods.lisp (file)

Method: contains-key-p (O %countable-associative) KEY
Source

conversions.lisp (file)

Generic Function: count-elements O

the number of elements in o

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: count-elements (IT hash-table)
Source

builtins.lisp (file)

Method: count-elements (IT array)
Source

builtins.lisp (file)

Method: count-elements (IT vector)
Source

builtins.lisp (file)

Method: count-elements (O cons)
Source

builtins.lisp (file)

Method: count-elements (O null)
Source

builtins.lisp (file)

Method: count-elements THING
Source

default-methods.lisp (file)

Method: count-elements (O %seq-countable)
Source

conversions.lisp (file)

Method: count-elements (RANGE %range)
Source

conversions.lisp (file)

Generic Function: countable OBJECT

convert an object to COUNTABLE protocol, or error.

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: countable (OBJECT hash-table)
Source

builtins.lisp (file)

Method: countable (OBJECT array)
Source

builtins.lisp (file)

Method: countable (OBJECT vector)
Source

builtins.lisp (file)

Method: countable (OBJECT cons)
Source

builtins.lisp (file)

Method: countable (OBJECT null)
Source

builtins.lisp (file)

Method: countable O
Source

base-methods.lisp (file)

Method: countable (OBJECT %seq-countable)
Source

conversions.lisp (file)

Method: countable (OBJECT %range)
Source

conversions.lisp (file)

Generic Function: counted-p O

whether a collection is counted in constant time

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: counted-p (IT hash-table)
Source

builtins.lisp (file)

Method: counted-p (IT array)
Source

builtins.lisp (file)

Method: counted-p (IT vector)
Source

builtins.lisp (file)

Method: counted-p (O cons)
Source

builtins.lisp (file)

Method: counted-p (O null)
Source

builtins.lisp (file)

Method: counted-p THING
Source

default-methods.lisp (file)

Method: counted-p (O %seq-countable)
Source

conversions.lisp (file)

Method: counted-p (RANGE %range)
Source

conversions.lisp (file)

Generic Function: element-at O INDEX

the element of o at index, or raise an error

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: element-at (IT array) N
Source

builtins.lisp (file)

Method: element-at (IT vector) N
Source

builtins.lisp (file)

Method: element-at (O null) INDEX
Source

builtins.lisp (file)

Method: element-at THING N
Source

default-methods.lisp (file)

Method: element-at (O %seq-countable) INDEX
Source

conversions.lisp (file)

Method: element-at (RANGE %range) INDEX
Source

conversions.lisp (file)

Generic Function: empty O

an empty version of this collection

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: empty (IT hash-table)
Source

builtins.lisp (file)

Method: empty (IT array)
Source

builtins.lisp (file)

Method: empty (IT vector)
Source

builtins.lisp (file)

Method: empty (O cons)
Source

builtins.lisp (file)

Method: empty (O null)
Source

builtins.lisp (file)

Method: empty (O %seq-countable)
Source

conversions.lisp (file)

Method: empty (O %countable-associative)
Source

conversions.lisp (file)

Method: empty (C %countable-sequence)
Source

conversions.lisp (file)

Method: empty (RANGE %range)
Source

conversions.lisp (file)

Method: empty O
Generic Function: empty-p O

wether this collection is empty

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: empty-p (IT hash-table)
Source

builtins.lisp (file)

Method: empty-p (IT array)
Source

builtins.lisp (file)

Method: empty-p (IT vector)
Source

builtins.lisp (file)

Method: empty-p (O cons)
Source

builtins.lisp (file)

Method: empty-p (O null)
Source

builtins.lisp (file)

Method: empty-p (O %seq-countable)
Source

conversions.lisp (file)

Method: empty-p (O %countable-associative)
Source

conversions.lisp (file)

Method: empty-p (C %countable-sequence)
Source

conversions.lisp (file)

Method: empty-p (RANGE %range)
Source

conversions.lisp (file)

Method: empty-p O
Generic Function: head O

first element

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: head (IT vector)
Source

builtins.lisp (file)

Method: head (O cons)
Source

builtins.lisp (file)

Method: head (O null)
Source

builtins.lisp (file)

Method: head THING
Source

default-methods.lisp (file)

Method: head (C %countable-sequence)
Source

conversions.lisp (file)

Method: head (RANGE %range)
Source

conversions.lisp (file)

Generic Function: indexable OBJECT

convert an object to INDEXABLE protocol, or error.

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: indexable (OBJECT array)
Source

builtins.lisp (file)

Method: indexable (OBJECT vector)
Source

builtins.lisp (file)

Method: indexable (OBJECT null)
Source

builtins.lisp (file)

Method: indexable O
Source

base-methods.lisp (file)

Method: indexable (OBJECT %seq-countable)
Source

conversions.lisp (file)

Method: indexable (OBJECT %range)
Source

conversions.lisp (file)

Generic Function: seq O

return a seq (or nil if count = 0) or error

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: seq (IT hash-table)
Source

builtins.lisp (file)

Method: seq (IT array)
Source

builtins.lisp (file)

Method: seq (IT vector)
Source

builtins.lisp (file)

Method: seq (O cons)
Source

builtins.lisp (file)

Method: seq (O null)
Source

builtins.lisp (file)

Method: seq O
Source

base-methods.lisp (file)

Method: seq (C %countable-sequence)
Source

conversions.lisp (file)

Method: seq (RANGE %range)
Source

conversions.lisp (file)

Generic Function: tail O

the rest of the collection or nil

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: tail (IT vector)
Source

builtins.lisp (file)

Method: tail (O cons)
Source

builtins.lisp (file)

Method: tail (O null)
Source

builtins.lisp (file)

Method: tail THING
Source

default-methods.lisp (file)

Method: tail (C %countable-sequence)
Source

conversions.lisp (file)

Method: tail (RANGE %range)
Source

conversions.lisp (file)

Generic Function: value-for-key O K

returns the value of k in o and t, or (values nil nil)

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Methods
Method: value-for-key (O hash-table) K
Source

builtins.lisp (file)

Method: value-for-key (IT array) KEY
Source

builtins.lisp (file)

Method: value-for-key (IT vector) KEY
Source

builtins.lisp (file)

Method: value-for-key (O cons) INDEX
Source

builtins.lisp (file)

Method: value-for-key (O null) K
Source

builtins.lisp (file)

Method: value-for-key THING K
Source

default-methods.lisp (file)

Method: value-for-key (O %countable-associative) KEY
Source

conversions.lisp (file)


Previous: , Up: Exported definitions   [Contents][Index]

5.1.4 Types

Type: associative ()

a dictionary-like abstraction

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Type: collection ()

a collection knows if it is empty, and can produce an empty version of itself

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Type: countable ()

countable collection

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Type: foldable ()
Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Type: indexable ()

a thing that may be indexed

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Type: reduceable ()
Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Type: seq ()

a list-like abstraction

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Type: seqable ()

a thing that may be converted to a seq default implementation provided for indexable, associative and seq.

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)


Previous: , Up: Definitions   [Contents][Index]

5.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.1 Macros

Macro: define-interface-package NAME DOCUMENTATION &rest EXPORTS

create a package named name with documentation which uses :cl and *package*, exporting the symbols of exports.

Package

com.clearly-useful.generic-collection-interface

Source

internal-utils.lisp (file)

Macro: with-fold-kernel &body BODY
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.2 Functions

Function: %%%%.defpun.fold-vector KERNEL0 V N COMBINER REDUCER
Package

com.clearly-useful.generic-collection-interface

Source

parallel.lisp (file)

Function: %adjustable VECTOR &optional PAD
Package

com.clearly-useful.generic-collection-interface

Source

internal-utils.lisp (file)

Function: %associative-to-indexable ASSOC
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %count-seq SEQ
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-associative-countable INSTANCE
Function: (setf %countable-associative-countable) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-associative-length INSTANCE
Function: (setf %countable-associative-length) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-associative-p OBJECT
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-sequence-countable INSTANCE
Function: (setf %countable-sequence-countable) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-sequence-index INSTANCE
Function: (setf %countable-sequence-index) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-sequence-length INSTANCE
Function: (setf %countable-sequence-length) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-sequence-p OBJECT
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-sequence-size C
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-to-associative COUNTABLE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %countable-to-seq COUNTABLE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %dup-hash IT
Package

com.clearly-useful.generic-collection-interface

Source

internal-utils.lisp (file)

Function: %empty-hash IT
Package

com.clearly-useful.generic-collection-interface

Source

internal-utils.lisp (file)

Function: %folder-coll INSTANCE
Function: (setf %folder-coll) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)

Function: %folder-p OBJECT
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)

Function: %folder-transformer INSTANCE
Function: (setf %folder-transformer) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)

Function: %hash-conj! HT SEQ
Package

com.clearly-useful.generic-collection-interface

Source

conj.lisp (file)

Function: %interface-package NAME DOCUMENTATION &rest EXPORTS
Package

com.clearly-useful.generic-collection-interface

Source

internal-utils.lisp (file)

Function: %next-countable-sequence C
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %next-range RANGE

return the next range by incrementing the lower bound of range, or nil

Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %range-high INSTANCE
Function: (setf %range-high) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %range-low INSTANCE
Function: (setf %range-low) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %range-p OBJECT
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %range-size RANGE

the number of elements in a range

Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %reduce FN COLLECTION &key INITIAL-VALUE
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: %reducer-coll INSTANCE
Function: (setf %reducer-coll) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: %reducer-p OBJECT
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: %reducer-transformer INSTANCE
Function: (setf %reducer-transformer) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: %seq-countable-contains-index SC INDEX
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-countable-count SC
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-countable-fully-counted INSTANCE
Function: (setf %seq-countable-fully-counted) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-countable-p OBJECT
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-countable-seq INSTANCE
Function: (setf %seq-countable-seq) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-countable-ubound INSTANCE
Function: (setf %seq-countable-ubound) VALUE INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-indexable-by SEQ N
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-nth-or-error SEQ N
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-nth-or-nil-with-values SEQ N
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-to-associative SEQ
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-to-countable SEQ
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %seq-to-list SEQ
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: %vector-conj! ADJUSTABLE-VECTOR VAL
Package

com.clearly-useful.generic-collection-interface

Source

conj.lisp (file)

Function: associative-p OBJECT

test if object implements ASSOCIATIVE

Package

com.clearly-useful.generic-collection-interface

Source

protocols.lisp (file)

Function: copy-%countable-associative INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: copy-%countable-sequence INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: copy-%folder INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)

Function: copy-%range INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: copy-%reducer INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: copy-%seq-countable INSTANCE
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: fold-vector V N COMBINER REDUCER
Package

com.clearly-useful.generic-collection-interface

Source

parallel.lisp (file)

Function: make-%countable-associative &key (LENGTH LENGTH) (COUNTABLE COUNTABLE)
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: make-%countable-sequence &key (LENGTH LENGTH) (INDEX INDEX) (COUNTABLE COUNTABLE)
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: make-%folder &key (COLL COLL) (TRANSFORMER TRANSFORMER)
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)

Function: make-%range &key (LOW LOW) (HIGH HIGH)
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: make-%reducer &key (COLL COLL) (TRANSFORMER TRANSFORMER)
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: make-%seq-countable &key (SEQ SEQ) (UBOUND UBOUND) (FULLY-COUNTED FULLY-COUNTED)
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Function: reduce-indexable R FN SEED
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: reduce-seq R FN SEED
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: reduceable-reduce FN COLLECTION &key INITIAL-VALUE
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Function: subvec VEC START &optional END
Package

com.clearly-useful.generic-collection-interface

Source

internal-utils.lisp (file)


Previous: , Up: Internal definitions   [Contents][Index]

5.2.3 Structures

Structure: %countable-associative ()
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Direct superclasses

structure-object (structure)

Direct methods
Direct slots
Slot: length
Readers

%countable-associative-length (function)

Writers

(setf %countable-associative-length) (function)

Slot: countable
Readers

%countable-associative-countable (function)

Writers

(setf %countable-associative-countable) (function)

Structure: %countable-sequence ()
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Direct superclasses

structure-object (structure)

Direct methods
  • implements-protocol? (method)
  • tail (method)
  • head (method)
  • implements-protocol? (method)
  • seq (method)
  • implements-protocol? (method)
  • empty-p (method)
  • empty (method)
Direct slots
Slot: length
Readers

%countable-sequence-length (function)

Writers

(setf %countable-sequence-length) (function)

Slot: index
Readers

%countable-sequence-index (function)

Writers

(setf %countable-sequence-index) (function)

Slot: countable
Readers

%countable-sequence-countable (function)

Writers

(setf %countable-sequence-countable) (function)

Structure: %folder ()
Package

com.clearly-useful.generic-collection-interface

Source

foldable-base.lisp (file)

Direct superclasses

%reducer (structure)

Direct methods
  • implements-protocol? (method)
  • coll-fold (method)
Structure: %range ()

an immutable integer range from low to high, exclusive.

Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Direct superclasses

structure-object (structure)

Direct methods
Direct slots
Slot: low
Readers

%range-low (function)

Writers

(setf %range-low) (function)

Slot: high
Readers

%range-high (function)

Writers

(setf %range-high) (function)

Structure: %reducer ()
Package

com.clearly-useful.generic-collection-interface

Source

reduceable-base.lisp (file)

Direct superclasses

structure-object (structure)

Direct subclasses

%folder (structure)

Direct methods
Direct slots
Slot: coll
Readers

%reducer-coll (function)

Writers

(setf %reducer-coll) (function)

Slot: transformer
Readers

%reducer-transformer (function)

Writers

(setf %reducer-transformer) (function)

Structure: %seq-countable ()
Package

com.clearly-useful.generic-collection-interface

Source

conversions.lisp (file)

Direct superclasses

structure-object (structure)

Direct methods
Direct slots
Slot: seq
Readers

%seq-countable-seq (function)

Writers

(setf %seq-countable-seq) (function)

Slot: ubound
Readers

%seq-countable-ubound (function)

Writers

(setf %seq-countable-ubound) (function)

Slot: fully-counted
Readers

%seq-countable-fully-counted (function)

Writers

(setf %seq-countable-fully-counted) (function)


Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   C   F   L  
Index Entry  Section

C
com.clearly-useful.generic-collection-interface.asd: The com<dot>clearly-useful<dot>generic-collection-interface<dot>asd file
com.clearly-useful.generic-collection-interface/base-methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/base-methods<dot>lisp file
com.clearly-useful.generic-collection-interface/builtins.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/builtins<dot>lisp file
com.clearly-useful.generic-collection-interface/com.clearly-useful.generic-collection-interface.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/com<dot>clearly-useful<dot>generic-collection-interface<dot>lisp file
com.clearly-useful.generic-collection-interface/conj.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/conj<dot>lisp file
com.clearly-useful.generic-collection-interface/conversions.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/conversions<dot>lisp file
com.clearly-useful.generic-collection-interface/default-methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/default-methods<dot>lisp file
com.clearly-useful.generic-collection-interface/features.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/features<dot>lisp file
com.clearly-useful.generic-collection-interface/foldable-base.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/foldable-base<dot>lisp file
com.clearly-useful.generic-collection-interface/internal-utils.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/internal-utils<dot>lisp file
com.clearly-useful.generic-collection-interface/macros.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/macros<dot>lisp file
com.clearly-useful.generic-collection-interface/methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/methods<dot>lisp file
com.clearly-useful.generic-collection-interface/package.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/package<dot>lisp file
com.clearly-useful.generic-collection-interface/parallel.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/parallel<dot>lisp file
com.clearly-useful.generic-collection-interface/protocols.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/protocols<dot>lisp file
com.clearly-useful.generic-collection-interface/reduceable-base.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/reduceable-base<dot>lisp file

F
File, Lisp, com.clearly-useful.generic-collection-interface.asd: The com<dot>clearly-useful<dot>generic-collection-interface<dot>asd file
File, Lisp, com.clearly-useful.generic-collection-interface/base-methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/base-methods<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/builtins.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/builtins<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/com.clearly-useful.generic-collection-interface.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/com<dot>clearly-useful<dot>generic-collection-interface<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/conj.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/conj<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/conversions.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/conversions<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/default-methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/default-methods<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/features.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/features<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/foldable-base.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/foldable-base<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/internal-utils.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/internal-utils<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/macros.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/macros<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/methods<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/package.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/package<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/parallel.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/parallel<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/protocols.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/protocols<dot>lisp file
File, Lisp, com.clearly-useful.generic-collection-interface/reduceable-base.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/reduceable-base<dot>lisp file

L
Lisp File, com.clearly-useful.generic-collection-interface.asd: The com<dot>clearly-useful<dot>generic-collection-interface<dot>asd file
Lisp File, com.clearly-useful.generic-collection-interface/base-methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/base-methods<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/builtins.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/builtins<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/com.clearly-useful.generic-collection-interface.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/com<dot>clearly-useful<dot>generic-collection-interface<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/conj.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/conj<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/conversions.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/conversions<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/default-methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/default-methods<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/features.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/features<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/foldable-base.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/foldable-base<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/internal-utils.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/internal-utils<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/macros.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/macros<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/methods.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/methods<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/package.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/package<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/parallel.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/parallel<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/protocols.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/protocols<dot>lisp file
Lisp File, com.clearly-useful.generic-collection-interface/reduceable-base.lisp: The com<dot>clearly-useful<dot>generic-collection-interface/reduceable-base<dot>lisp file

Jump to:   C   F   L  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   %   (  
A   C   D   E   F   G   H   I   M   R   S   T   V   W  
Index Entry  Section

%
%%%%.defpun.fold-vector: Internal functions
%adjustable: Internal functions
%associative-to-indexable: Internal functions
%count-seq: Internal functions
%countable-associative-countable: Internal functions
%countable-associative-length: Internal functions
%countable-associative-p: Internal functions
%countable-sequence-countable: Internal functions
%countable-sequence-index: Internal functions
%countable-sequence-length: Internal functions
%countable-sequence-p: Internal functions
%countable-sequence-size: Internal functions
%countable-to-associative: Internal functions
%countable-to-seq: Internal functions
%dup-hash: Internal functions
%empty-hash: Internal functions
%folder-coll: Internal functions
%folder-p: Internal functions
%folder-transformer: Internal functions
%hash-conj!: Internal functions
%interface-package: Internal functions
%next-countable-sequence: Internal functions
%next-range: Internal functions
%range-high: Internal functions
%range-low: Internal functions
%range-p: Internal functions
%range-size: Internal functions
%reduce: Internal functions
%reducer-coll: Internal functions
%reducer-p: Internal functions
%reducer-transformer: Internal functions
%seq-countable-contains-index: Internal functions
%seq-countable-count: Internal functions
%seq-countable-fully-counted: Internal functions
%seq-countable-p: Internal functions
%seq-countable-seq: Internal functions
%seq-countable-ubound: Internal functions
%seq-indexable-by: Internal functions
%seq-nth-or-error: Internal functions
%seq-nth-or-nil-with-values: Internal functions
%seq-to-associative: Internal functions
%seq-to-countable: Internal functions
%seq-to-list: Internal functions
%vector-conj!: Internal functions

(
(setf %countable-associative-countable): Internal functions
(setf %countable-associative-length): Internal functions
(setf %countable-sequence-countable): Internal functions
(setf %countable-sequence-index): Internal functions
(setf %countable-sequence-length): Internal functions
(setf %folder-coll): Internal functions
(setf %folder-transformer): Internal functions
(setf %range-high): Internal functions
(setf %range-low): Internal functions
(setf %reducer-coll): Internal functions
(setf %reducer-transformer): Internal functions
(setf %seq-countable-fully-counted): Internal functions
(setf %seq-countable-seq): Internal functions
(setf %seq-countable-ubound): Internal functions

A
all-keys: Exported generic functions
all-keys: Exported generic functions
all-keys: Exported generic functions
all-keys: Exported generic functions
all-keys: Exported generic functions
all-keys: Exported generic functions
all-keys: Exported generic functions
all-keys: Exported generic functions
all-keys-and-values: Exported generic functions
all-keys-and-values: Exported generic functions
all-keys-and-values: Exported generic functions
all-values: Exported generic functions
all-values: Exported generic functions
all-values: Exported generic functions
all-values: Exported generic functions
all-values: Exported generic functions
all-values: Exported generic functions
all-values: Exported generic functions
all-values: Exported generic functions
associative: Exported generic functions
associative: Exported generic functions
associative: Exported generic functions
associative: Exported generic functions
associative: Exported generic functions
associative: Exported generic functions
associative: Exported generic functions
associative: Exported generic functions
associative-p: Internal functions

C
coll-fold: Exported generic functions
coll-fold: Exported generic functions
coll-fold: Exported generic functions
coll-fold: Exported generic functions
coll-reduce: Exported generic functions
coll-reduce: Exported generic functions
coll-reduce: Exported generic functions
coll-reduce: Exported generic functions
coll-reduce: Exported generic functions
coll-reduce: Exported generic functions
coll-reduce: Exported generic functions
coll-reduce: Exported generic functions
collection-p: Exported functions
conj: Exported generic functions
conj: Exported generic functions
conj: Exported generic functions
conj: Exported generic functions
conj: Exported generic functions
contains-key-p: Exported generic functions
contains-key-p: Exported generic functions
contains-key-p: Exported generic functions
contains-key-p: Exported generic functions
contains-key-p: Exported generic functions
contains-key-p: Exported generic functions
contains-key-p: Exported generic functions
contains-key-p: Exported generic functions
copy-%countable-associative: Internal functions
copy-%countable-sequence: Internal functions
copy-%folder: Internal functions
copy-%range: Internal functions
copy-%reducer: Internal functions
copy-%seq-countable: Internal functions
count-elements: Exported generic functions
count-elements: Exported generic functions
count-elements: Exported generic functions
count-elements: Exported generic functions
count-elements: Exported generic functions
count-elements: Exported generic functions
count-elements: Exported generic functions
count-elements: Exported generic functions
count-elements: Exported generic functions
countable: Exported generic functions
countable: Exported generic functions
countable: Exported generic functions
countable: Exported generic functions
countable: Exported generic functions
countable: Exported generic functions
countable: Exported generic functions
countable: Exported generic functions
countable: Exported generic functions
countable-p: Exported functions
counted-p: Exported generic functions
counted-p: Exported generic functions
counted-p: Exported generic functions
counted-p: Exported generic functions
counted-p: Exported generic functions
counted-p: Exported generic functions
counted-p: Exported generic functions
counted-p: Exported generic functions
counted-p: Exported generic functions

D
define-interface-package: Internal macros
doindexable: Exported macros
doseq: Exported macros

E
element-at: Exported generic functions
element-at: Exported generic functions
element-at: Exported generic functions
element-at: Exported generic functions
element-at: Exported generic functions
element-at: Exported generic functions
element-at: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions
empty-p: Exported generic functions

F
filtering: Exported functions
fold: Exported functions
fold-left: Exported functions
fold-vector: Internal functions
foldable-p: Exported functions
folder: Exported functions
Function, %%%%.defpun.fold-vector: Internal functions
Function, %adjustable: Internal functions
Function, %associative-to-indexable: Internal functions
Function, %count-seq: Internal functions
Function, %countable-associative-countable: Internal functions
Function, %countable-associative-length: Internal functions
Function, %countable-associative-p: Internal functions
Function, %countable-sequence-countable: Internal functions
Function, %countable-sequence-index: Internal functions
Function, %countable-sequence-length: Internal functions
Function, %countable-sequence-p: Internal functions
Function, %countable-sequence-size: Internal functions
Function, %countable-to-associative: Internal functions
Function, %countable-to-seq: Internal functions
Function, %dup-hash: Internal functions
Function, %empty-hash: Internal functions
Function, %folder-coll: Internal functions
Function, %folder-p: Internal functions
Function, %folder-transformer: Internal functions
Function, %hash-conj!: Internal functions
Function, %interface-package: Internal functions
Function, %next-countable-sequence: Internal functions
Function, %next-range: Internal functions
Function, %range-high: Internal functions
Function, %range-low: Internal functions
Function, %range-p: Internal functions
Function, %range-size: Internal functions
Function, %reduce: Internal functions
Function, %reducer-coll: Internal functions
Function, %reducer-p: Internal functions
Function, %reducer-transformer: Internal functions
Function, %seq-countable-contains-index: Internal functions
Function, %seq-countable-count: Internal functions
Function, %seq-countable-fully-counted: Internal functions
Function, %seq-countable-p: Internal functions
Function, %seq-countable-seq: Internal functions
Function, %seq-countable-ubound: Internal functions
Function, %seq-indexable-by: Internal functions
Function, %seq-nth-or-error: Internal functions
Function, %seq-nth-or-nil-with-values: Internal functions
Function, %seq-to-associative: Internal functions
Function, %seq-to-countable: Internal functions
Function, %seq-to-list: Internal functions
Function, %vector-conj!: Internal functions
Function, (setf %countable-associative-countable): Internal functions
Function, (setf %countable-associative-length): Internal functions
Function, (setf %countable-sequence-countable): Internal functions
Function, (setf %countable-sequence-index): Internal functions
Function, (setf %countable-sequence-length): Internal functions
Function, (setf %folder-coll): Internal functions
Function, (setf %folder-transformer): Internal functions
Function, (setf %range-high): Internal functions
Function, (setf %range-low): Internal functions
Function, (setf %reducer-coll): Internal functions
Function, (setf %reducer-transformer): Internal functions
Function, (setf %seq-countable-fully-counted): Internal functions
Function, (setf %seq-countable-seq): Internal functions
Function, (setf %seq-countable-ubound): Internal functions
Function, associative-p: Internal functions
Function, collection-p: Exported functions
Function, copy-%countable-associative: Internal functions
Function, copy-%countable-sequence: Internal functions
Function, copy-%folder: Internal functions
Function, copy-%range: Internal functions
Function, copy-%reducer: Internal functions
Function, copy-%seq-countable: Internal functions
Function, countable-p: Exported functions
Function, filtering: Exported functions
Function, fold: Exported functions
Function, fold-left: Exported functions
Function, fold-vector: Internal functions
Function, foldable-p: Exported functions
Function, folder: Exported functions
Function, getkey: Exported functions
Function, indexable-p: Exported functions
Function, into: Exported functions
Function, make-%countable-associative: Internal functions
Function, make-%countable-sequence: Internal functions
Function, make-%folder: Internal functions
Function, make-%range: Internal functions
Function, make-%reducer: Internal functions
Function, make-%seq-countable: Internal functions
Function, mapcatting: Exported functions
Function, mapping: Exported functions
Function, monoid: Exported functions
Function, reduce-indexable: Internal functions
Function, reduce-seq: Internal functions
Function, reduceable-p: Exported functions
Function, reduceable-reduce: Internal functions
Function, reduced: Exported functions
Function, reducer: Exported functions
Function, seq-p: Exported functions
Function, seq-to-list: Exported functions
Function, seqable-p: Exported functions
Function, subvec: Internal functions

G
Generic Function, all-keys: Exported generic functions
Generic Function, all-keys-and-values: Exported generic functions
Generic Function, all-values: Exported generic functions
Generic Function, associative: Exported generic functions
Generic Function, coll-fold: Exported generic functions
Generic Function, coll-reduce: Exported generic functions
Generic Function, conj: Exported generic functions
Generic Function, contains-key-p: Exported generic functions
Generic Function, count-elements: Exported generic functions
Generic Function, countable: Exported generic functions
Generic Function, counted-p: Exported generic functions
Generic Function, element-at: Exported generic functions
Generic Function, empty: Exported generic functions
Generic Function, empty-p: Exported generic functions
Generic Function, head: Exported generic functions
Generic Function, indexable: Exported generic functions
Generic Function, seq: Exported generic functions
Generic Function, tail: Exported generic functions
Generic Function, value-for-key: Exported generic functions
getkey: Exported functions

H
head: Exported generic functions
head: Exported generic functions
head: Exported generic functions
head: Exported generic functions
head: Exported generic functions
head: Exported generic functions
head: Exported generic functions

I
indexable: Exported generic functions
indexable: Exported generic functions
indexable: Exported generic functions
indexable: Exported generic functions
indexable: Exported generic functions
indexable: Exported generic functions
indexable: Exported generic functions
indexable-p: Exported functions
into: Exported functions

M
Macro, define-interface-package: Internal macros
Macro, doindexable: Exported macros
Macro, doseq: Exported macros
Macro, with-fold-kernel: Internal macros
make-%countable-associative: Internal functions
make-%countable-sequence: Internal functions
make-%folder: Internal functions
make-%range: Internal functions
make-%reducer: Internal functions
make-%seq-countable: Internal functions
mapcatting: Exported functions
mapping: Exported functions
Method, all-keys: Exported generic functions
Method, all-keys: Exported generic functions
Method, all-keys: Exported generic functions
Method, all-keys: Exported generic functions
Method, all-keys: Exported generic functions
Method, all-keys: Exported generic functions
Method, all-keys: Exported generic functions
Method, all-keys-and-values: Exported generic functions
Method, all-keys-and-values: Exported generic functions
Method, all-values: Exported generic functions
Method, all-values: Exported generic functions
Method, all-values: Exported generic functions
Method, all-values: Exported generic functions
Method, all-values: Exported generic functions
Method, all-values: Exported generic functions
Method, all-values: Exported generic functions
Method, associative: Exported generic functions
Method, associative: Exported generic functions
Method, associative: Exported generic functions
Method, associative: Exported generic functions
Method, associative: Exported generic functions
Method, associative: Exported generic functions
Method, associative: Exported generic functions
Method, coll-fold: Exported generic functions
Method, coll-fold: Exported generic functions
Method, coll-fold: Exported generic functions
Method, coll-reduce: Exported generic functions
Method, coll-reduce: Exported generic functions
Method, coll-reduce: Exported generic functions
Method, coll-reduce: Exported generic functions
Method, coll-reduce: Exported generic functions
Method, coll-reduce: Exported generic functions
Method, coll-reduce: Exported generic functions
Method, conj: Exported generic functions
Method, conj: Exported generic functions
Method, conj: Exported generic functions
Method, conj: Exported generic functions
Method, contains-key-p: Exported generic functions
Method, contains-key-p: Exported generic functions
Method, contains-key-p: Exported generic functions
Method, contains-key-p: Exported generic functions
Method, contains-key-p: Exported generic functions
Method, contains-key-p: Exported generic functions
Method, contains-key-p: Exported generic functions
Method, count-elements: Exported generic functions
Method, count-elements: Exported generic functions
Method, count-elements: Exported generic functions
Method, count-elements: Exported generic functions
Method, count-elements: Exported generic functions
Method, count-elements: Exported generic functions
Method, count-elements: Exported generic functions
Method, count-elements: Exported generic functions
Method, countable: Exported generic functions
Method, countable: Exported generic functions
Method, countable: Exported generic functions
Method, countable: Exported generic functions
Method, countable: Exported generic functions
Method, countable: Exported generic functions
Method, countable: Exported generic functions
Method, countable: Exported generic functions
Method, counted-p: Exported generic functions
Method, counted-p: Exported generic functions
Method, counted-p: Exported generic functions
Method, counted-p: Exported generic functions
Method, counted-p: Exported generic functions
Method, counted-p: Exported generic functions
Method, counted-p: Exported generic functions
Method, counted-p: Exported generic functions
Method, element-at: Exported generic functions
Method, element-at: Exported generic functions
Method, element-at: Exported generic functions
Method, element-at: Exported generic functions
Method, element-at: Exported generic functions
Method, element-at: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, empty-p: Exported generic functions
Method, head: Exported generic functions
Method, head: Exported generic functions
Method, head: Exported generic functions
Method, head: Exported generic functions
Method, head: Exported generic functions
Method, head: Exported generic functions
Method, indexable: Exported generic functions
Method, indexable: Exported generic functions
Method, indexable: Exported generic functions
Method, indexable: Exported generic functions
Method, indexable: Exported generic functions
Method, indexable: Exported generic functions
Method, seq: Exported generic functions
Method, seq: Exported generic functions
Method, seq: Exported generic functions
Method, seq: Exported generic functions
Method, seq: Exported generic functions
Method, seq: Exported generic functions
Method, seq: Exported generic functions
Method, seq: Exported generic functions
Method, tail: Exported generic functions
Method, tail: Exported generic functions
Method, tail: Exported generic functions
Method, tail: Exported generic functions
Method, tail: Exported generic functions
Method, tail: Exported generic functions
Method, value-for-key: Exported generic functions
Method, value-for-key: Exported generic functions
Method, value-for-key: Exported generic functions
Method, value-for-key: Exported generic functions
Method, value-for-key: Exported generic functions
Method, value-for-key: Exported generic functions
Method, value-for-key: Exported generic functions
monoid: Exported functions

R
reduce-indexable: Internal functions
reduce-seq: Internal functions
reduceable-p: Exported functions
reduceable-reduce: Internal functions
reduced: Exported functions
reducer: Exported functions

S
seq: Exported generic functions
seq: Exported generic functions
seq: Exported generic functions
seq: Exported generic functions
seq: Exported generic functions
seq: Exported generic functions
seq: Exported generic functions
seq: Exported generic functions
seq: Exported generic functions
seq-p: Exported functions
seq-to-list: Exported functions
seqable-p: Exported functions
subvec: Internal functions

T
tail: Exported generic functions
tail: Exported generic functions
tail: Exported generic functions
tail: Exported generic functions
tail: Exported generic functions
tail: Exported generic functions
tail: Exported generic functions

V
value-for-key: Exported generic functions
value-for-key: Exported generic functions
value-for-key: Exported generic functions
value-for-key: Exported generic functions
value-for-key: Exported generic functions
value-for-key: Exported generic functions
value-for-key: Exported generic functions
value-for-key: Exported generic functions

W
with-fold-kernel: Internal macros

Jump to:   %   (  
A   C   D   E   F   G   H   I   M   R   S   T   V   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   C   F   H   I   L   S   T   U  
Index Entry  Section

C
coll: Internal structures
countable: Internal structures
countable: Internal structures

F
fully-counted: Internal structures

H
high: Internal structures

I
index: Internal structures

L
length: Internal structures
length: Internal structures
low: Internal structures

S
seq: Internal structures
Slot, coll: Internal structures
Slot, countable: Internal structures
Slot, countable: Internal structures
Slot, fully-counted: Internal structures
Slot, high: Internal structures
Slot, index: Internal structures
Slot, length: Internal structures
Slot, length: Internal structures
Slot, low: Internal structures
Slot, seq: Internal structures
Slot, transformer: Internal structures
Slot, ubound: Internal structures

T
transformer: Internal structures

U
ubound: Internal structures

Jump to:   C   F   H   I   L   S   T   U  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   %  
A   C   F   I   P   R   S   T  
Index Entry  Section

%
%countable-associative: Internal structures
%countable-sequence: Internal structures
%folder: Internal structures
%range: Internal structures
%reducer: Internal structures
%seq-countable: Internal structures

A
associative: Exported types

C
collection: Exported types
com.clearly-useful.associative-protocol: The com<dot>clearly-useful<dot>associative-protocol package
com.clearly-useful.collection-protocol: The com<dot>clearly-useful<dot>collection-protocol package
com.clearly-useful.countable-protocol: The com<dot>clearly-useful<dot>countable-protocol package
com.clearly-useful.foldable-protocol: The com<dot>clearly-useful<dot>foldable-protocol package
com.clearly-useful.generic-collection-interface: The com<dot>clearly-useful<dot>generic-collection-interface system
com.clearly-useful.generic-collection-interface: The com<dot>clearly-useful<dot>generic-collection-interface package
com.clearly-useful.indexable-protocol: The com<dot>clearly-useful<dot>indexable-protocol package
com.clearly-useful.reduceable-protocol: The com<dot>clearly-useful<dot>reduceable-protocol package
com.clearly-useful.sequence-protocol: The com<dot>clearly-useful<dot>sequence-protocol package
countable: Exported types

F
foldable: Exported types

I
indexable: Exported types

P
Package, com.clearly-useful.associative-protocol: The com<dot>clearly-useful<dot>associative-protocol package
Package, com.clearly-useful.collection-protocol: The com<dot>clearly-useful<dot>collection-protocol package
Package, com.clearly-useful.countable-protocol: The com<dot>clearly-useful<dot>countable-protocol package
Package, com.clearly-useful.foldable-protocol: The com<dot>clearly-useful<dot>foldable-protocol package
Package, com.clearly-useful.generic-collection-interface: The com<dot>clearly-useful<dot>generic-collection-interface package
Package, com.clearly-useful.indexable-protocol: The com<dot>clearly-useful<dot>indexable-protocol package
Package, com.clearly-useful.reduceable-protocol: The com<dot>clearly-useful<dot>reduceable-protocol package
Package, com.clearly-useful.sequence-protocol: The com<dot>clearly-useful<dot>sequence-protocol package

R
reduceable: Exported types

S
seq: Exported types
seqable: Exported types
Structure, %countable-associative: Internal structures
Structure, %countable-sequence: Internal structures
Structure, %folder: Internal structures
Structure, %range: Internal structures
Structure, %reducer: Internal structures
Structure, %seq-countable: Internal structures
System, com.clearly-useful.generic-collection-interface: The com<dot>clearly-useful<dot>generic-collection-interface system

T
Type, associative: Exported types
Type, collection: Exported types
Type, countable: Exported types
Type, foldable: Exported types
Type, indexable: Exported types
Type, reduceable: Exported types
Type, seq: Exported types
Type, seqable: Exported types

Jump to:   %  
A   C   F   I   P   R   S   T