37 { initSep( separ ); initRep( escapedstr ); }
39 : rep_(ss.rep_) { initSep( ss.
sep_[0] ); }
41 SeparString&
operator=(
const SeparString&);
42 SeparString&
operator=(
const char* escapedstr);
44 inline bool isEmpty()
const {
return rep_.isEmpty(); }
51 int getIValue(
int)
const;
55 float getFValue(
int)
const;
56 double getDValue(
int)
const;
57 bool getYN(
int)
const;
59 int indexOf(
const char* unescapedstr)
const;
62 SeparString& add(
const SeparString&);
63 SeparString& add(
const DBKey&);
64 SeparString& add(
const char* unescapedstr);
66 {
return add( ods.
buf() ); }
68 inline SeparString&
add( T t )
73 SeparString&
set(
const SeparString& s )
75 SeparString&
set(
const char* unescapedstr )
76 {
setEmpty();
return add( unescapedstr ); }
78 {
return set( ods.buf() ); }
80 inline SeparString&
set( T t )
84 inline SeparString& operator +=( T t ) {
return add( t ); }
87 {
return add( ods.
buf() ); }
89 inline operator const char*()
const 92 inline char*
getCStr() {
return rep_.getCStr(); }
94 inline const char*
buf()
const {
return rep_.buf(); }
101 inline const char*
unescapedStr()
const {
return getUnescaped(buf()); }
106 inline const char*
sepStr()
const {
return sep_; }
107 void setSepChar(
char);
114 void initRep(
const char*);
115 inline void initSep(
char s ) { sep_[0] = s; sep_[1] =
'\0'; }
119 const char* getEscaped(
const char* unescapedstr,
char sep)
const;
120 const char* getUnescaped(
const char* escapedstartptr,
121 const char* nextsep=0)
const;
123 const char* findSeparator(
const char*)
const;
136 : SeparString(escapedstr, separator() ) {}
138 const char* s3=0,
const char*s4=0);
140 : SeparString(t,separator()) {}
148 {
return add( (SeparString&)fms ); }
149 template <
class T>
inline 152 {
return add( ods.
buf() ); }
154 template <
class T>
inline 158 {
return add( ods.
buf() ); }
#define mExpClass(module)
Definition: commondefs.h:157
FileMultiString(const T &t)
Definition: separstr.h:139
char sep_[2]
Definition: separstr.h:111
BufferString rep_
Definition: separstr.h:112
const OD::String & rep() const
Output escaped.
Definition: separstr.h:98
OD::String that holds an existing text string.
Definition: fixedstring.h:27
#define od_int64
Definition: plftypes.h:34
SeparString & add(const BufferStringSet &)
Concatenation.
List encoded in a string.
Definition: separstr.h:32
Set of BufferString objects.
Definition: bufstringset.h:25
ObjectSet< T >::size_type indexOf(const ObjectSet< T > &os, const S &val)
Locate object in set.
Definition: objectset.h:173
FileMultiString(const char *escapedstr=0)
Definition: separstr.h:135
SeparString(const char *escapedstr=0, char separ=',')
Definition: separstr.h:36
SeparString with backquotes as separators, use in most ascii files.
Definition: separstr.h:131
SeparString & add(T t)
Definition: separstr.h:68
static char separator()
Definition: separstr.h:142
char sepChar() const
Definition: separstr.h:105
#define od_uint32
Definition: plftypes.h:30
BufferString retstr_
Definition: separstr.h:117
void setEmpty()
Definition: dbkey.h:83
encapsulates the read-access-only part of strings in OD.
Definition: odstring.h:29
char * getCStr()
Output escaped.
Definition: separstr.h:92
FileMultiString & add(const FileMultiString &fms)
Definition: separstr.h:147
SeparString & add(const OD::String &ods)
Definition: separstr.h:65
BufferString toString(const DBKey &ky)
Definition: dbkey.h:115
const char * buf() const
Definition: odstring.h:45
const char * unescapedStr() const
Definition: separstr.h:101
const char * sepStr() const
Definition: separstr.h:106
#define od_uint64
Definition: plftypes.h:35
bool isEmpty() const
Definition: separstr.h:44
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
FileMultiString & add(T t)
Definition: separstr.h:155
const char * buf() const
Output escaped.
Definition: separstr.h:94
void setEmpty()
Definition: separstr.h:45
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
void initSep(char s)
Definition: separstr.h:115
FileMultiString & add(const OD::String &ods)
Definition: separstr.h:157
DBKey & operator=(const DBKey &)
BufferString & rep()
Output escaped.
Definition: separstr.h:96
SeparString(const SeparString &ss)
Definition: separstr.h:38