More precise {function} jsdoc definition

supersede #869