yast2-core
Public Types | Static Public Member Functions | Static Private Member Functions | Static Private Attributes | List of all members
YCPPathSearch Class Reference

#include <pathsearch.h>

Inheritance diagram for YCPPathSearch:
Y2PathSearch

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) More...
 
static std::list< string >
::const_iterator 
searchListEnd (Kind kind)
 Perl needs to synchronize its search paths with ours (#39512) More...
 
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" More...
 
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(), and switch().

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.6