yast2-core
Public Types | Static Public Member Functions | Static Private Member Functions | Static Private Attributes
YCPPathSearch Class Reference

#include <pathsearch.h>

Inheritance diagram for YCPPathSearch:
Y2PathSearch

List of all members.

Public Types

enum  Kind { Client, Include, Module, num_Kind }
- Public Types inherited from Y2PathSearch
enum  WHAT { GENERIC, EXECCOMP, PLUGIN }

Static Public Member Functions

static string find (Kind kind, const string &name)
static string findInclude (const string &name)
static string findModule (string name, bool the_source=false)
static void addPath (Kind kind, const string &path)
static void clearPaths (Kind kind)
static void initialize ()
static std::list< string >
::const_iterator 
searchListBegin (Kind kind)
 Perl needs to synchronize its search paths with ours (#39512)
static std::list< string >
::const_iterator 
searchListEnd (Kind kind)
 Perl needs to synchronize its search paths with ours (#39512)
static string bytecodeForFile (string file)
- Static Public Member Functions inherited from Y2PathSearch
static int numberOfComponentLevels ()
static string searchPath (WHAT what, int level)
static int currentComponentLevel ()
static string findy2 (string filename, int mode=R_OK, int level=-1)
static string findy2exe (string root, string compname, bool server, bool non_y2, int level)
static string findy2plugin (string name, int level)
static string globsubst (const string &where, const string &oldstr, const string &newstr)
 globsubst ("YaST::Foo::UI", "::", "/") == "YaST/Foo/UI"
static string completeFilename (const string &fname)

Static Private Member Functions

static void initialize (Kind kind, const char *suffix)

Static Private Attributes

static bool initialized = false
static std::list< string > searchList [num_Kind]

Additional Inherited Members

- Static Protected Member Functions inherited from Y2PathSearch
static vector< string > getPaths ()
- Static Protected Attributes inherited from Y2PathSearch
static bool searchPrefixWarn = true

Detailed Description

A straightforward path search. It should eventually replace the complex interplay of Y2PathSearch and Y2ComponentBroker, Y2ComponentCreator.


Member Enumeration Documentation

Enumerator:
Client 
Include 
Module 
num_Kind 

Member Function Documentation

void YCPPathSearch::addPath ( Kind  kind,
const string &  path 
)
static

prepends a path to the search list

Parameters:
kind,kindof files to find in path
path,stringpath to directory

References searchList.

Referenced by initialize(), and main().

string YCPPathSearch::bytecodeForFile ( string  file)
static

Search for a YBC file corresponding to the given YCP file. It also checks, if the YBC file is newer than the YCP.

Parameters:
filethe YCP file for which YBC file should be found
Returns:
YBC file name or empty string if no YBC file was found

References y2debug.

Referenced by Y2CCWFM::createInLevel().

void YCPPathSearch::clearPaths ( Kind  kind)
static

clears the specified search list

Parameters:
kind,kindfo pathes to clear used for '–nostdmodules' and '–nostdincludes' in ycpc

References searchList.

Referenced by main().

string YCPPathSearch::find ( Kind  kind,
const string &  name 
)
static
Parameters:
namethe shortest should suffice..

References Y2PathSearch::completeFilename(), initialize(), searchList, Y2PathSearch::searchPrefixWarn, y2debug, and y2warning.

Referenced by findInclude(), and findModule().

string YCPPathSearch::findInclude ( const string &  name)
static
Parameters:
namethe shortest should suffice..

References find(), and Include.

Referenced by resolveDep().

string YCPPathSearch::findModule ( string  name,
bool  the_source = false 
)
static
Parameters:
name,nameof module to find
the_source,iffalse and name does not end with ".ybc", it will be appended , if true and name does not end with ".ycp", it will be appended TODO module nesting (:: -> /)

References find(), and Module.

Referenced by Y2CCWFM::provideNamespace(), Xmlcode::readModule(), Bytecode::readModule(), and resolveDep().

void YCPPathSearch::initialize ( )
static

Initializes the search paths if not done already. Called automatically in each find.

References Client, Include, initialized, and Module.

Referenced by find(), and main().

void YCPPathSearch::initialize ( Kind  kind,
const char *  suffix 
)
staticprivate
std::list< string >::const_iterator YCPPathSearch::searchListBegin ( Kind  kind)
static

Perl needs to synchronize its search paths with ours (#39512)

References searchList.

Referenced by main().

std::list< string >::const_iterator YCPPathSearch::searchListEnd ( Kind  kind)
static

Perl needs to synchronize its search paths with ours (#39512)

References searchList.

Referenced by main().


Member Data Documentation

bool YCPPathSearch::initialized = false
staticprivate

Referenced by initialize().

std::list< string > YCPPathSearch::searchList
staticprivate

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

Generated on a sunny day for yast2-core by doxygen 1.8.1