The generic-sequences Reference Manual

This is the generic-sequences Reference Manual, version 0.1.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 16:35:16 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 generic-sequences

Generic sequences for Common Lisp.

Author

David Sorokin

License

MIT

Version

0.1.1

Source

generic-sequences.asd.

Child Component

src (module).


3 Modules

Modules are listed depth-first from the system components tree.


3.1 generic-sequences/src

Source

generic-sequences.asd.

Parent Component

generic-sequences (system).

Child Components

4 Files

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


4.1 Lisp


4.1.1 generic-sequences/generic-sequences.asd

Source

generic-sequences.asd.

Parent Component

generic-sequences (system).

ASDF Systems

generic-sequences.


4.1.2 generic-sequences/src/generic-seq-pkg.lisp

Source

generic-sequences.asd.

Parent Component

src (module).

Packages

generic-seq.


4.1.3 generic-sequences/src/generic-seq.lisp

Dependency

generic-seq-pkg.lisp (file).

Source

generic-sequences.asd.

Parent Component

src (module).

Public Interface
Internals

4.2 Static


4.2.1 generic-sequences/src/README

Dependency

generic-seq.lisp (file).

Source

generic-sequences.asd.

Parent Component

src (module).


4.2.2 generic-sequences/src/LICENSE

Dependency

readme (file).

Source

generic-sequences.asd.

Parent Component

src (module).


5 Packages

Packages are listed by definition order.


5.1 generic-seq

Source

generic-seq-pkg.lisp.

Nickname

gen-seq

Use List

common-lisp.

Public Interface
Internals

6 Definitions

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


6.1 Public Interface


6.1.1 Macros

Macro: delay-seq (seq)

Delay the sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Macro: enum-append (&rest enums)

Append the specified enumerators.

Package

generic-seq.

Source

generic-seq.lisp.

Macro: enum-car (enum)

Return the CAR part.

Package

generic-seq.

Source

generic-seq.lisp.

Macro: enum-cdr (enum)

Return the CDR part.

Package

generic-seq.

Source

generic-seq.lisp.

Macro: enum-cons (item enum)

Construct a new enumerator.

Package

generic-seq.

Source

generic-seq.lisp.

Macro: make-seq (&body enum)

Create a sequence by specifying its enumerator.

Package

generic-seq.

Source

generic-seq.lisp.


6.1.2 Ordinary functions

Function: seq->list (seq)

Convert the sequence to a list.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq->vector (seq)

Convert the sequence to a vector.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-append (&rest seqs)

Append the specified sequences.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-car (seq)

Return the head of sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-cdr (seq)

Return the tail of sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-compare (seq-1 seq-2 test &key key)

Compare two sequences where the test function for items must return <0, >0 or 0.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-cons (item seq)

Construct a new sequence that begins with the specified item and ends with the sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-count (item seq &key test key)

Count and return the number of elements in the sequence that satisfy the test.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-count-if (predicate seq &key key)

Count and return the number of elements in the sequence that satisfy the test.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-count-if-not (predicate seq &key key)

Count and return the number of elements in the sequence that satisfy the test.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-cycle (seq)

It returns a lazy infinite sequence obtained by successively repeating the values in the supplied sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-drop (n seq)

Drop the first N elements of the sequence and return the rest.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-drop-while (predicate seq &key key)

SEQ-DROP-WHILE takes a predicate function taking a single argument
and a sequence. It returns a sequence of all items in the original sequence, starting from the first item for which the predicate function returns NIL.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-drop-while-not (predicate seq &key key)

SEQ-DROP-WHILE-NOT takes a predicate function taking a single argument
and a sequence. It returns a sequence of all items in the original sequence, starting from the first item for which the predicate function returns T.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-elt (seq index)

Access the element of the sequence specified by index.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-equal (seq-1 seq-2 &key test key)

Test two sequences for equality.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-every (predicate &rest seqs)

Like the EVERY function but applied to generic sequences.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-find (item seq &key test key)

Search a sequence for an item and return this element; otherwise NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-find-if (predicate seq &key key)

Search a sequence for an item for which the predicate returns T and return this element; otherwise NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-find-if-not (predicate seq &key key)

Search a sequence for an item for which the predicate returns NIL and return this element; otherwise NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-foreach (function &rest seqs)

Apply the specified function to the sequences.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-interpose (value seq)

SEQ-INTERPOSE takes two arguments, a value and a sequence. It returns
a lazy sequence obtained by inserting the supplied value between the values in the sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-iterate (function initial-value)

It returns an infinite lazy sequence obtained by starting with the supplied value, and then by calling the supplied function passing the previous item in the sequence as its argument.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-length (seq)

Return the length of the specified sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-map (function &rest seqs)

Like the MAPCAR function but applied to generic sequences.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-mappend (function &rest seqs)

Like SEQ-MAP but the specified function must return a sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-member (item seq &key test key)

Search a sequence for an item and return the tail of the sequence beginning with this element; otherwise NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-member-if (predicate seq &key key)

Search a sequence for a top-level item for which the predicate returns T and
return the tail of the sequence beginning with this element; otherwise NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-member-if-not (predicate seq &key key)

Search a sequence for a top-level item for which the predicate returns NIL and return the tail of the sequence beginning with this element; otherwise NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-notany (predicate &rest seqs)

Like the NOTANY function but applied to generic sequences.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-notevery (predicate &rest seqs)

Like the NOTEVERY function but applied to generic sequences.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-null (seq)

Test whether the sequence is empty.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-position (item seq &key test key)

Search a sequence for an element and return the index within the sequence; otherwise, NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-position-if (predicate seq &key key)

Search a sequence for an element for which the predicate returns T and return the index within the sequence; otherwise, NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-position-if-not (predicate seq &key key)

Search a sequence for an element for which the predicate returns NIL and return the index within the sequence; otherwise, NIL is returned.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-range (&key start end step)

SEQ-RANGE returns a lazy sequence of numbers from the start (inclusive, 0 by default) to the end (exclusive, nil by default) incremented by the step (1 by default).

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-reduce (function seq &key key initial-value)

Like REDUCE but applied to the generic sequences.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-remove (item seq &key test key)

Like the REMOVE function but applied to the generic sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-remove-if (test seq &key key)

Like the REMOVE-IF function but applied to the generic sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-remove-if-not (test seq &key key)

Like the REMOVE-IF-NOT function but applied to the generic sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-repeat (value)

It returns an infinite lazy sequence consisting of the argument value repeated endlessly.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-repeatedly (function)

Return an infinite lazy sequence obtained by calling the function repeatedly.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-some (predicate &rest seqs)

Like the SOME function but applied to generic sequences.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-split (n seq)

Split the sequence at the N-th element and return the both parts as a list.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-split-if (predicate seq &key key)

SEQ-SPLIT-IF takes a predicate function taking a single argument
and a sequence. It splits the sequence at the first item for which the predicate function returns T and and then SEQ-SPLIT-IF returns the both parts as a list.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-split-if-not (predicate seq &key key)

SEQ-SPLIT-IF-NOT takes a predicate function taking a single argument
and a sequence. It splits the sequence at the first item for which the predicate function returns NIL and then SEQ-SPLIT-IF-NOT returns the both parts as a list.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-take (n seq)

Take the first N elements of the sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-take-nth (n seq)

TAKE-NTH takes two arguments, a number and a sequence. It returns a sequence of items from the supplied sequence, taking the first item and every Nth item, where N is the supplied number.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-take-while (predicate seq &key key)

SEQ-TAKE-WHILE takes a predicate function taking a single argument
and a sequence. It returns a sequence of all items in the original sequence, up until the first item for which the predicate function returns NIL.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-take-while-not (predicate seq &key key)

SEQ-TAKE-WHILE-NOT takes two arguments, a predicate function taking a single argument and a sequence. It returns a sequence of all items in the original sequence, up until the first item for which the predicate function returns T.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-zip (&rest seqs)

Return a sequence that returns lists of items from the provided sequences.

Package

generic-seq.

Source

generic-seq.lisp.


6.1.3 Generic functions

Generic Function: seq-enum (seq)

Returns either NIL or an enumerator.

Package

generic-seq.

Source

generic-seq.lisp.

Methods
Method: seq-enum ((seq vector))
Method: seq-enum ((seq list))
Method: seq-enum ((seq delayed-seq))
Method: seq-enum ((seq basic-seq))
Generic Function: seqp (seq)

Test whether this is a sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Methods
Method: seqp ((seq vector))
Method: seqp ((seq list))
Method: seqp ((seq delayed-seq))
Method: seqp ((seq basic-seq))
Method: seqp (seq)

6.1.4 Types

Type: seq ()

The generic sequence type.

Package

generic-seq.

Source

generic-seq.lisp.


6.2 Internals


6.2.1 Ordinary functions

Reader: basic-seq-delayed-enum (instance)
Writer: (setf basic-seq-delayed-enum) (instance)
Package

generic-seq.

Source

generic-seq.lisp.

Target Slot

delayed-enum.

Function: basic-seq-p (object)
Package

generic-seq.

Source

generic-seq.lisp.

Function: copy-basic-seq (instance)
Package

generic-seq.

Source

generic-seq.lisp.

Function: copy-delayed-seq (instance)
Package

generic-seq.

Source

generic-seq.lisp.

Reader: delayed-seq-delayed-seq (instance)
Writer: (setf delayed-seq-delayed-seq) (instance)
Package

generic-seq.

Source

generic-seq.lisp.

Target Slot

delayed-seq.

Function: delayed-seq-p (object)
Package

generic-seq.

Source

generic-seq.lisp.

Function: enum-append-2 (enum-1 delayed-enum-2)

Append two enumerators.

Package

generic-seq.

Source

generic-seq.lisp.

Function: enum-reduce (function enum &key key initial-value)

Like REDUCE but applied to the enumerators.

Package

generic-seq.

Source

generic-seq.lisp.

Function: make-basic-seq (&key delayed-enum)
Package

generic-seq.

Source

generic-seq.lisp.

Function: make-delayed-seq (&key delayed-seq)
Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-every-1 (predicate seq)

Like EVERY but applied to one generic sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-foreach-1 (function seq)

Apply the specified function to the sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-map-1 (function seq)

Like the MAPCAR function but applied to a single generic sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-mappend-1 (function seq)

Like SEQ-MAP-1 but the specified function must return a sequence. In other words, this is a monadic bind function.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-notany-1 (predicate seq)

Like NOTANY but applied to one generic sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-notevery-1 (predicate seq)

Like NOTEVERY but applied to one generic sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Function: seq-some-1 (predicate seq)

Like SOME but applied to one generic sequence.

Package

generic-seq.

Source

generic-seq.lisp.


6.2.2 Structures

Structure: basic-seq

Represents the basic sequence that is defined only by its enumerator.

Package

generic-seq.

Source

generic-seq.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: delayed-enum
Readers

basic-seq-delayed-enum.

Writers

(setf basic-seq-delayed-enum).

Structure: delayed-seq

The delayed sequence.

Package

generic-seq.

Source

generic-seq.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: delayed-seq
Readers

delayed-seq-delayed-seq.

Writers

(setf delayed-seq-delayed-seq).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (  
B   C   D   E   F   G   M   S  
Index Entry  Section

(
(setf basic-seq-delayed-enum): Private ordinary functions
(setf delayed-seq-delayed-seq): Private ordinary functions

B
basic-seq-delayed-enum: Private ordinary functions
basic-seq-p: Private ordinary functions

C
copy-basic-seq: Private ordinary functions
copy-delayed-seq: Private ordinary functions

D
delay-seq: Public macros
delayed-seq-delayed-seq: Private ordinary functions
delayed-seq-p: Private ordinary functions

E
enum-append: Public macros
enum-append-2: Private ordinary functions
enum-car: Public macros
enum-cdr: Public macros
enum-cons: Public macros
enum-reduce: Private ordinary functions

F
Function, (setf basic-seq-delayed-enum): Private ordinary functions
Function, (setf delayed-seq-delayed-seq): Private ordinary functions
Function, basic-seq-delayed-enum: Private ordinary functions
Function, basic-seq-p: Private ordinary functions
Function, copy-basic-seq: Private ordinary functions
Function, copy-delayed-seq: Private ordinary functions
Function, delayed-seq-delayed-seq: Private ordinary functions
Function, delayed-seq-p: Private ordinary functions
Function, enum-append-2: Private ordinary functions
Function, enum-reduce: Private ordinary functions
Function, make-basic-seq: Private ordinary functions
Function, make-delayed-seq: Private ordinary functions
Function, seq->list: Public ordinary functions
Function, seq->vector: Public ordinary functions
Function, seq-append: Public ordinary functions
Function, seq-car: Public ordinary functions
Function, seq-cdr: Public ordinary functions
Function, seq-compare: Public ordinary functions
Function, seq-cons: Public ordinary functions
Function, seq-count: Public ordinary functions
Function, seq-count-if: Public ordinary functions
Function, seq-count-if-not: Public ordinary functions
Function, seq-cycle: Public ordinary functions
Function, seq-drop: Public ordinary functions
Function, seq-drop-while: Public ordinary functions
Function, seq-drop-while-not: Public ordinary functions
Function, seq-elt: Public ordinary functions
Function, seq-equal: Public ordinary functions
Function, seq-every: Public ordinary functions
Function, seq-every-1: Private ordinary functions
Function, seq-find: Public ordinary functions
Function, seq-find-if: Public ordinary functions
Function, seq-find-if-not: Public ordinary functions
Function, seq-foreach: Public ordinary functions
Function, seq-foreach-1: Private ordinary functions
Function, seq-interpose: Public ordinary functions
Function, seq-iterate: Public ordinary functions
Function, seq-length: Public ordinary functions
Function, seq-map: Public ordinary functions
Function, seq-map-1: Private ordinary functions
Function, seq-mappend: Public ordinary functions
Function, seq-mappend-1: Private ordinary functions
Function, seq-member: Public ordinary functions
Function, seq-member-if: Public ordinary functions
Function, seq-member-if-not: Public ordinary functions
Function, seq-notany: Public ordinary functions
Function, seq-notany-1: Private ordinary functions
Function, seq-notevery: Public ordinary functions
Function, seq-notevery-1: Private ordinary functions
Function, seq-null: Public ordinary functions
Function, seq-position: Public ordinary functions
Function, seq-position-if: Public ordinary functions
Function, seq-position-if-not: Public ordinary functions
Function, seq-range: Public ordinary functions
Function, seq-reduce: Public ordinary functions
Function, seq-remove: Public ordinary functions
Function, seq-remove-if: Public ordinary functions
Function, seq-remove-if-not: Public ordinary functions
Function, seq-repeat: Public ordinary functions
Function, seq-repeatedly: Public ordinary functions
Function, seq-some: Public ordinary functions
Function, seq-some-1: Private ordinary functions
Function, seq-split: Public ordinary functions
Function, seq-split-if: Public ordinary functions
Function, seq-split-if-not: Public ordinary functions
Function, seq-take: Public ordinary functions
Function, seq-take-nth: Public ordinary functions
Function, seq-take-while: Public ordinary functions
Function, seq-take-while-not: Public ordinary functions
Function, seq-zip: Public ordinary functions

G
Generic Function, seq-enum: Public generic functions
Generic Function, seqp: Public generic functions

M
Macro, delay-seq: Public macros
Macro, enum-append: Public macros
Macro, enum-car: Public macros
Macro, enum-cdr: Public macros
Macro, enum-cons: Public macros
Macro, make-seq: Public macros
make-basic-seq: Private ordinary functions
make-delayed-seq: Private ordinary functions
make-seq: Public macros
Method, seq-enum: Public generic functions
Method, seq-enum: Public generic functions
Method, seq-enum: Public generic functions
Method, seq-enum: Public generic functions
Method, seqp: Public generic functions
Method, seqp: Public generic functions
Method, seqp: Public generic functions
Method, seqp: Public generic functions
Method, seqp: Public generic functions

S
seq->list: Public ordinary functions
seq->vector: Public ordinary functions
seq-append: Public ordinary functions
seq-car: Public ordinary functions
seq-cdr: Public ordinary functions
seq-compare: Public ordinary functions
seq-cons: Public ordinary functions
seq-count: Public ordinary functions
seq-count-if: Public ordinary functions
seq-count-if-not: Public ordinary functions
seq-cycle: Public ordinary functions
seq-drop: Public ordinary functions
seq-drop-while: Public ordinary functions
seq-drop-while-not: Public ordinary functions
seq-elt: Public ordinary functions
seq-enum: Public generic functions
seq-enum: Public generic functions
seq-enum: Public generic functions
seq-enum: Public generic functions
seq-enum: Public generic functions
seq-equal: Public ordinary functions
seq-every: Public ordinary functions
seq-every-1: Private ordinary functions
seq-find: Public ordinary functions
seq-find-if: Public ordinary functions
seq-find-if-not: Public ordinary functions
seq-foreach: Public ordinary functions
seq-foreach-1: Private ordinary functions
seq-interpose: Public ordinary functions
seq-iterate: Public ordinary functions
seq-length: Public ordinary functions
seq-map: Public ordinary functions
seq-map-1: Private ordinary functions
seq-mappend: Public ordinary functions
seq-mappend-1: Private ordinary functions
seq-member: Public ordinary functions
seq-member-if: Public ordinary functions
seq-member-if-not: Public ordinary functions
seq-notany: Public ordinary functions
seq-notany-1: Private ordinary functions
seq-notevery: Public ordinary functions
seq-notevery-1: Private ordinary functions
seq-null: Public ordinary functions
seq-position: Public ordinary functions
seq-position-if: Public ordinary functions
seq-position-if-not: Public ordinary functions
seq-range: Public ordinary functions
seq-reduce: Public ordinary functions
seq-remove: Public ordinary functions
seq-remove-if: Public ordinary functions
seq-remove-if-not: Public ordinary functions
seq-repeat: Public ordinary functions
seq-repeatedly: Public ordinary functions
seq-some: Public ordinary functions
seq-some-1: Private ordinary functions
seq-split: Public ordinary functions
seq-split-if: Public ordinary functions
seq-split-if-not: Public ordinary functions
seq-take: Public ordinary functions
seq-take-nth: Public ordinary functions
seq-take-while: Public ordinary functions
seq-take-while-not: Public ordinary functions
seq-zip: Public ordinary functions
seqp: Public generic functions
seqp: Public generic functions
seqp: Public generic functions
seqp: Public generic functions
seqp: Public generic functions
seqp: Public generic functions


A.3 Variables