The com.clearly-useful.iterate-plus Reference Manual

Table of Contents

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

The com.clearly-useful.iterate-plus Reference Manual

This is the com.clearly-useful.iterate-plus Reference Manual, version 0.1, generated automatically by Declt version 2.3 "Robert April" on Tue Feb 20 08:30:43 2018 GMT+0.


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

1 Introduction

#+TITLE: iterate extensions for seqs and iterators in common lisp

* com.clearly-useful.iterate+

  *Overview*:
    This package provides a new keyword for iterate, =per=,
   and four styles of iteration:

   =(iter (per x in y))=
   similar to doseq, binds x to each element of
   the result of calling =seq= on y.

   =(iter (per x on y))=
   similar to =loop .. on=, binds x to subsequent
   =tails= of the result of calling =seq= on y.

   =(iter (per x across y))=
   similar to =loop .. across=, calls =indexable= on y,
   and loops by index below =count-elements= binding x to
   subsequent values of =element-at=
   
   =(iter (per x of y))=
   similar to do-iterator, calls =iterator= on
   y, and binds x to subsequent values it produces.  ensures that
   =iterator-finish!= is called.  since =iterator= provides a default
   implementation for =seq=, =indexable=, and =associative=, any of
   those may also be used in a =per ... of= clause.

   *Usage*:
     This package is intended to be used with iterate. Since
    Iterate tests clauses on symbol-equality, this package
    will have no effect unless you explicitly :use it, e.g.

    #+begin_src lisp
      (defpackage #:foo
        (:use #:cl
              #:iterate
              #:com.clearly-useful.iterate+))
    #+end_src
    
* Exported symbols
  this package exports two symbols.
  
** per
   /iterate driver/

** of
   /iterate keyword/


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.iterate+

Author

Jason Aeschliman <j.aeschliman@gmail.com>

License

revised BSD

Description

iterate extensions for the sequence and iterator protocols

Version

0.1

Dependencies
Source

com.clearly-useful.iterate+.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.iterate+.asd

Location

com.clearly-useful.iterate+.asd

Systems

com.clearly-useful.iterate+ (system)


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

3.1.2 com.clearly-useful.iterate+/package.lisp

Parent

com.clearly-useful.iterate+ (system)

Location

package.lisp

Packages

com.clearly-useful.iterate+


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

3.1.3 com.clearly-useful.iterate+/com.clearly-useful.iterate+.lisp

Dependency

package.lisp (file)

Parent

com.clearly-useful.iterate+ (system)

Location

com.clearly-useful.iterate+.lisp

Internal Definitions

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

4 Packages

Packages are listed by definition order.


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

4.1 com.clearly-useful.iterate+

Source

package.lisp (file)

Use List
Internal Definitions

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

5 Definitions

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


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

5.1 Internal definitions


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

5.1.1 Macros

Macro: clause-per-across-3 &key (PER V) (ACROSS S)
Package

com.clearly-useful.iterate+

Source

com.clearly-useful.iterate+.lisp (file)

Macro: clause-per-in-1 &key (PER V) (IN S)
Package

com.clearly-useful.iterate+

Source

com.clearly-useful.iterate+.lisp (file)

Macro: clause-per-of-4 &key (PER V) (OF S)
Package

com.clearly-useful.iterate+

Source

com.clearly-useful.iterate+.lisp (file)

Macro: clause-per-on-2 &key (PER V) (ON S)
Package

com.clearly-useful.iterate+

Source

com.clearly-useful.iterate+.lisp (file)


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.iterate+.asd: The com<dot>clearly-useful<dot>iterate+<dot>asd file
com.clearly-useful.iterate+/com.clearly-useful.iterate+.lisp: The com<dot>clearly-useful<dot>iterate+/com<dot>clearly-useful<dot>iterate+<dot>lisp file
com.clearly-useful.iterate+/package.lisp: The com<dot>clearly-useful<dot>iterate+/package<dot>lisp file

F
File, Lisp, com.clearly-useful.iterate+.asd: The com<dot>clearly-useful<dot>iterate+<dot>asd file
File, Lisp, com.clearly-useful.iterate+/com.clearly-useful.iterate+.lisp: The com<dot>clearly-useful<dot>iterate+/com<dot>clearly-useful<dot>iterate+<dot>lisp file
File, Lisp, com.clearly-useful.iterate+/package.lisp: The com<dot>clearly-useful<dot>iterate+/package<dot>lisp file

L
Lisp File, com.clearly-useful.iterate+.asd: The com<dot>clearly-useful<dot>iterate+<dot>asd file
Lisp File, com.clearly-useful.iterate+/com.clearly-useful.iterate+.lisp: The com<dot>clearly-useful<dot>iterate+/com<dot>clearly-useful<dot>iterate+<dot>lisp file
Lisp File, com.clearly-useful.iterate+/package.lisp: The com<dot>clearly-useful<dot>iterate+/package<dot>lisp file

Jump to:   C   F   L  

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

A.2 Functions

Jump to:   C   M  
Index Entry  Section

C
clause-per-across-3: Internal macros
clause-per-in-1: Internal macros
clause-per-of-4: Internal macros
clause-per-on-2: Internal macros

M
Macro, clause-per-across-3: Internal macros
Macro, clause-per-in-1: Internal macros
Macro, clause-per-of-4: Internal macros
Macro, clause-per-on-2: Internal macros

Jump to:   C   M  

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

A.3 Variables


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

A.4 Data types

Jump to:   C   P   S  
Index Entry  Section

C
com.clearly-useful.iterate+: The com<dot>clearly-useful<dot>iterate+ system
com.clearly-useful.iterate+: The com<dot>clearly-useful<dot>iterate+ package

P
Package, com.clearly-useful.iterate+: The com<dot>clearly-useful<dot>iterate+ package

S
System, com.clearly-useful.iterate+: The com<dot>clearly-useful<dot>iterate+ system

Jump to:   C   P   S