I did C-h f C-h f and got a
*Help* buffer describing
describe-function as a
"Lisp function" defined in
I clicked on the file name and searched for
"Lisp function" which lead
me to the function
help-fns-function-description-header whose code
indicated that what we want is
(subrp (symbol-function 'car))
A bit more consideration would point to
help-fns--analyze-function which disentangles things like aliasing and advising.
I think, however, that you should look at the "source" rather than the result here, i.e., check that the lisp file where
json-serialize could be defined has been loaded - use
featurep for that.