Info Class Reference

#include <cpptagdb.h>

Collaboration diagram for Info:
Collaboration graph
[legend]

List of all members.

Public Types

typedef std::set< std::string > Directories
 the names of all directories encountered when populating symbols into members_
typedef std::multimap
< std::string, std::string > 
FilesMap
 data structure to hold the names of the files processed by cpptagdb.exe keyed by their basename.ext component.
typedef std::multimap
< std::string, SymbolInfo
const * > 
MembersMap
 a mapping between class and namespace members and their symbol info.

Public Member Functions

void findMatchingFiles (std::string const &fileNodeName, std::vector< std::string > &output) const
 Search the set of files found by cpptagdb.exe and append the name of each file whose basename.ext matches fileNodeName to a vector. Wildcards are not supported. fileNodeName must not have directory components.
void findMatchingMembers (std::string const &memberName, std::vector< SymbolInfo const * > &output, bool caseSensitive=true) const
 Search this Info object for the names of symbols whose member name matches the specified value and append their names to the output vector.
void findRelativeFiles (std::string const &relativeSubPath, std::vector< std::string > &output) const
 Find any files in the directories where symbols are defined which match the specified sub path. For example, if relativeSubPath is fred.cpp, then all fred.cpp files in any directory which defined a symbol will be returned. The relativeSubPath can be an absolute path or it can contain ./ or ../ and the function will still work. Note that the current directory is explicitly NOT searched by this function.
 Info ()
int populate (FILE *f, int &failedLine)
 Read the specified file and populate this object from that file.
int populate (std::string const &filename, int &failedLine)
 Populate this Info object given a file name. Return a negative number if parsing of the file failed and also return the line number through the reference parameter, failedLine.

Public Attributes

Directories directories_
 All the files encountered while processing symbols.
FilesMap files_
 The files processed by cpptagdb.exe. Note that the key is the file node name (basename.ext).
MembersMap members_
 namespace and class members
SymbolInfo symbols_
 A tree structure containing all the symbols read by cpptagdb.exe.

Private Member Functions

int populateSymbol (std::string const &filename, std::string const &info)
 Add a symbol to this database given the filename with which it is associated and the line of text from the .tagpp file.

Friends

std::ostream & operator<< (std::ostream &s, Info const &me)
 global free function that writes Info objects a stream.

Detailed Description

Definition at line 128 of file cpptagdb.h.


Member Typedef Documentation

typedef std::set<std::string> Directories

the names of all directories encountered when populating symbols into members_

Definition at line 141 of file cpptagdb.h.

typedef std::multimap<std::string, std::string> FilesMap

data structure to hold the names of the files processed by cpptagdb.exe keyed by their basename.ext component.

Definition at line 131 of file cpptagdb.h.

typedef std::multimap<std::string, SymbolInfo const *> MembersMap

a mapping between class and namespace members and their symbol info.

Definition at line 136 of file cpptagdb.h.


Constructor & Destructor Documentation

Info (  ) 

Definition at line 184 of file cpptagdb.h.


Member Function Documentation

void findMatchingFiles ( std::string const &  fileNodeName,
std::vector< std::string > &  output 
) const

Search the set of files found by cpptagdb.exe and append the name of each file whose basename.ext matches fileNodeName to a vector. Wildcards are not supported. fileNodeName must not have directory components.

Parameters:
[in] fileNodeName The name of the file to search for.
[out] output The vector to which the matching files are appended.

Definition at line 279 of file cpptagdb.cxx.

Here is the caller graph for this function:

void findMatchingMembers ( std::string const &  memberName,
std::vector< SymbolInfo const * > &  output,
bool  caseSensitive = true 
) const

Search this Info object for the names of symbols whose member name matches the specified value and append their names to the output vector.

Parameters:
[in] memberName The name of the member to search for.
[out] output The vector to which the matching symbols are appended.

Definition at line 316 of file cpptagdb.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

void findRelativeFiles ( std::string const &  relativeSubPath,
std::vector< std::string > &  output 
) const

Find any files in the directories where symbols are defined which match the specified sub path. For example, if relativeSubPath is fred.cpp, then all fred.cpp files in any directory which defined a symbol will be returned. The relativeSubPath can be an absolute path or it can contain ./ or ../ and the function will still work. Note that the current directory is explicitly NOT searched by this function.

Definition at line 296 of file cpptagdb.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

int populate ( FILE *  f,
int &  failedLine 
)

Read the specified file and populate this object from that file.

Returns:
negative if read or syntax error.
The failing line number in variable, failedLine.

Definition at line 212 of file cpptagdb.cxx.

Here is the call graph for this function:

int populate ( std::string const &  filename,
int &  failedLine 
)

Populate this Info object given a file name. Return a negative number if parsing of the file failed and also return the line number through the reference parameter, failedLine.

Definition at line 194 of file cpptagdb.cxx.

Here is the caller graph for this function:

int populateSymbol ( std::string const &  filename,
std::string const &  info 
) [private]

Add a symbol to this database given the filename with which it is associated and the line of text from the .tagpp file.

Definition at line 382 of file cpptagdb.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  s,
Info const &  me 
) [friend]

global free function that writes Info objects a stream.

Definition at line 364 of file cpptagdb.cxx.


Member Data Documentation

All the files encountered while processing symbols.

Definition at line 152 of file cpptagdb.h.

The files processed by cpptagdb.exe. Note that the key is the file node name (basename.ext).

Definition at line 149 of file cpptagdb.h.

namespace and class members

Definition at line 154 of file cpptagdb.h.

A tree structure containing all the symbols read by cpptagdb.exe.

Definition at line 145 of file cpptagdb.h.


The documentation for this class was generated from the following files:
Generated on Wed Feb 29 22:58:22 2012 for CXXUtilities by  doxygen 1.6.3