У меня есть функция, которая принимает один строковый параметр. Этот параметр может иметь только одно из нескольких определенных возможных значений. Как лучше всего задокументировать то же самое? Следует ли определять shapeType как enum, TypeDef или что-то еще?
Shape.prototype.create = function (shapeType) {
// shapeType can be "rect", "circle" or "ellipse"...
this.type = shapeType;
};
Shape.prototype.getType = function (shapeType) {
// shapeType can be "rect", "circle" or "ellipse"...
return this.type;
};
Вторая часть проблемы заключается в том, что возможные значения shapeType
неизвестны в файле, который определяет shapeType
все, что вы предлагаете. Есть несколько файлов, добавленных несколькими разработчиками, которые могут добавить к возможным значениям shapeType
.
PS: Я использую jsdoc3
enum
для определения и объединения для параметра функции:ShapeType|string
. Однако перечисления не поддерживают добавление подтипов после объявления в компиляторе Closure.