@member and @value tags
This page describes @member and @value tags. Overall, their intention is similiar: they allow you to specify a description for some item (structure member or enumerated value) as part of the description of an "enclosing" item (structure type or enumerated type). This is a matter of preference whether you use these tags, because they don’t allow to express anything new, but they allow to express it in somewhat more terse way.
@member tag
The @member tag can be used within the description of a structure (class, record, interface or object) to specify the description for a particular member (field, property, method) of this structure. Example:
type
{ @member MyField Description for MyField field.
@member MyMethod Description for MyMethod method. }
TMyClass = class
MyField: Integer;
procedure MyMethod;
end;
This is equivalent to
type
TMyClass = class
{ Description for MyField field. }
MyField: Integer;
{ Description for MyMethod method. }
procedure MyMethod;
end;
@value tag
The @value tag can be used within the description of an enumerated type to specify the description for a particular value of this type. Example:
type
{ @value meOne Description for meOne value.
@value meTwo Description for meTwo value. }
TMyEnum = (meOne, meTwo);
This is equivalent to
type
TMyEnum = (
{ Description for meOne value. } meOne,
{ Description for meTwo value. } meTwo);
More examples
For more examples and tests of these tags see test unit ok_value_member_tags.pas.