4#ifndef ROOT_TSchemaRuleProcessor
5#define ROOT_TSchemaRuleProcessor
27 std::list<std::string>&
result,
32 std::string::size_type
curr;
33 std::string::size_type last = 0;
34 std::string::size_type
size;
39 while( last !=
source.size() ) {
42 if(
curr == std::string::npos ) {
57 std::list<std::pair<ROOT::Internal::TSchemaType,std::string> >&
result)
63 std::string::size_type
curr;
64 std::string::size_type last = 0;
65 std::string::size_type
size;
72 while( last !=
source.size() ) {
76 if(
curr == std::string::npos ) {
85 unsigned int level = 0;
90 for(std::string::size_type
j=
elem.size();
j>0; --
j) {
91 std::string::size_type i =
j-1;
92 if (
elem[i]==
'<') { ++level; }
93 else if (
elem[i]==
'>') {
if (level==0) {
continue; } ; --level; }
103 }
else if (
elem[i]==
'*' ||
elem[i]==
'&') {
107 std::string::size_type
endvar = i;
130 std::string::size_type start, end;
131 for( start = 0; start <
source.size(); ++start) {
134 }
else if (
source[start] ==
'\\' && (start+1)<
source.size() && (
source[start+1]==
'\n' ||
source[start+1]==
'\r') ) {
142 if( start ==
source.size() )
144 for( end =
source.size()-1; end > start; --end ) {
145 if ( (
source[end]==
'\n' ||
source[end]==
'\r') && end > (start+1) &&
source[end-1] ==
'\\' ) {
155 return source.substr( start, end-start+1 );
160 std::pair<Int_t, Int_t>&
result )
171 std::string::size_type
hyphenI;
206 result.second = atoi( second.c_str() );
217 result.first = atoi( first.c_str() );
229 result.first = atoi( first.c_str() );
230 result.second = atoi( second.c_str() );
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t result
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
static bool IsANumber(const std::string &source, bool acceptHex=false)
Check if given string consists of digits.
static std::string Trim(const std::string &source)
static void SplitDeclaration(const std::string &source, std::list< std::pair< ROOT::Internal::TSchemaType, std::string > > &result)
static bool ProcessVersion(const std::string &source, std::pair< Int_t, Int_t > &result)
static void SplitList(const std::string &source, std::list< std::string > &result, char delimiter=',')
const_iterator begin() const
const_iterator end() const
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...