Doc: документирование кода Назад В начало Вперед

Документирование программы выполняется утилитой VipDoc.exe. Данная утилита выбирает описания основных объектов программы и генерирует документацию. Список документируемых объектов включает в себя:

Для методов можно комментировать каждый элемент (имя метода, параметры, возвращаемое значение) по отдельности, см. пример 2.

Дополнительно к информации, содержащейся непосредственно в операторах программы (типы данных, параметры методов и т.п.), в генерируемый документ можно включить произвольный текст. Текст, включаемый в документацию, задается директивой компилятора #doc. Описание объекта включается в документацию независимо от наличия директивы #doc для данного объекта.

Директиву #doc можно размещать только перед документируемым объектом.

<оператор-документирования> = #doc <документация> #end

<документация> - описание документируемого объекта в произвольной форме в формате HTML. Дополнительно к стандартным тэгам HTML можно использовать тэги <краткое-описание> и <перекрестная-ссылка>.

<краткое-описание> = [ <brief> ] <описание> </brief>

<brief> - начало краткого описания объекта. При отсутствии открывающего тэга <brief> краткое описание попадает в полное.

<описание> - текст краткого описания объекта. Используется для краткой характеристики объектов, входящих в описываемый объект. Например, краткое описание метода будет использовано при перечислении методов, входящих в описываемый интерфейс. А раздел документации, относящийся к данному методу, будет содержать его полное описание.

</brief> - конец краткого описания объекта.

<перекрестная-ссылка> = <адрес-ссылки> <описание-ссылки> </link>

<адрес-ссылки> - начало описания перекрестной ссылки, задает адрес ссылки:

<адрес-ссылки> = <link <тип-объекта> <идентификатор-объекта>
  [ <тип-элемента> [ <идентификатор-элемента> ]] >

<тип-объекта> - тип объекта ссылки:

<тип-объекта> = component | objInterface | interface | type
  | function | property | index | window | form
  | linkForm | dataStream | menu | statusLine
  | button | extensionPoint  | resourceFile

<идентификатор-объекта> - идентификатор объекта ссылки:

<идентификатор-объекта> = [<имя-файла>|][<ID-компонента>::]<ID-объекта>[.<ID-элемента>]

<имя-файла> - файл, содержащий откомпилированную документацию на заданную тему. Имя файла отделяется от имени объекта вертикальной чертой. Атрибут доступен начиная с Атлантис 5.2.10.

<тип-элемента> - тип элемента ссылки:

<тип-элемента> = field | index

Атрибут доступен начиная с Атлантис 5.2.09.

<идентификатор-элемента> - имя поля таблицы. Если указанный элемент не будет найден, произойдёт переход на начало страницы описания соответствующего объекта. Атрибут доступен начиная с Атлантис 5.2.09.

<описание-ссылки> - текст, описывающий ссылку в документации.

</link> - конец описания перекрестной ссылки.

Примеры тэга <перекрестная-ссылка>:

см.<link table x$files field xf$title>x$files.xf$title</link>
см.<link table x$files index FILEBYLOC2>x$files.filebyloc2</link>
см.<link Interface f_plpor.chm|F_PLPOR::PDocs>Interface PDocs</link>
см.<link Form f_buhrep.chm|Anal_Nam>Form Anal_Nam</link>

Пример

Пример 1.

#doc
  Это краткое описание, которое попадает в полное</brief> <br>
  Проверим ссылки: <link interface VVV>посмотри на интерфейс <b>VVV</b></link>.
#end

Пример 2. Документирование функции.

#doc
Функция проверяет наличие ресурсов у заданного владельца.</brief>
#end
  function IsEmpty(
#doc
NRec владельца ресурсов.
#end
				cMaster : comp
#doc
 <p>true  - у владельца нет ресурсов;
 <p>false - у владельца есть ресурсы.
#end
				) : boolean;

Версия

Начиная с Атлантис 5.2.10 имеется возможность указывать файл, содержащий откомпилированную документацию на заданную тему (элемент ссылки <имя-файла>).

Начиная с Атлантис 5.2.09 имеется возможность адресовать ссылку с точностью до элемента объекта (элементы ссылки <тип-элемента> и <идентификатор-элемента>).

Атлантис 5.2.07.