PasDoc's autodocOverview Units Class Hierarchy Classes, Interfaces, Objects and Records Types Variables Constants Functions and Procedures Identifiers Unit dependency graph Classes hierarchy graph
|
Class TPasCio
Unit
PasDoc_Items
Declaration
type TPasCio = class(TPasType)
Description
Extends TPasItem to store all items in a class / an object, e.g. fields.
Hierarchy
Overview
Fields
Methods
Properties
Description
Fields
|
FOutputFileName: string; |
|
|
FHelperTypeIdentifier: string; |
|
|
FNameWithGeneric: string; |
|
Methods
|
procedure Serialize(const ADestination: TStream); override; |
|
|
procedure Deserialize(const ASource: TStream); override; |
|
|
procedure StoreMemberTag(ThisTag: TTag; var ThisTagData: TObject; EnclosingTag: TTag; var EnclosingTagData: TObject; const TagParameter: string; var ReplaceStr: string); |
|
|
constructor Create; override; |
|
|
destructor Destroy; override; |
|
|
function FindItem(const ItemName: string): TBaseItem; override; |
If this class (or interface or object) contains a field, method or property with the name of ItemName, the corresponding item pointer is returned.
|
|
function FindItemMaybeInAncestors(const ItemName: string): TBaseItem; override; |
|
|
function FindItemInAncestors(const ItemName: string): TPasItem; |
This searches for item (field, method or property) defined in ancestor of this cio. I.e. searches within the FirstAncestor, then within FirstAncestor.FirstAncestor, and so on. Returns nil if not found.
|
|
procedure RegisterTags(TagManager: TTagManager); override; |
|
|
function FirstAncestor: TPasItem; |
This returns Ancestors[0].Data, i.e. instance of the first ancestor of this Cio (or nil if it couldn't be found), or nil if Ancestors.Count = 0.
|
|
function FirstAncestorName: string; |
This returns the name of first ancestor of this Cio.
If Ancestor.Count > 0 then it simply returns Ancestors[0], i.e. the name of the first ancestor as was specified at class declaration, else it returns ''.
So this method is roughly something like FirstAncestor.Name , but with a few notable differences:
FirstAncestor is nil if the ancestor was not found in items parsed by pasdoc. But this method will still return in this case name of ancestor.
FirstAncestor.Name is the name of ancestor as specified at declaration of an ancestor. But this method is the name of ancestor as specified at declaration of this cio — with the same letter case, with optional unit specifier.
If this function returns '', then you can be sure that FirstAncestor returns nil. The other way around is not necessarily true — FirstAncestor may be nil, but still this function may return something <> ''.
|
|
function ShowVisibility: boolean; |
Is Visibility of items (Fields, Methods, Properties) important ?
|
Properties
|
property Ancestors: TStringPairVector read FAncestors; |
Name of the ancestor (class, object, interface). Each item is a TStringPair, with
Name is the name (single Pascal identifier) of this ancestor,
Value is the full declaration of this ancestor. For example, in addition to Name, this may include "specialize" directive (for FPC generic specialization) at the beginning. And "<foo,bar>" section at the end (for FPC or Delphi generic specialization).
Data is a TPasItem reference to this ancestor, or Nil if not found. This is assigned only in TDocGenerator.BuildLinks.
Note that each ancestor is a TPasItem, not necessarily TPasCio. Consider e.g. the case
TMyStringList = Classes.TStringList;
TMyExtendedStringList = class(TMyStringList)
...
end;
At least for now, such declaration will result in TPasType (not TPasCio!) with Name = 'TMyStringList', which means that ancestor of TMyExtendedStringList will be a TPasType instance.
Note that the PasDoc_Parser already takes care of correctly setting Ancestors when user didn't specify any ancestor name at cio declaration. E.g. if this cio is a class, and user didn't specify ancestor name at class declaration, and this class name is not 'TObject' (in case pasdoc parses the RTL), the Ancestors[0] will be set to 'TObject'.
|
|
property MyType: TCIOType read FMyType write FMyType; |
determines if this is a class, an interface or an object
|
|
property OutputFileName: string read FOutputFileName write FOutputFileName; |
name of documentation output file (if each class / object gets its own file, that's the case for HTML, but not for TeX)
|
|
property NameWithGeneric: string read FNameWithGeneric write FNameWithGeneric; |
Name, with optional "generic" directive before (for FPC generics) and generic type identifiers list "<foo,bar>" after (for FPC and Delphi generics).
|
Generated by PasDoc 0.15.0.
|