17#ifndef _FL_Fl_String_H_
18#define _FL_Fl_String_H_
30#include <FL/Fl_Export.H>
60class FL_EXPORT Fl_String {
74 Fl_String &replace_(
int at,
int n_del,
const char *src,
int n_ins);
77 static const char NUL;
80 static const int npos;
84 Fl_String(
const Fl_String &str);
85 Fl_String(
const char *cstr);
86 Fl_String(
const char *str,
int size);
88 Fl_String& operator=(
const Fl_String &str);
89 Fl_String& operator=(
const char *cstr);
90 Fl_String &assign(
const Fl_String &str);
91 Fl_String &assign(
const char *cstr);
92 Fl_String &assign(
const char *str,
int size);
95 char at(
int pos)
const;
96 char operator[](
int n)
const;
97 char &operator[](
int n);
98 const char *data()
const;
100 const char *c_str()
const;
106 int capacity()
const;
107 void shrink_to_fit();
111 Fl_String &insert(
int at,
const char *src,
int n_ins=npos);
112 Fl_String &insert(
int at,
const Fl_String &src);
113 Fl_String &erase(
int at,
int n_del);
114 void push_back(
char c);
116 Fl_String &append(
const char *src,
int n_ins=npos);
117 Fl_String &append(
const Fl_String &src);
118 Fl_String &append(
char c);
119 Fl_String &operator+=(
const char *src);
120 Fl_String &operator+=(
const Fl_String &src);
121 Fl_String &operator+=(
char c);
122 int find(
const Fl_String &needle,
int start_pos=0)
const;
123 Fl_String &replace(
int at,
int n_del,
const char *src,
int n_ins=npos);
124 Fl_String &replace(
int at,
int n_del,
const Fl_String &src);
125 Fl_String substr(
int pos=0,
int n=npos)
const;
130 void debug(
const char *info = 0)
const;
131 void hexdump(
const char *info = 0)
const;
135FL_EXPORT Fl_String operator+(
const Fl_String& lhs,
const Fl_String& rhs);
136FL_EXPORT Fl_String operator+(
const Fl_String& lhs,
const char* rhs);
137FL_EXPORT
bool operator==(
const Fl_String & lhs,
const Fl_String & rhs);
138FL_EXPORT
bool operator!=(
const Fl_String & lhs,
const Fl_String & rhs);