Subject: bug#21798: 25.0.50; [PATCH] Add support for retrieving paths to JSON elements

From: Dmitry Gutov <[email-masked]>
Date: Sat, 7 Nov 2015 21:18:11 +0200

On 11/07/2015 08:50 PM, Simen Heggestøyl wrote:

> Before the patch:
>
> (benchmark-run 100 (json-read-from-string huge-json))
>       ⇒ (16.84457266 1007 4.886441912999999)
>
> After the patch:
>
> (benchmark-run 100 (json-read-from-string huge-json))
>       ⇒ (16.905379125000003 1007 4.722544520000007)

Looks good enough, thanks.

> +(defvar json-pre-read-function nil
> +  "Function called (if non-nil) by `json-read-array' and
> +`json-read-object' right before reading a JSON array or object,
> +respectively.")
> +
> +(defvar json-post-read-function nil
> +  "Function called (if non-nil) by `json-read-array' and
> +`json-read-object' right after reading a JSON array or object,
> +respectively.")

Shouldn't they be called by `json-read' itself?