Unit PasDoc_Items

Description

All items that can appear within Pascal source code.

For each item (type, variable, class etc.) that may appear in a Pascal source code file and can thus be taken into the documentation, this unit provides an object type which will store name, unit, description and more on this item.

Source: source/component/PasDoc_Items.pas (line 38).

Uses

Overview

Classes, Interfaces, Objects and Records

Name Description
Record TRawDescriptionInfo Raw description, in other words: the contents of comment before given item.
Class TBaseItem This is a basic item class, that is linkable, and has some RawDescription.
Class TPasItem This is a TBaseItem descendant that is always declared inside some Pascal source file.
Class TPasConstant Pascal constant.
Class TPasFieldVariable Pascal global variable or field or nested constant of CIO.
Class TPasType Pascal type (but not a procedural type — these are expressed as TPasRoutine.)
Class TPasEnum Enumerated type.
Class TPasRoutine This represents:

  1. global function/procedure,

  2. method (function/procedure of a structure (TPasCio)),

  3. type (pointer to one of the above) (in this case Name is the type name).

Class TPasProperty  
Class TPasCio Extends TPasItem to store all items in a class / an object, e.g. fields.
Class EAnchorAlreadyExists  
Class TExternalItem TExternalItem extends TBaseItem to store extra information about a project.
Class TExternalItemList TExternalItemList extends TObjectVector to store non-nil instances of TExternalItem
Class TAnchorItem  
Class TPasUnit extends TPasItem to store anything about a unit, its constants, types etc.; also provides methods for parsing a complete unit.
Class TBaseItems Container class to store a list of TBaseItems.
Class TPasItems Container class to store a list of TPasItems.
Class TPasRoutines Collection of methods.
Class TPasProperties Collection of properties.
Class TPasNestedCios Collection of classes / records / interfaces.
Class TPasTypes Collection of types.
Class TPasUnits Collection of units.

Functions and Procedures

function RoutineTypeToString(const RoutineType: TRoutineType): string;
function CioTypeToString(const CioType: TCIOType): String;
function VisibilitiesToStr(const Visibilities: TVisibilities): string;
function VisToStr(const Vis: TVisibility): string;

Types

TVisibility = (...);
TVisibilities = set of TVisibility;
TInfoMergeType = (...);
PRawDescriptionInfo = ˆTRawDescriptionInfo;
THintDirective = (...);
THintDirectives = set of THintDirective;
TRoutineType = (...);
TCIOType = (...);
TClassDirective = (...);

Constants

VisibilityStr: array[TVisibility] of string[16] = ( 'published', 'public', 'protected', 'strict protected', 'private', 'strict private', 'automated', 'implicit' );
AllVisibilities: TVisibilities = [Low(TVisibility) .. High(TVisibility)];
DefaultVisibilities: TVisibilities = [viProtected, viPublic, viPublished, viAutomated];
InfoMergeTypeStr: array[TInfoMergeType] of string = ( 'none', 'prefer-interface', 'prefer-implementation', 'join' );
CIORecordType = [CIO_RECORD, CIO_PACKEDRECORD];
CIONonHierarchy = CIORecordType;
EmptyRawDescriptionInfo: TRawDescriptionInfo = ( Content: ''; StreamName: ''; BeginPosition: -1; EndPosition: -1; );

Description

Functions and Procedures

function RoutineTypeToString(const RoutineType: TRoutineType): string;

Returns lowercased keyword associated with given method type.

Source: source/component/PasDoc_Items.pas (line 1270).

function CioTypeToString(const CioType: TCIOType): String;

Returns lowercased keyword(s) associated with given structure type.

Source: source/component/PasDoc_Items.pas (line 1273).

function VisibilitiesToStr(const Visibilities: TVisibilities): string;

Returns VisibilityStr for each value in Visibilities, delimited by commas.

Source: source/component/PasDoc_Items.pas (line 1277).

function VisToStr(const Vis: TVisibility): string;

This item has no description.

Source: source/component/PasDoc_Items.pas (line 1279).

Types

TVisibility = (...);

Visibility of a field/method.

Values
  • viPublished: indicates field or method is published
  • viPublic: indicates field or method is public
  • viProtected: indicates field or method is protected
  • viStrictProtected: indicates field or method is strict protected
  • viPrivate: indicates field or method is private
  • viStrictPrivate: indicates field or method is strict private
  • viAutomated: indicates field or method is automated
  • viImplicit: implicit visibility, marks the implicit members if user used --implicit-visibility=implicit command-line option.

Source: source/component/PasDoc_Items.pas (line 59).

TVisibilities = set of TVisibility;

This item has no description.

Source: source/component/PasDoc_Items.pas (line 79).

TInfoMergeType = (...);

Type of merging interface and implementation comments. See --implementation-comments documentation.

Values
  • imtNone: Implementation not parsed.
  • imtPreferIntf: Read both, prefer interface.
  • imtPreferImpl: Read both, prefer implementation.
  • imtJoin: Read both, concatenate.

Source: source/component/PasDoc_Items.pas (line 101).

PRawDescriptionInfo = ˆTRawDescriptionInfo;

This item has no description.

Source: source/component/PasDoc_Items.pas (line 154).

THintDirective = (...);

This item has no description.

Values
  • hdDeprecated
  • hdPlatform
  • hdLibrary
  • hdExperimental

Source: source/component/PasDoc_Items.pas (line 345).

THintDirectives = set of THintDirective;

This item has no description.

Source: source/component/PasDoc_Items.pas (line 346).

TRoutineType = (...);

Routine type for TPasRoutine.What

Values
  • ROUTINE_CONSTRUCTOR
  • ROUTINE_DESTRUCTOR
  • ROUTINE_FUNCTION
  • ROUTINE_PROCEDURE
  • ROUTINE_OPERATOR

Source: source/component/PasDoc_Items.pas (line 668).

TCIOType = (...);

Determine type of TPasCio item, like a class or record.

Values
  • CIO_CLASS
  • CIO_PACKEDCLASS
  • CIO_OBJCCLASS
  • CIO_PACKEDOBJCCLASS
  • CIO_DISPINTERFACE
  • CIO_INTERFACE
  • CIO_OBJECT
  • CIO_PACKEDOBJECT
  • CIO_RECORD
  • CIO_PACKEDRECORD
  • CIO_TYPE: CIO_TYPE is used only when CIO is a type helper, designed by CIO.ClassDirective = CT_HELPER.

Source: source/component/PasDoc_Items.pas (line 769).

TClassDirective = (...);

This item has no description.

Values
  • CT_NONE
  • CT_ABSTRACT
  • CT_SEALED
  • CT_HELPER
  • CT_EXTERNAL: external can be used with objcclass (see FPC PasCocoa)

Source: source/component/PasDoc_Items.pas (line 780).

Constants

VisibilityStr: array[TVisibility] of string[16] = ( 'published', 'public', 'protected', 'strict protected', 'private', 'strict private', 'automated', 'implicit' );

This item has no description.

Source: source/component/PasDoc_Items.pas (line 82).

AllVisibilities: TVisibilities = [Low(TVisibility) .. High(TVisibility)];

This item has no description.

Source: source/component/PasDoc_Items.pas (line 94).

DefaultVisibilities: TVisibilities = [viProtected, viPublic, viPublished, viAutomated];

This item has no description.

Source: source/component/PasDoc_Items.pas (line 95).

InfoMergeTypeStr: array[TInfoMergeType] of string = ( 'none', 'prefer-interface', 'prefer-implementation', 'join' );

This item has no description.

Source: source/component/PasDoc_Items.pas (line 113).

CIORecordType = [CIO_RECORD, CIO_PACKEDRECORD];

This item has no description.

Source: source/component/PasDoc_Items.pas (line 1263).

CIONonHierarchy = CIORecordType;

This item has no description.

Source: source/component/PasDoc_Items.pas (line 1264).

EmptyRawDescriptionInfo: TRawDescriptionInfo = ( Content: ''; StreamName: ''; BeginPosition: -1; EndPosition: -1; );

This item has no description.

Source: source/component/PasDoc_Items.pas (line 1266).

Authors

Created

11 Mar 1999


Generated by PasDoc 0.17.0.snapshot.