Export basic classes instead of exporting only their methods.

This commit is contained in:
castano
2008-01-17 05:32:50 +00:00
parent 7bf3927635
commit f76e76cbe6
5 changed files with 65 additions and 66 deletions

View File

@ -39,39 +39,39 @@ namespace nv
/// String builder.
class StringBuilder
class NVCORE_CLASS StringBuilder
{
public:
NVCORE_API StringBuilder();
NVCORE_API explicit StringBuilder( int size_hint );
NVCORE_API StringBuilder( const char * str );
NVCORE_API StringBuilder( const StringBuilder & );
NVCORE_API StringBuilder( int size_hint, const StringBuilder & );
NVCORE_API StringBuilder( const char * format, ... ) __attribute__((format (printf, 2, 3)));
NVCORE_API StringBuilder( int size_hint, const char * format, ... ) __attribute__((format (printf, 3, 4)));
StringBuilder();
explicit StringBuilder( int size_hint );
StringBuilder( const char * str );
StringBuilder( const StringBuilder & );
StringBuilder( int size_hint, const StringBuilder & );
StringBuilder( const char * format, ... ) __attribute__((format (printf, 2, 3)));
StringBuilder( int size_hint, const char * format, ... ) __attribute__((format (printf, 3, 4)));
NVCORE_API ~StringBuilder();
~StringBuilder();
NVCORE_API StringBuilder & format( const char * format, ... ) __attribute__((format (printf, 2, 3)));
NVCORE_API StringBuilder & format( const char * format, va_list arg );
StringBuilder & format( const char * format, ... ) __attribute__((format (printf, 2, 3)));
StringBuilder & format( const char * format, va_list arg );
NVCORE_API StringBuilder & append( const char * str );
NVCORE_API StringBuilder & appendFormat( const char * format, ... ) __attribute__((format (printf, 2, 3)));
NVCORE_API StringBuilder & appendFormat( const char * format, va_list arg );
StringBuilder & append( const char * str );
StringBuilder & appendFormat( const char * format, ... ) __attribute__((format (printf, 2, 3)));
StringBuilder & appendFormat( const char * format, va_list arg );
NVCORE_API StringBuilder & number( int i, int base = 10 );
NVCORE_API StringBuilder & number( uint i, int base = 10 );
StringBuilder & number( int i, int base = 10 );
StringBuilder & number( uint i, int base = 10 );
NVCORE_API StringBuilder & reserve( uint size_hint );
NVCORE_API StringBuilder & copy( const char * str );
NVCORE_API StringBuilder & copy( const StringBuilder & str );
StringBuilder & reserve( uint size_hint );
StringBuilder & copy( const char * str );
StringBuilder & copy( const StringBuilder & str );
NVCORE_API StringBuilder & toLower();
NVCORE_API StringBuilder & toUpper();
StringBuilder & toLower();
StringBuilder & toUpper();
NVCORE_API void reset();
NVCORE_API bool isNull() const { return m_size == 0; }
void reset();
bool isNull() const { return m_size == 0; }
// const char * accessors
operator const char * () const { return m_str; }
@ -123,35 +123,33 @@ namespace nv
/// Path string.
class Path : public StringBuilder
class NVCORE_CLASS Path : public StringBuilder
{
public:
Path() : StringBuilder() {}
explicit Path(int size_hint) : StringBuilder(size_hint) {}
Path(const StringBuilder & str) : StringBuilder(str) {}
Path(int size_hint, const StringBuilder & str) : StringBuilder(size_hint, str) {}
NVCORE_API Path(const char * format, ...) __attribute__((format (printf, 2, 3)));
NVCORE_API Path(int size_hint, const char * format, ...) __attribute__((format (printf, 3, 4)));
Path(const char * format, ...) __attribute__((format (printf, 2, 3)));
Path(int size_hint, const char * format, ...) __attribute__((format (printf, 3, 4)));
const char * fileName() const;
const char * extension() const;
NVCORE_API const char * fileName() const;
NVCORE_API const char * extension() const;
void translatePath();
NVCORE_API void translatePath();
NVCORE_API void stripFileName();
NVCORE_API void stripExtension();
void stripFileName();
void stripExtension();
// statics
NVCORE_API static char separator();
NVCORE_API static const char * fileName(const char *);
NVCORE_API static const char * extension(const char *);
};
/// String class.
class String
class NVCORE_CLASS String
{
public:
@ -194,7 +192,7 @@ namespace nv
release();
}
NVCORE_API String clone() const;
String clone() const;
/// Release the current string and allocate a new one.
const String & operator=( const char * str )
@ -334,9 +332,9 @@ namespace nv
const_cast<char *>(data)[len] = '\0';
}
NVCORE_API void setString(const char * str);
NVCORE_API void setString(const char * str, int length);
NVCORE_API void setString(const StringBuilder & str);
void setString(const char * str);
void setString(const char * str, int length);
void setString(const StringBuilder & str);
/// Swap strings.
friend void swap(String & a, String & b) {