Package: xpath-sys
Macro define-xpath-function/lazy
Lambda Listdefine-xpath-function/lazy (ext name args &body body) Arguments
Details Defines an XPath function, "lazy" style. The body is evaluated during compilation of XPath expressions each time the function being defined is referenced. It's passed a list of "thunks" corresponding to XPath function arguments and should return a new "thunk". A "thunk" is a function that takes an XPath context as argument and returns value of one of XPath types (string, boolean, number, node set). Example:
(define-xpath-function/lazy my-ext my-if (v if-part else-part)
#'(lambda (ctx)
(if (boolean-value (funcall v ctx))
(funcall if-part ctx)
(funcall else-part ctx)))) | See also |