I suggest a summary line slightly more descriptive and suggestive of the variable's purpose, e.g. "Map URL regexps to their expansion format string" or similar. The datatype structure can then be further described in the docstring body.
Another nitpick is that the variable's initial value, nil, could be placed on the same line as the variable's name.
I'm not a frequent elisp writer, so I don't know the conventions. I preferred functionp because I know that formatter is bound here in the let, and I would tend to use fboundp when I don't know whether a symbol exists at all. But I recognize that we're talking about just the function slot of the symbol (or whatever the word is), so the distinction is hazy. If there's a reason or convention for preferring one over the other I'd be happy to follow it.
Sorry, I should have looked into this more before asking. My habit is simply to ask the author first, because they may have already thought about it.
In older Emacsen, functionp used to return t for any kind of function, including things which can't be passed to funcall, such as macros and special forms. Somehow I also managed to conflate functionp with doing "more than what is usually necessary" in my mind.
Contrast that with the current description of functionp as returning t for any valid argument to funcall. In which case using fboundp instead of functionp here would simply be wrong.
* counsel.el: Rename `counsel-url-expansions' to `counsel-url-expansions-alist'.
* ivy-test.el (counsel-url-expand): Flip `ivy--string-buffer' and `equal'. Easier to eval just the `ivy--string-buffer'
expression and get a string.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.