NumeRe v1.1.4
NumeRe: Framework für Numerische Rechnungen
Dependencies Class Reference

This class handles the dependencies of the current procedure file (passed as pointer to a ProcedureElement instance) and calculates them during construction. More...

#include <dependency.hpp>

Collaboration diagram for Dependencies:

Public Member Functions

 Dependencies (ProcedureElement *procedureFile)
 Dependencies constructor. More...
 
std::map< std::string, DependencyList > & getDependencyMap ()
 
std::string getMainProcedure () const
 

Private Member Functions

void walk (ProcedureElement *procedureFile)
 This member function will walk through the file and redirect the control to getProcedureDependencies(), if it hits a procedure head. More...
 
int getProcedureDependencies (ProcedureElement *procedureFile, int nCurrentLine)
 This member function calculates the dependencies of the current procedure. More...
 
std::string getProcedureName (std::string sCommandLine) const
 This member function extracts the procedure name from the procedure head. More...
 
void resolveProcedureCalls (std::string sCommandLine, const std::string &sProcedureName, const std::string &sCurrentNameSpace)
 This member function resilves the procedure calls contained in the current procedure command line. More...
 
std::string getProcedureFileName (std::string sProc) const
 This member function returns the file name of the current called procedure. More...
 

Private Attributes

std::map< std::string, DependencyListmDependencies
 
std::string sFileName
 
std::string sThisFileNameSpacePrefix
 
std::string sThisNameSpace
 
std::string sMainProcedure
 

Detailed Description

This class handles the dependencies of the current procedure file (passed as pointer to a ProcedureElement instance) and calculates them during construction.

Definition at line 80 of file dependency.hpp.

Constructor & Destructor Documentation

◆ Dependencies()

Dependencies::Dependencies ( ProcedureElement procedureFile)

Dependencies constructor.

Parameters
procedureFileProcedureElement*

Definition at line 82 of file dependency.cpp.

References ProcedureElement::getFileName(), NumeReKernel::getInstance(), Settings::getProcPath(), NumeReKernel::getSettings(), replaceAll(), replacePathSeparator(), sFileName, sThisFileNameSpacePrefix, sThisNameSpace, and walk().

Here is the call graph for this function:

Member Function Documentation

◆ getDependencyMap()

std::map< std::string, DependencyList > & Dependencies::getDependencyMap ( )
inline

◆ getMainProcedure()

std::string Dependencies::getMainProcedure ( ) const
inline

Definition at line 103 of file dependency.hpp.

References sMainProcedure.

Referenced by DependencyDialog::calculateDependencies().

◆ getProcedureDependencies()

int Dependencies::getProcedureDependencies ( ProcedureElement procedureFile,
int  nCurrentLine 
)
private

This member function calculates the dependencies of the current procedure.

Parameters
procedureFileProcedureElement*
nCurrentLineint
Returns
int

Definition at line 162 of file dependency.cpp.

References decodeNameSpace(), findCommand(), ProcedureElement::getCurrentLine(), ProcedureElement::getFileName(), ProcedureElement::getNextLine(), getProcedureName(), ProcedureElement::isLastLine(), mDependencies, resolveProcedureCalls(), sMainProcedure, Match::sString, sThisFileNameSpacePrefix, sThisNameSpace, ProcedureCommandLine::TYPE_PROCEDURE_FOOT, and ProcedureCommandLine::TYPE_PROCEDURE_HEAD.

Referenced by walk().

Here is the call graph for this function:

◆ getProcedureFileName()

std::string Dependencies::getProcedureFileName ( std::string  sProc) const
private

This member function returns the file name of the current called procedure.

Parameters
sProcstd::string
Returns
std::string

Definition at line 299 of file dependency.cpp.

References NumeReKernel::getInstance(), NumeReKernel::getProcedureInterpreter(), sFileName, and FileSystem::ValidFileName().

Referenced by resolveProcedureCalls().

Here is the call graph for this function:

◆ getProcedureName()

std::string Dependencies::getProcedureName ( std::string  sCommandLine) const
private

This member function extracts the procedure name from the procedure head.

Parameters
sCommandLinestd::string
Returns
std::string

Definition at line 225 of file dependency.cpp.

References sThisNameSpace.

Referenced by getProcedureDependencies().

◆ resolveProcedureCalls()

void Dependencies::resolveProcedureCalls ( std::string  sLine,
const std::string &  sProcedureName,
const std::string &  sCurrentNameSpace 
)
private

This member function resilves the procedure calls contained in the current procedure command line.

Parameters
sLinestd::string
sProcedureNameconst std::string&
sCurrentNameSpaceconst std::string&
Returns
void

Definition at line 248 of file dependency.cpp.

References getProcedureFileName(), isInQuotes(), mDependencies, replaceAll(), sThisFileNameSpacePrefix, and sThisNameSpace.

Referenced by getProcedureDependencies().

Here is the call graph for this function:

◆ walk()

void Dependencies::walk ( ProcedureElement procedureFile)
private

This member function will walk through the file and redirect the control to getProcedureDependencies(), if it hits a procedure head.

Parameters
procedureFileProcedureElement*
Returns
void

Definition at line 136 of file dependency.cpp.

References ProcedureElement::getFirstLine(), getProcedureDependencies(), ProcedureElement::isLastLine(), and mDependencies.

Referenced by Dependencies().

Here is the call graph for this function:

Member Data Documentation

◆ mDependencies

std::map<std::string, DependencyList> Dependencies::mDependencies
private

◆ sFileName

std::string Dependencies::sFileName
private

Definition at line 84 of file dependency.hpp.

Referenced by Dependencies(), and getProcedureFileName().

◆ sMainProcedure

std::string Dependencies::sMainProcedure
private

Definition at line 87 of file dependency.hpp.

Referenced by getMainProcedure(), and getProcedureDependencies().

◆ sThisFileNameSpacePrefix

std::string Dependencies::sThisFileNameSpacePrefix
private

Definition at line 85 of file dependency.hpp.

Referenced by Dependencies(), getProcedureDependencies(), and resolveProcedureCalls().

◆ sThisNameSpace

std::string Dependencies::sThisNameSpace
private

The documentation for this class was generated from the following files: