Пример того, что я ищу, чтобы документ был бы следующий:Можно ли указать переопределения функций в JSDoc?
/**
* @return {boolean}
*/
Contains(rectangle_or_x, y, tolerance) {
if (rectangle_or_x instanceof Rectangle) { return ((rectangle_or_x.X >= this._x) && (rectangle_or_x.Y >= this._y) && (rectangle_or_x.Right <= this._right) && (rectangle_or_x.Bottom <= this._bottom)); }
if ((tolerance === undefined) || (tolerance === null) || (!Rectangle._isNumeric(tolerance))) {
if ((rectangle_or_x < this._x) || (y < this._y) || (rectangle_or_x > this._right) || (y > this._bottom)) { return (false); }
} else if (((rectangle_or_x + tolerance) < this._x) || ((y + tolerance) < this._y) || ((rectangle_or_x - tolerance) > this._right) || ((y - tolerance) > this._bottom)) { return (false); }
return (true);
}
В этом есть 3 возможных вызовов, один из которых может быть просто игнорировали, поскольку она основана вокруг дополнительного tolerance
аргумента, но основание два перекрытие в эксклюзивном порядке:
Contains(Rectangle rectangle_or_x)
Contains(Number rectangle_or_x, Number y[, Number tolerance])
Учитывая различные типы (я знаю, что JavaScript является не-набрано, но, насколько пример обеспокоен есть категорические типы, участвующие) является возможностью создавать отдельные наборы от @param
значений с JSDoc (в основном для intellisense i n WebStorm, но теоретически также для документации по линии.)