Logo ROOT  
Reference Guide
TString.cxx File Reference
#include <ROOT/RConfig.hxx>
#include <stdlib.h>
#include <ctype.h>
#include <list>
#include <algorithm>
#include "Varargs.h"
#include "TString.h"
#include "TBuffer.h"
#include "TError.h"
#include "Bytes.h"
#include "TClass.h"
#include "TMD5.h"
#include "TObjArray.h"
#include "TObjString.h"
#include "TVirtualMutex.h"
#include "ThreadLocalStorage.h"
#include <stdint.h>
Include dependency graph for TString.cxx:

Macros

#define BIG_CONSTANT(x)   (x##LLU)
 
#define ROTL64(x, y)   rotl64(x,y)
 

Functions

char * Compress (const char *str)
 Remove all blanks from the string str. More...
 
int EscChar (const char *src, char *dst, int dstlen, char *specchars, char escchar)
 Escape specchars in src with escchar and copy to dst. More...
 
char * Form (const char *va_(fmt),...)
 Formats a string in a circular formatting buffer. More...
 
static char * Format (const char *format, va_list ap)
 Format a string in a circular formatting buffer (using a printf style format descriptor). More...
 
UInt_t Hash (const char *str)
 Return a case-sensitive hash value (endian independent). More...
 
static void Mash (UInt_t &hash, UInt_t chars)
 Utility used by Hash(). More...
 
static int MemIsEqual (const char *p, const char *q, Ssiz_t n)
 Returns false if strings are not equal. More...
 
TString operator+ (char c, const TString &s)
 Add string to char. More...
 
TString operator+ (const char *cs, const TString &s)
 Use the special concatenation constructor. More...
 
TString operator+ (const TString &s, char c)
 Add char to string. More...
 
TString operator+ (const TString &s, const char *cs)
 Use the special concatenation constructor. More...
 
TString operator+ (const TString &s1, const TString &s2)
 Use the special concatenation constructor. More...
 
TBufferoperator<< (TBuffer &buf, const TString *s)
 Write TString or derived to TBuffer. More...
 
Bool_t operator== (const TString &s1, const char *s2)
 Compare TString with a char *. More...
 
Bool_t operator== (const TSubString &s1, const TSubString &s2)
 Compare two sub-strings. More...
 
Bool_t operator== (const TSubString &ss, const char *cs)
 Compare sub-string to char *. More...
 
Bool_t operator== (const TSubString &ss, const TString &s)
 Compare sub-string to string. More...
 
TBufferoperator>> (TBuffer &buf, TString *&s)
 Read string from TBuffer. Function declared in ClassDef. More...
 
void Printf (const char *va_(fmt),...)
 Formats a string in a circular formatting buffer and prints the string. More...
 
uint64_t rotl64 (uint64_t x, int8_t r)
 
static char * SlowFormat (const char *format, va_list ap, int hint)
 Format a string in a formatting buffer (using a printf style format descriptor). More...
 
char * StrDup (const char *str)
 Duplicate the string str. More...
 
char * Strip (const char *s, char c)
 Strip leading and trailing c (blanks by default) from a string. More...
 
static UInt_t SwapInt (UInt_t x)
 
TString ToLower (const TString &str)
 Return a lower-case version of str. More...
 
TString ToUpper (const TString &str)
 Return an upper-case version of str. More...
 
int UnEscChar (const char *src, char *dst, int dstlen, char *specchars, char)
 Un-escape specchars in src from escchar and copy to dst. More...
 

Variables

const UInt_t kHashShift = 5
 

Macro Definition Documentation

◆ BIG_CONSTANT

#define BIG_CONSTANT (   x)    (x##LLU)

Definition at line 687 of file TString.cxx.

◆ ROTL64

#define ROTL64 (   x,
  y 
)    rotl64(x,y)

Definition at line 686 of file TString.cxx.

Function Documentation

◆ Compress()

char * Compress ( const char *  str)

Remove all blanks from the string str.

The returned string has to be deleted by the user.

Definition at line 2504 of file TString.cxx.

◆ EscChar()

int EscChar ( const char *  src,
char *  dst,
int  dstlen,
char *  specchars,
char  escchar 
)

Escape specchars in src with escchar and copy to dst.

Definition at line 2525 of file TString.cxx.

◆ Form()

char * Form ( const char *  va_fmt,
  ... 
)

Formats a string in a circular formatting buffer.

Removes the need to create and delete short lived strings. Don't pass Form() pointers from user code down to ROOT functions as the circular buffer may be overwritten downstream. Use Form() results immediately or use TString::Format() instead.

Definition at line 2422 of file TString.cxx.

◆ Format()

static char * Format ( const char *  format,
va_list  ap 
)
static

Format a string in a circular formatting buffer (using a printf style format descriptor).

Definition at line 2375 of file TString.cxx.

◆ Hash()

UInt_t Hash ( const char *  str)

Return a case-sensitive hash value (endian independent).

Definition at line 537 of file TString.cxx.

◆ Mash()

static void Mash ( UInt_t hash,
UInt_t  chars 
)
inlinestatic

Utility used by Hash().

Definition at line 527 of file TString.cxx.

◆ MemIsEqual()

static int MemIsEqual ( const char *  p,
const char *  q,
Ssiz_t  n 
)
static

Returns false if strings are not equal.

Definition at line 846 of file TString.cxx.

◆ operator+() [1/5]

TString operator+ ( char  c,
const TString s 
)

Add string to char.

Definition at line 1490 of file TString.cxx.

◆ operator+() [2/5]

TString operator+ ( const char *  cs,
const TString s 
)

Use the special concatenation constructor.

Definition at line 1466 of file TString.cxx.

◆ operator+() [3/5]

TString operator+ ( const TString s,
char  c 
)

Add char to string.

Definition at line 1482 of file TString.cxx.

◆ operator+() [4/5]

TString operator+ ( const TString s,
const char *  cs 
)

Use the special concatenation constructor.

Definition at line 1458 of file TString.cxx.

◆ operator+() [5/5]

TString operator+ ( const TString s1,
const TString s2 
)

Use the special concatenation constructor.

Definition at line 1474 of file TString.cxx.

◆ operator<<()

TBuffer & operator<< ( TBuffer buf,
const TString s 
)

Write TString or derived to TBuffer.

Definition at line 1403 of file TString.cxx.

◆ operator==() [1/4]

Bool_t operator== ( const TString s1,
const char *  s2 
)

Compare TString with a char *.

Definition at line 1415 of file TString.cxx.

◆ operator==() [2/4]

Bool_t operator== ( const TSubString s1,
const TSubString s2 
)

Compare two sub-strings.

Definition at line 1664 of file TString.cxx.

◆ operator==() [3/4]

Bool_t operator== ( const TSubString ss,
const char *  cs 
)

Compare sub-string to char *.

Definition at line 1640 of file TString.cxx.

◆ operator==() [4/4]

Bool_t operator== ( const TSubString ss,
const TString s 
)

Compare sub-string to string.

Definition at line 1654 of file TString.cxx.

◆ operator>>()

TBuffer & operator>> ( TBuffer buf,
TString *&  s 
)

Read string from TBuffer. Function declared in ClassDef.

Definition at line 1394 of file TString.cxx.

◆ Printf()

void Printf ( const char *  va_fmt,
  ... 
)

Formats a string in a circular formatting buffer and prints the string.

Appends a newline. If gPrintViaErrorHandler is true it will print via the currently active ROOT error handler.

Definition at line 2436 of file TString.cxx.

◆ rotl64()

uint64_t rotl64 ( uint64_t  x,
int8_t  r 
)
inline

Definition at line 681 of file TString.cxx.

◆ SlowFormat()

static char * SlowFormat ( const char *  format,
va_list  ap,
int  hint 
)
static

Format a string in a formatting buffer (using a printf style format descriptor).

Definition at line 2327 of file TString.cxx.

◆ StrDup()

char * StrDup ( const char *  str)

Duplicate the string str.

The returned string has to be deleted by the user.

Definition at line 2490 of file TString.cxx.

◆ Strip()

char * Strip ( const char *  s,
char  c 
)

Strip leading and trailing c (blanks by default) from a string.

The returned string has to be deleted by the user.

Definition at line 2454 of file TString.cxx.

◆ SwapInt()

static UInt_t SwapInt ( UInt_t  x)
inlinestatic

Definition at line 517 of file TString.cxx.

◆ ToLower()

TString ToLower ( const TString str)

Return a lower-case version of str.

Definition at line 1430 of file TString.cxx.

◆ ToUpper()

TString ToUpper ( const TString str)

Return an upper-case version of str.

Definition at line 1444 of file TString.cxx.

◆ UnEscChar()

int UnEscChar ( const char *  src,
char *  dst,
int  dstlen,
char *  specchars,
char  escchar 
)

Un-escape specchars in src from escchar and copy to dst.

Definition at line 2549 of file TString.cxx.

Variable Documentation

◆ kHashShift

const UInt_t kHashShift = 5

Definition at line 68 of file TString.cxx.