trivial deprecate
1.0.0A library implementing a simple deprecation mechanism
About Trivial-Deprecate
This library implements a simple deprecation mechanism, and hooks into implementation-provided facilities when possible. The main entry point is declaim-deprecated
to mark a definition as deprecated:
(trivial-deprecate:declaim-deprecated (function my-foo)
:alternatives (my-foo2))
The interface is portable to all implementations, though use-warnings may not be issued for all definitions on all implementations.
System Information
Definition Index
-
ORG.SHIRAKUMO.TRIVIAL-DEPRECATE
- TRIVIAL-DEPRECATE
No documentation provided.-
EXTERNAL TYPE-DEFINITION DEPRECATION-WARNING
Condition signalled when a deprecated object is used. See KIND See NAME See SOFTWARE See SINCE-VERSION See ALTERNATIVES See DESCRIPTION See DECLAIM-DEPRECATED
-
EXTERNAL FUNCTION ALTERNATIVES
- CONDITION
Returns a list of alternate definition names that should be investigated. See DEPRECATION-WARNING (type)
-
EXTERNAL FUNCTION DESCRIPTION
- CONDITION
Returns a human-readable description of the deprecation reason, if any. See DEPRECATION-WARNING (type)
-
EXTERNAL FUNCTION KIND
- CONDITION
Returns the kind of definition this is a warning for. Can be one of CL:TYPE CL:VARIABLE CL:FUNCTION See DEPRECATION-WARNING (type)
-
EXTERNAL FUNCTION NAME
- CONDITION
Returns the name of the definition this is a warning for. See DEPRECATION-WARNING (type)
-
EXTERNAL FUNCTION SINCE-VERSION
- CONDITION
Returns the version of the software since which the deprecation exists, if any. See DEPRECATION-WARNING (type)
-
EXTERNAL FUNCTION SOFTWARE
- CONDITION
Returns the name of the software this definition is a part of, if any. See DEPRECATION-WARNING (type)
-
EXTERNAL MACRO DECLAIM-DEPRECATED
- KIND
- NAME
- &KEY
- VERSION
- SOFTWARE
- ALTERNATIVES
- DESCRIPTION
Declare the definition identified by KIND and NAME as deprecated. KIND can be one of CL:TYPE CL:VARIABLE CL:FUNCTION NAME should be the name of the definition to deprecate VERSION may be a version string since which the definition is deprecated. SOFTWARE may be a string identifying the name of the software responsible for the definition. The SOFTWARE defaults to the package-name of the NAME. ALTERNATIVES may be a name or a list of names of alternative definitions the user should investigate to resolve the deprecated functionality. DESCRIPTION may be a string describing the deprecation reason and actions the user should take in detail. You should always put a DECLAIM-DEPRECATED form after all definitions that affect the name have been created (compiler macros, etc). NOTE: On implementations other than SBCL, the following kludges apply: FUNCTION --- A compiler-macro will be defined to issue the deprectation warning. VARIABLE --- This has no effect. TYPE --- If the type is a subtype of STANDARD-OBJECT, an INITIALIZE-INSTANCE :BEFORE method is defined that will issue the deprecation warning. If the type is a subtype of STRUCTURE-OBJECT, a compiler-macro will be defined for MAKE-NAME to issue the deprecation warning. Otherwise this has no effect. See DEPRECATION-WARNING (type)