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 "strlcpy.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:

Namespaces

namespace  ROOT
 This file contains a specialised ROOT message handler to test for diagnostic in unit tests.
 

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 *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 *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 720 of file TString.cxx.

◆ ROTL64

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

Definition at line 719 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 2539 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 2560 of file TString.cxx.

◆ Form()

char * Form ( const char *  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 2456 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 2409 of file TString.cxx.

◆ Hash()

UInt_t Hash ( const char *  str)

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

Definition at line 570 of file TString.cxx.

◆ Mash()

static void Mash ( UInt_t hash,
UInt_t  chars 
)
inlinestatic

Utility used by Hash().

Definition at line 560 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 879 of file TString.cxx.

◆ operator+() [1/5]

TString operator+ ( char  c,
const TString s 
)

Add string to char.

Definition at line 1524 of file TString.cxx.

◆ operator+() [2/5]

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

Use the special concatenation constructor.

Definition at line 1500 of file TString.cxx.

◆ operator+() [3/5]

TString operator+ ( const TString s,
char  c 
)

Add char to string.

Definition at line 1516 of file TString.cxx.

◆ operator+() [4/5]

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

Use the special concatenation constructor.

Definition at line 1492 of file TString.cxx.

◆ operator+() [5/5]

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

Use the special concatenation constructor.

Definition at line 1508 of file TString.cxx.

◆ operator<<()

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

Write TString or derived to TBuffer.

Definition at line 1437 of file TString.cxx.

◆ operator==() [1/4]

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

Compare TString with a char *.

Definition at line 1449 of file TString.cxx.

◆ operator==() [2/4]

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

Compare two sub-strings.

Definition at line 1698 of file TString.cxx.

◆ operator==() [3/4]

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

Compare sub-string to char *.

Definition at line 1674 of file TString.cxx.

◆ operator==() [4/4]

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

Compare sub-string to string.

Definition at line 1688 of file TString.cxx.

◆ operator>>()

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

Read string from TBuffer. Function declared in ClassDef.

Definition at line 1428 of file TString.cxx.

◆ Printf()

void Printf ( const char *  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 2470 of file TString.cxx.

◆ rotl64()

uint64_t rotl64 ( uint64_t  x,
int8_t  r 
)
inline

Definition at line 714 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 2361 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 2524 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 2488 of file TString.cxx.

◆ SwapInt()

static UInt_t SwapInt ( UInt_t  x)
inlinestatic

Definition at line 550 of file TString.cxx.

◆ ToLower()

TString ToLower ( const TString str)

Return a lower-case version of str.

Definition at line 1464 of file TString.cxx.

◆ ToUpper()

TString ToUpper ( const TString str)

Return an upper-case version of str.

Definition at line 1478 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 2584 of file TString.cxx.

Variable Documentation

◆ kHashShift

const UInt_t kHashShift = 5

Definition at line 69 of file TString.cxx.