ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
StringUtility Class Reference

This class consolidates utility code used within ROSETTA, SAGE, AST Rewrite Mechanism, and AST Processing parts of the ROSE project. More...

#include <string_functions.h>

Public Types

enum  OSType {
  OS_TYPE_UNKNOWN,
  OS_TYPE_LINUX,
  OS_TYPE_OSX,
  OS_TYPE_WINDOWS,
  OS_TPYE_WINDOWSXP
}
 
enum  FileNameLocation {
  FILENAME_LOCATION_UNKNOWN,
  FILENAME_LOCATION_USER,
  FILENAME_LOCATION_LIBRARY,
  FILENAME_LOCATION_NOT_EXIST
}
 
typedef std::vector
< StringWithLineNumber > 
FileWithLineNumbers
 
typedef std::string FileNameLibrary
 

Static Public Attributes

static const std::string FILENAME_LIBRARY_UNKNOWN = "Unknown"
 
static const std::string FILENAME_LIBRARY_USER = "User"
 
static const std::string FILENAME_LIBRARY_C = "C"
 
static const std::string FILENAME_LIBRARY_STDCXX = "C++"
 
static const std::string FILENAME_LIBRARY_STL = "STL"
 
static const std::string FILENAME_LIBRARY_LINUX = "Linux"
 
static const std::string FILENAME_LIBRARY_GCC = "GCC"
 
static const std::string FILENAME_LIBRARY_BOOST = "Boost"
 
static const std::string FILENAME_LIBRARY_ROSE = "Rose"
 

Detailed Description

This class consolidates utility code used within ROSETTA, SAGE, AST Rewrite Mechanism, and AST Processing parts of the ROSE project.

Authors
Quinlan, Schordan, Yi
Version
0.5
Date
Dec 16th 2002
Bug:
Not finished yet.
Warning
Don't use this until it is ready.
Todo:
Finish documentation!
Note
Large parts of documentation contained in ROSE/util/utilDocumentation.docs.

This class simplifies the use of strings in the rest of the ROSE project.

This class has several member functions that could be simplified now that we use the C++ std::string class uniformally (except for places where we still use char*). We used to use the Sun C++ 4.2 compiler (the only compiler that SAGE II used to work with) and there we didn't have access to C++ strings. Later we moved to the use of a string class similar to the C++ string class and in 2002 we moved to the use of the C++ string class. We don't pretend that ROSE works with any C++ compiler that does not have the C++ string class available (fortunately all of them do now).

Authors
Quinlan, Schordan, Yi
Version
0.5
Date
Dec 16th 2002
Bug:
Not finished yet.
Warning
Don't use this until it is ready.
Todo:
Finish documentation!
Note
Large parts of documentation contained in ROSE/util/utilDocumentation.docs.

This class simplifies the use of strings in the rest of the ROSE project.

This class has several member functions that could be simplified now that we use the C++ std::string class uniformally (except for places where we still use char*). We used to use the Sun C++ 4.2 compiler (the only compiler that SAGE II used to work with) and there we didn't have access to C++ strings. Later we moved to the use of a string class similar to the C++ string class and in 2002 we moved to the use of the C++ string class. We don't pretend that ROSE works with any C++ compiler that does not have the C++ string class available (fortunately all of them do now).

Authors
Quinlan, Schordan, Yi
Version
0.5
Date
Dec 16th 2002
Bug:
Not finished yet.
Warning
Don't use this until it is ready.
Todo:
Finish documentation!
Note
Large parts of documentation contained in ROSE/util/utilDocumentation.docs.

This class simplifies the use of strings in the rest of the ROSE project.

This class has several member functions that could be simplified now that we use the C++ std::string class uniformally (except for places where we still use char*). We used to use the Sun C++ 4.2 compiler (the only compiler that SAGE II used to work with) and there we didn't have access to C++ strings. Later we moved to the use of a string class similar to the C++ string class and in 2002 we moved to the use of the C++ string class. We don't pretend that ROSE works with any C++ compiler that does not have the C++ string class available (fortunately all of them do now).

Member Typedef Documentation

typedef std::vector<StringWithLineNumber> StringUtility::FileWithLineNumbers

Definition at line 49 of file string_functions.h.

typedef std::string StringUtility::FileNameLibrary

Definition at line 316 of file string_functions.h.

Member Enumeration Documentation

Enumerator
OS_TYPE_UNKNOWN 
OS_TYPE_LINUX 
OS_TYPE_OSX 
OS_TYPE_WINDOWS 
OS_TPYE_WINDOWSXP 

Definition at line 263 of file string_functions.h.

Enumerator
FILENAME_LOCATION_UNKNOWN 
FILENAME_LOCATION_USER 
FILENAME_LOCATION_LIBRARY 
FILENAME_LOCATION_NOT_EXIST 

Definition at line 281 of file string_functions.h.

Member Data Documentation

const std::string StringUtility::FILENAME_LIBRARY_UNKNOWN = "Unknown"
static

Definition at line 305 of file string_functions.h.

const std::string StringUtility::FILENAME_LIBRARY_USER = "User"
static

Definition at line 306 of file string_functions.h.

const std::string StringUtility::FILENAME_LIBRARY_C = "C"
static

Definition at line 307 of file string_functions.h.

const std::string StringUtility::FILENAME_LIBRARY_STDCXX = "C++"
static

Definition at line 308 of file string_functions.h.

const std::string StringUtility::FILENAME_LIBRARY_STL = "STL"
static

Definition at line 309 of file string_functions.h.

const std::string StringUtility::FILENAME_LIBRARY_LINUX = "Linux"
static

Definition at line 310 of file string_functions.h.

const std::string StringUtility::FILENAME_LIBRARY_GCC = "GCC"
static

Definition at line 311 of file string_functions.h.

const std::string StringUtility::FILENAME_LIBRARY_BOOST = "Boost"
static

Definition at line 312 of file string_functions.h.

const std::string StringUtility::FILENAME_LIBRARY_ROSE = "Rose"
static

Definition at line 313 of file string_functions.h.


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