The enhanced-eval-when Reference Manual

Table of Contents

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

The enhanced-eval-when Reference Manual

This is the enhanced-eval-when Reference Manual, version 1.0, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 11:44:13 2018 GMT+0.


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

1 Introduction

Project's home: http://www.hexstreamsoft.com/projects/enhanced-eval-when/


enhanced-eval-when provides an enhanced EVAL-WHEN macro that supports
(eval-when t ...) as a shorthand for (eval-when (:compile-toplevel
:load-toplevel :execute) ...), addressing concerns about verbosity. An
ENHANCED-EVAL-WHEN alias is also supported, as well as an EVAL-ALWAYS
macro and package nickname, for good measure.

As EVAL-WHEN with all situations specified is used an overwhelming
majority of the time by most users, these shorthands can really come
handy.


The recommended way to use enhanced-eval-when is to put
(:shadowing-import-from #:enhanced-eval-when #:eval-when) in one's
DEFPACKAGE.

For those who would object to such shadowing, two alternatives are:

(:import-from #:enhanced-eval-when #:enhanced-eval-when)
;; and
(:import-from #:eval-always #:eval-always)
;; The name used for ASDF is still enhanced-eval-when.

As always, it's also possible to fully qualify symbols instead, with:
enhanced-eval-when:eval-when
e-eval-when:eval-when
eval-always:eval-always

Don't (:use)!


This library is in the Public Domain.
See the UNLICENSE file for details.


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 enhanced-eval-when

Author

Jean-Philippe Paradis <hexstream@gmail.com>

License

Public Domain

Description

enhanced-eval-when provides an enhanced EVAL-WHEN macro that supports (eval-when t ...) as a shorthand for (eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity. An ENHANCED-EVAL-WHEN alias is also supported, as well as an EVAL-ALWAYS macro and package nickname, for good measure.

Version

1.0

Source

enhanced-eval-when.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 enhanced-eval-when.asd

Location

enhanced-eval-when.asd

Systems

enhanced-eval-when (system)


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

3.1.2 enhanced-eval-when/package.lisp

Parent

enhanced-eval-when (system)

Location

package.lisp

Packages

enhanced-eval-when


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

3.1.3 enhanced-eval-when/main.lisp

Dependency

package.lisp (file)

Parent

enhanced-eval-when (system)

Location

main.lisp

Exported Definitions
Internal Definitions

%expand (function)


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

4 Packages

Packages are listed by definition order.


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

4.1 enhanced-eval-when

Source

package.lisp (file)

Nicknames
Use List

common-lisp

Exported Definitions
Internal Definitions

%expand (function)


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


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

5.1.1 Macros

Macro: enhanced-eval-when SITUATIONS &body BODY
Package

enhanced-eval-when

Source

main.lisp (file)

Macro: eval-always &body BODY
Package

enhanced-eval-when

Source

main.lisp (file)

Macro: eval-when SITUATIONS &body BODY
Package

enhanced-eval-when

Source

main.lisp (file)


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

5.2 Internal definitions


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

5.2.1 Functions

Function: %expand SITUATIONS BODY
Package

enhanced-eval-when

Source

main.lisp (file)


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

Appendix A Indexes


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

A.1 Concepts

Jump to:   E   F   L  
Index Entry  Section

E
enhanced-eval-when.asd: The enhanced-eval-when<dot>asd file
enhanced-eval-when/main.lisp: The enhanced-eval-when/main<dot>lisp file
enhanced-eval-when/package.lisp: The enhanced-eval-when/package<dot>lisp file

F
File, Lisp, enhanced-eval-when.asd: The enhanced-eval-when<dot>asd file
File, Lisp, enhanced-eval-when/main.lisp: The enhanced-eval-when/main<dot>lisp file
File, Lisp, enhanced-eval-when/package.lisp: The enhanced-eval-when/package<dot>lisp file

L
Lisp File, enhanced-eval-when.asd: The enhanced-eval-when<dot>asd file
Lisp File, enhanced-eval-when/main.lisp: The enhanced-eval-when/main<dot>lisp file
Lisp File, enhanced-eval-when/package.lisp: The enhanced-eval-when/package<dot>lisp file

Jump to:   E   F   L  

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

A.2 Functions

Jump to:   %  
E   F   M  
Index Entry  Section

%
%expand: Internal functions

E
enhanced-eval-when: Exported macros
eval-always: Exported macros
eval-when: Exported macros

F
Function, %expand: Internal functions

M
Macro, enhanced-eval-when: Exported macros
Macro, eval-always: Exported macros
Macro, eval-when: Exported macros

Jump to:   %  
E   F   M  

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

A.3 Variables


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

A.4 Data types

Jump to:   E   P   S  
Index Entry  Section

E
enhanced-eval-when: The enhanced-eval-when system
enhanced-eval-when: The enhanced-eval-when package

P
Package, enhanced-eval-when: The enhanced-eval-when package

S
System, enhanced-eval-when: The enhanced-eval-when system

Jump to:   E   P   S