This is the parse-declarations-1.0 Reference Manual, version 1.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Sep 15 06:18:35 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
parse-declarations-1.0
Library to parse and rebuild declarations.
Tobias C. Rittweiler <trittweiler@common-lisp.net>
MIT
1.0
tests.lisp
(file).
parse-declarations.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
parse-declarations-1.0/parse-declarations-1.0.asd
parse-declarations-1.0
(system).
parse-declarations-1.0/parse-declarations.lisp
parse-declarations-1.0
(system).
analyze-declaration-specifier
(generic function).
build-declaration-specifier
(generic function).
build-declarations
(function).
check-declaration-env
(macro).
declaration-env
(structure).
declaration-env-p
(function).
declaration-env.affected-variables
(function).
declaration-env.policy
(function).
filter-declaration-env
(function).
map-declaration-env
(function).
merge-declaration-envs
(function).
parse-declarations
(function).
%check-declaration-env
(function).
*standard-typespec-identifiers*
(special variable).
+standard-declaration-identifiers+
(special variable).
atomic-type-specifier-p
(function).
build-declspec
(function).
collect-declspec-into
(function).
compute-affected-variables
(generic function).
compute-declaration-context
(generic function).
copy-declaration-env
(function).
copy-declspec
(function).
declaration-env.%table
(reader).
(setf declaration-env.%table)
(writer).
declaration-identifier
(type).
declaration-specifier
(type).
declspec
(structure).
declspec-p
(function).
declspec.affected-variables
(reader).
(setf declspec.affected-variables)
(writer).
declspec.context
(reader).
(setf declspec.context)
(writer).
declspec.identifier
(reader).
(setf declspec.identifier)
(writer).
declspec.unknownp
(reader).
(setf declspec.unknownp)
(writer).
define-declaration-methods
(macro).
denormalize-function-names
(function).
do-declspec
(macro).
equal-binding-name
(function).
for-each-declspec
(function).
make-declaration-env
(function).
make-declspec
(function).
normalize-function-names
(function).
parse-body
(function).
Packages are listed by definition order.
tcr.parse-declarations-1.0
common-lisp
.
analyze-declaration-specifier
(generic function).
build-declaration-specifier
(generic function).
build-declarations
(function).
check-declaration-env
(macro).
declaration-env
(structure).
declaration-env-p
(function).
declaration-env.affected-variables
(function).
declaration-env.policy
(function).
filter-declaration-env
(function).
map-declaration-env
(function).
merge-declaration-envs
(function).
parse-declarations
(function).
%check-declaration-env
(function).
*standard-typespec-identifiers*
(special variable).
+standard-declaration-identifiers+
(special variable).
atomic-type-specifier-p
(function).
build-declspec
(function).
collect-declspec-into
(function).
compute-affected-variables
(generic function).
compute-declaration-context
(generic function).
copy-declaration-env
(function).
copy-declspec
(function).
declaration-env.%table
(reader).
(setf declaration-env.%table)
(writer).
declaration-identifier
(type).
declaration-specifier
(type).
declspec
(structure).
declspec-p
(function).
declspec.affected-variables
(reader).
(setf declspec.affected-variables)
(writer).
declspec.context
(reader).
(setf declspec.context)
(writer).
declspec.identifier
(reader).
(setf declspec.identifier)
(writer).
declspec.unknownp
(reader).
(setf declspec.unknownp)
(writer).
define-declaration-methods
(macro).
denormalize-function-names
(function).
do-declspec
(macro).
equal-binding-name
(function).
for-each-declspec
(function).
make-declaration-env
(function).
make-declspec
(function).
normalize-function-names
(function).
parse-body
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Check that PLACE is a declaration-env. If UNKNOWN-ALLOWED is NIL, further check that the declaration-env does not contain any unknown declaration specifiers.
Builds the declaration specifiers described by ENV. If TAG is given, not declaration specifiers are returned, but declaration expression where the value of TAG is used as CAR of those expressions.
Return a list of all binding names that are affected by the declaration specifiers described by ENV. ALLOWED-DECL-IDS is the list of declaration identifiers to be considered.
Return the optimization settings stored in ENV.
Return a fresh declaration-env that is the result of filtering ENV
according to the given parameters: :AFFECTING may be a list of binding names,
:INCLUDE may be :EVERYTHING, :BOUND, :FREE, :UNKNOWN, or a list of
declaration identifiers, likewise for :EXCLUDE. :FILTER-FUNCTION may
be a function which is called with the identifier, the affected
variables, and the context of each declaration specifier of ENV; the
FUNCTION should return a boolean.
Map over ENV, calling FUNCTION with the identifier, the affected variables, and the context of the declaration specifiers of ENV. FUNCTION should return the new values of these as multiple-values. The result is fresh declaration-env.
Merge ENV1 and ENV2. The result is a fresh declaration-env.
Parse DECLARATIONS and return a declaration-env. If NOSTRIP is true, DECLARATIONS should be declaration specifiers rather than declaration expressions.
Split a declaration specifier into parts.
Should return exactly three values: The declaration identifier, a list
of binding names affected by the declaration specifier, and an
arbitrary context that can be used to reconstruct the specifier from
these parts.
(eql type)
) args ignore+9) ¶(eql special)
) args ignore+8) ¶(eql optimize)
) args ignore+7) ¶(eql notinline)
) args ignore+6) ¶(eql inline)
) args ignore+5) ¶(eql ignorable)
) args ignore+4) ¶(eql ignore)
) args ignore+3) ¶(eql ftype)
) args ignore+2) ¶(eql dynamic-extent)
) args ignore+1) ¶(eql declaration)
) args ignore+0) ¶symbol
) args lexenv) ¶class
) args lexenv) ¶cons
) args lexenv) ¶Reconstruct a declaration specifier.
(eql declaration)
) vars ignore+10) ¶(eql dynamic-extent)
) vars ignore+9) ¶(eql ignore)
) vars ignore+8) ¶(eql ignorable)
) vars ignore+7) ¶(eql special)
) vars ignore+6) ¶(eql type)
) vars type) ¶(eql ftype)
) vars ftype) ¶(eql notinline)
) vars ignore+3) ¶(eql inline)
) vars ignore+2) ¶(eql optimize)
) ignore+1 settings) ¶Used to conveniently define methods pattern matching on the
standard declaration identifiers.
GENERIC-FN-NAME must be the name of a generic function which takes a
declaration identifier as first argument.
CLAUSES ::= ((&rest DECL-IDS) SIMPLE-LAMBDA-LIST &body BODY)* | (:remaining SIMPLE-LAMBDA-LIST &body BODY) | (:default SIMPLE-LAMBDA-LIST &body BODY) | (:method SPECIALIZED-LAMBDA-LIST &body BODY)*
The first clause defines methods that EQL specialize on the given
declaration identifiers.
The :remaining clause defines methods specializing on all remaining
standard declaration identifiers that haven’t yet been defined via
first clauses.
The :default clause defines the default method (i.e. specializing on
nothing.)
The :method clause is like the :method clause in DEFGENERIC.
The lambda lists must be congruent to the lambda list of the generic function. A SIMPLE-LAMBDA-LIST is a lambda-list with required arguments only, where each parameter named "_" is substituted by a gensym.
(eql declaration)
) ignore+11) ¶(eql optimize)
) ignore+9) ¶(eql ftype)
) args) ¶(eql type)
) args) ¶(eql notinline)
) args) ¶(eql inline)
) args) ¶(eql dynamic-extent)
) args) ¶(eql ignorable)
) args) ¶(eql ignore)
) args) ¶(eql special)
) args) ¶(eql declaration)
) ignore+16) ¶(eql dynamic-extent)
) ignore+14) ¶(eql ignore)
) ignore+12) ¶(eql ignorable)
) ignore+10) ¶(eql inline)
) ignore+8) ¶(eql notinline)
) ignore+6) ¶(eql special)
) ignore+4) ¶(eql type)
) args) ¶(eql ftype)
) args) ¶(eql optimize)
) settings) ¶Jump to: | %
(
A B C D E F G M N P |
---|
Jump to: | %
(
A B C D E F G M N P |
---|
Jump to: | %
*
+
A C I S U |
---|
Jump to: | %
*
+
A C I S U |
---|
Jump to: | D F P S T |
---|
Jump to: | D F P S T |
---|