NaturalDocs::SymbolTable::File

A class representing a file, keeping track of what symbols and references are defined in it.

Summary
NaturalDocs::SymbolTable::FileA class representing a file, keeping track of what symbols and references are defined in it.
Implementation
MembersThe class is implemented as a blessed arrayref.
Modification Functions
NewCreates and returns a new object.
AddSymbolAdds a SymbolString definition.
DeleteSymbolRemoves a SymbolString definition.
AddReferenceAdds a reference definition.
DeleteReferenceRemoves a reference definition.
Information Functions
HasAnythingReturns whether the file has any symbol or reference definitions at all.
SymbolsReturns an array of all the SymbolStrings defined in this file.
ReferencesReturns an array of all the ReferenceStrings defined in this file.
DefinesSymbolReturns whether the file defines the passed SymbolString or not.
DefinesReferenceReturns whether the file defines the passed ReferenceString or not.

Implementation

Members

The class is implemented as a blessed arrayref.  The following constants are its members.

SYMBOLSAn existence hashref of the SymbolStrings it defines.
REFERENCESAn existence hashref of the ReferenceStrings in the file.

Modification Functions

New

sub New

Creates and returns a new object.

AddSymbol

sub AddSymbol #(symbol)

Adds a SymbolString definition.

Parameters

symbolThe SymbolString being added.

DeleteSymbol

sub DeleteSymbol #(symbol)

Removes a SymbolString definition.

Parameters

symbolThe SymbolString to delete.

AddReference

sub AddReference #(referenceString)

Adds a reference definition.

Parameters

referenceStringThe ReferenceString being added.

DeleteReference

sub DeleteReference #(referenceString)

Removes a reference definition.

Parameters

referenceStringThe ReferenceString to delete.

Information Functions

HasAnything

sub HasAnything

Returns whether the file has any symbol or reference definitions at all.

Symbols

sub Symbols

Returns an array of all the SymbolStrings defined in this file.  If none, returns an empty array.

References

sub References

Returns an array of all the ReferenceStrings defined in this file.  If none, returns an empty array.

DefinesSymbol

sub DefinesSymbol #(symbol)

Returns whether the file defines the passed SymbolString or not.

DefinesReference

sub DefinesReference #(referenceString)

Returns whether the file defines the passed ReferenceString or not.

sub New
Creates and returns a new object.
sub AddSymbol #(symbol)
Adds a SymbolString definition.
A scalar which encodes a normalized array of identifier strings representing a full or partially-resolved symbol.
sub DeleteSymbol #(symbol)
Removes a SymbolString definition.
sub AddReference #(referenceString)
Adds a reference definition.
sub DeleteReference #(referenceString)
Removes a reference definition.
sub HasAnything
Returns whether the file has any symbol or reference definitions at all.
sub Symbols
Returns an array of all the SymbolStrings defined in this file.
sub References
Returns an array of all the ReferenceStrings defined in this file.
All the information about a reference that makes it unique encoded into a string.
sub DefinesSymbol #(symbol)
Returns whether the file defines the passed SymbolString or not.
sub DefinesReference #(referenceString)
Returns whether the file defines the passed ReferenceString or not.
Close