1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-08 15:35:02 +00:00

Add a really simple nadvice example

* doc/lispref/functions.texi (Advising Functions): Add a really
trivial and simple example (bug#35250).
This commit is contained in:
Lars Ingebrigtsen 2019-07-09 17:13:38 +02:00
parent f3bd296a3e
commit 1a1b5f9802

View File

@ -1578,8 +1578,26 @@ primitives being @code{add-function} and @code{remove-function}) and another
set layered on top of it for named functions (with the main primitives being
@code{advice-add} and @code{advice-remove}).
For example, in order to trace the calls to the process filter of a process
@var{proc}, you could use:
As a trivial example, here's how to add advice that'll modify the
return value of a function every time it's called:
@example
(defun my-double (x)
(* x 2))
(defun my-increase (x)
(+ x 1))
(advice-add 'my-double :filter-return #'my-increase)
@end example
After adding this advice, if you call @code{my-double} with @samp{3},
the return value will be @samp{7}. To remove this advice, say
@example
(advice-remove 'my-double #'my-increase)
@end example
A more advanced example would be to trace the calls to the process
filter of a process @var{proc}:
@example
(defun my-tracing-function (proc string)