RTEMS Linker  0.0.1
RTEMS Tools Project
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
rld::files::cache Class Reference

#include <rld-files.h>

Public Member Functions

 cache ()
 
virtual ~cache ()
 
void open ()
 
void close ()
 
void add (const std::string &path)
 
void add (paths &paths__)
 
void add_libraries (paths &paths__)
 
void archive_begin (const std::string &path)
 
void archive_end (const std::string &path)
 
void archives_begin ()
 
void archives_end ()
 
void collect_object_files ()
 
void collect_object_files (const std::string &path)
 
void load_symbols (symbols::table &symbols, bool locals=false)
 
void output_unresolved_symbols (std::ostream &out)
 
archivesget_archives ()
 
objectsget_objects ()
 
void get_objects (object_list &list) const
 
const pathsget_paths () const
 
void get_archive_files (files &afiles)
 
void get_object_files (files &ofiles)
 
int archive_count () const
 
int object_count () const
 
int path_count () const
 
void output_archive_files (std::ostream &out)
 
void output_object_files (std::ostream &out)
 

Protected Member Functions

virtual void input (const std::string &path)
 

Detailed Description

A collection of objects files as a cache. This currently is not a cache but it could become one.

Constructor & Destructor Documentation

rld::files::cache::cache ( )

Construct the cache.

rld::files::cache::~cache ( )
virtual

Destruct the objects.

Member Function Documentation

void rld::files::cache::add ( const std::string &  path)

Add a file path to the cache.

void rld::files::cache::add ( paths paths__)

Add a container of path to the cache.

void rld::files::cache::add_libraries ( paths paths__)

Add a container of path to the cache.

void rld::files::cache::archive_begin ( const std::string &  path)

Being a session on an archive.

int rld::files::cache::archive_count ( ) const

Get the archive count.

void rld::files::cache::archive_end ( const std::string &  path)

End a session on an archive.

void rld::files::cache::archives_begin ( )

Being sessions on all archives.

void rld::files::cache::archives_end ( )

End the archive sessions.

void rld::files::cache::close ( )

Close the cache.

void rld::files::cache::collect_object_files ( )

Collect the object names and add them to the cache.

void rld::files::cache::collect_object_files ( const std::string &  path)

Collect the object file names by verifing the paths to the files are valid or read the object file names contained in any archives.

void rld::files::cache::get_archive_files ( files afiles)

Get the archive files.

archives & rld::files::cache::get_archives ( )

Get the archives.

void rld::files::cache::get_object_files ( files ofiles)

Get the object files including those in archives.

objects & rld::files::cache::get_objects ( )

Get the objects inlcuding those in archives.

void rld::files::cache::get_objects ( object_list list) const

Get the added objects. Does not include the ones in th archives.

const paths & rld::files::cache::get_paths ( ) const

Get the paths.

void rld::files::cache::input ( const std::string &  path)
protectedvirtual

Input a path into the cache.

void rld::files::cache::load_symbols ( symbols::table symbols,
bool  locals = false 
)

Load the symbols into the symbol table.

Parameters
symbolsThe symbol table to load.
localsInclude local symbols. The default does not include them.
int rld::files::cache::object_count ( ) const

Get the object count.

void rld::files::cache::open ( )

Open the cache by collecting the file names, loading object headers and loading the archive file names.

void rld::files::cache::output_archive_files ( std::ostream &  out)

Output archive files.

void rld::files::cache::output_object_files ( std::ostream &  out)

Output archive files.

void rld::files::cache::output_unresolved_symbols ( std::ostream &  out)

Output the unresolved symbol table to the output stream.

int rld::files::cache::path_count ( ) const

Get the path count.


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