summaryrefslogtreecommitdiffstats
path: root/gnu/lib/libg++/include/String.h
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/lib/libg++/include/String.h')
-rw-r--r--gnu/lib/libg++/include/String.h216
1 files changed, 108 insertions, 108 deletions
diff --git a/gnu/lib/libg++/include/String.h b/gnu/lib/libg++/include/String.h
index 95b2bdf..7a3d82b 100644
--- a/gnu/lib/libg++/include/String.h
+++ b/gnu/lib/libg++/include/String.h
@@ -1,5 +1,5 @@
// This may look like C code, but it is really -*- C++ -*-
-/*
+/*
Copyright (C) 1988 Free Software Foundation
written by Doug Lea (dl@rocky.oswego.edu)
@@ -28,9 +28,9 @@ Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
struct StrRep // internal String representations
{
- unsigned short len; // string length
+ unsigned short len; // string length
unsigned short sz; // allocated space
- char s[1]; // the string starts here
+ char s[1]; // the string starts here
// (at least 1 char for trailing null)
// allocated & expanded via non-public fcts
};
@@ -89,7 +89,7 @@ public:
int matches(const Regex& r) const;
-// IO
+// IO
friend ostream& operator<<(ostream& s, const SubString& x);
@@ -99,7 +99,7 @@ public:
int empty() const;
const char* chars() const;
- int OK() const;
+ int OK() const;
};
@@ -140,12 +140,12 @@ public:
// concatenation
- String& operator += (const String& y);
+ String& operator += (const String& y);
String& operator += (const SubString& y);
String& operator += (const char* t);
String& operator += (char c);
- void prepend(const String& y);
+ void prepend(const String& y);
void prepend(const SubString& y);
void prepend(const char* t);
void prepend(char c);
@@ -169,7 +169,7 @@ public:
friend inline void cat(const char*, const char*, String&);
friend inline void cat(const char*, char, String&);
-// double concatenation, by request. (yes, there are too many versions,
+// double concatenation, by request. (yes, there are too many versions,
// but if one is supported, then the others should be too...)
// Concatenate first 3 args, store in last arg
@@ -204,11 +204,11 @@ public:
// return position of target in string or -1 for failure
- int index(char c, int startpos = 0) const;
- int index(const String& y, int startpos = 0) const;
- int index(const SubString& y, int startpos = 0) const;
- int index(const char* t, int startpos = 0) const;
- int index(const Regex& r, int startpos = 0) const;
+ int index(char c, int startpos = 0) const;
+ int index(const String& y, int startpos = 0) const;
+ int index(const SubString& y, int startpos = 0) const;
+ int index(const char* t, int startpos = 0) const;
+ int index(const Regex& r, int startpos = 0) const;
// return 1 if target appears anyhere in String; else 0
@@ -218,7 +218,7 @@ public:
int contains(const char* t) const;
int contains(const Regex& r) const;
-// return 1 if target appears anywhere after position pos
+// return 1 if target appears anywhere after position pos
// (or before, if pos is negative) in String; else 0
int contains(char c, int pos) const;
@@ -237,7 +237,7 @@ public:
// return number of occurences of target in String
- int freq(char c) const;
+ int freq(char c) const;
int freq(const String& y) const;
int freq(const SubString& y) const;
int freq(const char* t) const;
@@ -251,11 +251,11 @@ public:
SubString at(int pos, int len);
SubString operator () (int pos, int len); // synonym for at
- SubString at(const String& x, int startpos = 0);
- SubString at(const SubString& x, int startpos = 0);
+ SubString at(const String& x, int startpos = 0);
+ SubString at(const SubString& x, int startpos = 0);
SubString at(const char* t, int startpos = 0);
SubString at(char c, int startpos = 0);
- SubString at(const Regex& r, int startpos = 0);
+ SubString at(const Regex& r, int startpos = 0);
SubString before(int pos);
SubString before(const String& x, int startpos = 0);
@@ -311,14 +311,14 @@ public:
// split string into array res at separators; return number of elements
- friend int split(const String& x, String res[], int maxn,
+ friend int split(const String& x, String res[], int maxn,
const String& sep);
- friend int split(const String& x, String res[], int maxn,
+ friend int split(const String& x, String res[], int maxn,
const Regex& sep);
- friend String common_prefix(const String& x, const String& y,
+ friend String common_prefix(const String& x, const String& y,
int startpos = 0);
- friend String common_suffix(const String& x, const String& y,
+ friend String common_suffix(const String& x, const String& y,
int startpos = -1);
friend String replicate(char c, int n);
friend String replicate(const String& y, int n);
@@ -358,7 +358,7 @@ public:
friend ostream& operator<<(ostream& s, const SubString& x);
friend istream& operator>>(istream& s, String& x);
- friend int readline(istream& s, String& x,
+ friend int readline(istream& s, String& x,
char terminator = '\n',
int discard_terminator = 1);
@@ -409,17 +409,17 @@ inline const char* SubString::chars() const { return &(S.rep->s[pos]); }
// constructors
-inline String::String()
+inline String::String()
: rep(&_nilStrRep) {}
-inline String::String(const String& x)
+inline String::String(const String& x)
: rep(Scopy(0, x.rep)) {}
-inline String::String(const char* t)
+inline String::String(const char* t)
: rep(Salloc(0, t, -1, -1)) {}
inline String::String(const char* t, int tlen)
: rep(Salloc(0, t, tlen, tlen)) {}
inline String::String(const SubString& y)
: rep(Salloc(0, y.chars(), y.length(), y.length())) {}
-inline String::String(char c)
+inline String::String(char c)
: rep(Salloc(0, &c, 1, 1)) {}
inline String::~String() { if (rep != &_nilStrRep) delete rep; }
@@ -434,7 +434,7 @@ inline SubString::~SubString() {}
// assignment
inline String& String::operator = (const String& y)
-{
+{
rep = Scopy(rep, y.rep);
return *this;
}
@@ -773,67 +773,67 @@ inline String operator + (const String& x, const String& y)
String r; cat(x, y, r); return r;
}
-inline String operator + (const String& x, const SubString& y)
+inline String operator + (const String& x, const SubString& y)
{
String r; cat(x, y, r); return r;
}
-inline String operator + (const String& x, const char* y)
+inline String operator + (const String& x, const char* y)
{
String r; cat(x, y, r); return r;
}
-inline String operator + (const String& x, char y)
+inline String operator + (const String& x, char y)
{
String r; cat(x, y, r); return r;
}
-inline String operator + (const SubString& x, const String& y)
+inline String operator + (const SubString& x, const String& y)
{
String r; cat(x, y, r); return r;
}
-inline String operator + (const SubString& x, const SubString& y)
+inline String operator + (const SubString& x, const SubString& y)
{
String r; cat(x, y, r); return r;
}
-inline String operator + (const SubString& x, const char* y)
+inline String operator + (const SubString& x, const char* y)
{
String r; cat(x, y, r); return r;
}
-inline String operator + (const SubString& x, char y)
+inline String operator + (const SubString& x, char y)
{
String r; cat(x, y, r); return r;
}
-inline String operator + (const char* x, const String& y)
+inline String operator + (const char* x, const String& y)
{
String r; cat(x, y, r); return r;
}
-inline String operator + (const char* x, const SubString& y)
+inline String operator + (const char* x, const SubString& y)
{
String r; cat(x, y, r); return r;
}
-inline String reverse(const String& x)
+inline String reverse(const String& x)
{
String r; r.rep = Sreverse(x.rep, r.rep); return r;
}
-inline String upcase(const String& x)
+inline String upcase(const String& x)
{
String r; r.rep = Supcase(x.rep, r.rep); return r;
}
-inline String downcase(const String& x)
+inline String downcase(const String& x)
{
String r; r.rep = Sdowncase(x.rep, r.rep); return r;
}
-inline String capitalize(const String& x)
+inline String capitalize(const String& x)
{
String r; r.rep = Scapitalize(x.rep, r.rep); return r;
}
@@ -849,12 +849,12 @@ inline void String::prepend(const String& y)
inline void String::prepend(const char* y)
{
- rep = Sprepend(rep, y, -1);
+ rep = Sprepend(rep, y, -1);
}
inline void String::prepend(char y)
{
- rep = Sprepend(rep, &y, 1);
+ rep = Sprepend(rep, &y, 1);
}
inline void String::prepend(const SubString& y)
@@ -890,31 +890,31 @@ inline void String::capitalize()
// element extraction
-inline char& String::operator [] (int i)
-{
+inline char& String::operator [] (int i)
+{
if (((unsigned)i) >= length()) error("invalid index");
return rep->s[i];
}
inline const char& String::operator [] (int i) const
-{
+{
if (((unsigned)i) >= length()) error("invalid index");
return rep->s[i];
}
inline char String::elem (int i) const
-{
+{
if (((unsigned)i) >= length()) error("invalid index");
return rep->s[i];
}
inline char String::firstchar() const
-{
+{
return elem(0);
}
inline char String::lastchar() const
-{
+{
return elem(length() - 1);
}
@@ -926,17 +926,17 @@ inline int String::index(char c, int startpos) const
}
inline int String::index(const char* t, int startpos) const
-{
+{
return search(startpos, length(), t);
}
inline int String::index(const String& y, int startpos) const
-{
+{
return search(startpos, length(), y.chars(), y.length());
}
inline int String::index(const SubString& y, int startpos) const
-{
+{
return search(startpos, length(), y.chars(), y.length());
}
@@ -951,17 +951,17 @@ inline int String::contains(char c) const
}
inline int String::contains(const char* t) const
-{
+{
return search(0, length(), t) >= 0;
}
inline int String::contains(const String& y) const
-{
+{
return search(0, length(), y.chars(), y.length()) >= 0;
}
inline int String::contains(const SubString& y) const
-{
+{
return search(0, length(), y.chars(), y.length()) >= 0;
}
@@ -1024,17 +1024,17 @@ inline int String::matches(const Regex& r, int p) const
inline int SubString::contains(const char* t) const
-{
+{
return S.search(pos, pos+len, t) >= 0;
}
inline int SubString::contains(const String& y) const
-{
+{
return S.search(pos, pos+len, y.chars(), y.length()) >= 0;
}
inline int SubString::contains(const SubString& y) const
-{
+{
return S.search(pos, pos+len, y.chars(), y.length()) >= 0;
}
@@ -1088,99 +1088,99 @@ inline ostream& operator<<(ostream& s, const String& x)
// a zillion comparison operators
-inline int operator==(const String& x, const String& y)
+inline int operator==(const String& x, const String& y)
{
- return compare(x, y) == 0;
+ return compare(x, y) == 0;
}
inline int operator!=(const String& x, const String& y)
{
- return compare(x, y) != 0;
+ return compare(x, y) != 0;
}
inline int operator>(const String& x, const String& y)
{
- return compare(x, y) > 0;
+ return compare(x, y) > 0;
}
inline int operator>=(const String& x, const String& y)
{
- return compare(x, y) >= 0;
+ return compare(x, y) >= 0;
}
inline int operator<(const String& x, const String& y)
{
- return compare(x, y) < 0;
+ return compare(x, y) < 0;
}
inline int operator<=(const String& x, const String& y)
{
- return compare(x, y) <= 0;
+ return compare(x, y) <= 0;
}
-inline int operator==(const String& x, const SubString& y)
+inline int operator==(const String& x, const SubString& y)
{
- return compare(x, y) == 0;
+ return compare(x, y) == 0;
}
inline int operator!=(const String& x, const SubString& y)
{
- return compare(x, y) != 0;
+ return compare(x, y) != 0;
}
-inline int operator>(const String& x, const SubString& y)
+inline int operator>(const String& x, const SubString& y)
{
- return compare(x, y) > 0;
+ return compare(x, y) > 0;
}
inline int operator>=(const String& x, const SubString& y)
{
- return compare(x, y) >= 0;
+ return compare(x, y) >= 0;
}
-inline int operator<(const String& x, const SubString& y)
+inline int operator<(const String& x, const SubString& y)
{
- return compare(x, y) < 0;
+ return compare(x, y) < 0;
}
inline int operator<=(const String& x, const SubString& y)
{
- return compare(x, y) <= 0;
+ return compare(x, y) <= 0;
}
-inline int operator==(const String& x, const char* t)
+inline int operator==(const String& x, const char* t)
{
- return compare(x, t) == 0;
+ return compare(x, t) == 0;
}
-inline int operator!=(const String& x, const char* t)
+inline int operator!=(const String& x, const char* t)
{
- return compare(x, t) != 0;
+ return compare(x, t) != 0;
}
-inline int operator>(const String& x, const char* t)
+inline int operator>(const String& x, const char* t)
{
- return compare(x, t) > 0;
+ return compare(x, t) > 0;
}
-inline int operator>=(const String& x, const char* t)
+inline int operator>=(const String& x, const char* t)
{
- return compare(x, t) >= 0;
+ return compare(x, t) >= 0;
}
-inline int operator<(const String& x, const char* t)
+inline int operator<(const String& x, const char* t)
{
- return compare(x, t) < 0;
+ return compare(x, t) < 0;
}
-inline int operator<=(const String& x, const char* t)
+inline int operator<=(const String& x, const char* t)
{
- return compare(x, t) <= 0;
+ return compare(x, t) <= 0;
}
-inline int operator==(const SubString& x, const String& y)
+inline int operator==(const SubString& x, const String& y)
{
- return compare(y, x) == 0;
+ return compare(y, x) == 0;
}
inline int operator!=(const SubString& x, const String& y)
@@ -1188,29 +1188,29 @@ inline int operator!=(const SubString& x, const String& y)
return compare(y, x) != 0;
}
-inline int operator>(const SubString& x, const String& y)
+inline int operator>(const SubString& x, const String& y)
{
return compare(y, x) < 0;
}
-inline int operator>=(const SubString& x, const String& y)
+inline int operator>=(const SubString& x, const String& y)
{
return compare(y, x) <= 0;
}
-inline int operator<(const SubString& x, const String& y)
+inline int operator<(const SubString& x, const String& y)
{
return compare(y, x) > 0;
}
-inline int operator<=(const SubString& x, const String& y)
+inline int operator<=(const SubString& x, const String& y)
{
return compare(y, x) >= 0;
}
-inline int operator==(const SubString& x, const SubString& y)
+inline int operator==(const SubString& x, const SubString& y)
{
- return compare(x, y) == 0;
+ return compare(x, y) == 0;
}
inline int operator!=(const SubString& x, const SubString& y)
@@ -1218,7 +1218,7 @@ inline int operator!=(const SubString& x, const SubString& y)
return compare(x, y) != 0;
}
-inline int operator>(const SubString& x, const SubString& y)
+inline int operator>(const SubString& x, const SubString& y)
{
return compare(x, y) > 0;
}
@@ -1228,7 +1228,7 @@ inline int operator>=(const SubString& x, const SubString& y)
return compare(x, y) >= 0;
}
-inline int operator<(const SubString& x, const SubString& y)
+inline int operator<(const SubString& x, const SubString& y)
{
return compare(x, y) < 0;
}
@@ -1238,34 +1238,34 @@ inline int operator<=(const SubString& x, const SubString& y)
return compare(x, y) <= 0;
}
-inline int operator==(const SubString& x, const char* t)
+inline int operator==(const SubString& x, const char* t)
{
- return compare(x, t) == 0;
+ return compare(x, t) == 0;
}
-inline int operator!=(const SubString& x, const char* t)
+inline int operator!=(const SubString& x, const char* t)
{
return compare(x, t) != 0;
}
-inline int operator>(const SubString& x, const char* t)
+inline int operator>(const SubString& x, const char* t)
{
- return compare(x, t) > 0;
+ return compare(x, t) > 0;
}
-inline int operator>=(const SubString& x, const char* t)
+inline int operator>=(const SubString& x, const char* t)
{
- return compare(x, t) >= 0;
+ return compare(x, t) >= 0;
}
-inline int operator<(const SubString& x, const char* t)
+inline int operator<(const SubString& x, const char* t)
{
- return compare(x, t) < 0;
+ return compare(x, t) < 0;
}
-inline int operator<=(const SubString& x, const char* t)
+inline int operator<=(const SubString& x, const char* t)
{
- return compare(x, t) <= 0;
+ return compare(x, t) <= 0;
}
@@ -1275,7 +1275,7 @@ inline SubString String::_substr(int first, int l)
{
if (first < 0 || (unsigned)(first + l) > length() )
return SubString(_nilString, 0, 0) ;
- else
+ else
return SubString(*this, first, l);
}
OpenPOWER on IntegriCloud