46 m_Skipped(0), m_CompressedIn(0),
53 : m_LengthLimit(length_limit), m_CountLimit(count_limit),
54 m_Skipped(0), m_CompressedIn(0),
72 total +=
i->GetCount();
75 out << setw(10) <<
i->first <<
" : \"" <<
i->second <<
"\"\n";
85 const char*
val = ::getenv(
env);
96 static atomic<Int1> saved_use_string_pack{-1};
97 auto use_string_pack = saved_use_string_pack.load(memory_order_acquire);
98 if ( use_string_pack < 0 ) {
101 if ( use_string_pack ) {
104 string s1(
"test"), s2;
106 if ( s1.data() != s2.data() ) {
108 use_string_pack =
false;
112 saved_use_string_pack.store(use_string_pack, memory_order_release);
114 return use_string_pack != 0;
121 "CPackString: bad ref counting");
128 const_cast<string&
>(src) = s;
130 if ( s.data() != src.data() ) {
183 s.assign(data,
size);
203 s.assign(data,
size);
215 : m_PackString(length_limit, count_limit)
223 NcbiCout <<
"CPackStringClassHook statistics:\n" <<
236 : m_PackString(length_limit, count_limit)
244 NcbiCout <<
"CPackStringChoiceHook statistics:\n" <<
~CPackStringChoiceHook(void)
CPackStringChoiceHook(void)
CPackStringClassHook(void)
~CPackStringClassHook(void)
static bool s_GetEnvFlag(const char *env, bool def_val)
static void x_RefCounterError(void)
static bool TryStringPack(void)
size_t GetLengthLimit(void) const
static bool x_Assign(string &s, const string &src)
size_t GetCountLimit(void) const
void AddOld(string &s, const iterator &iter)
size_t GetCount(void) const
TStrings::iterator iterator
bool AddNew(string &s, const char *data, size_t size, iterator iter)
CNcbiOstream & DumpStatistics(CNcbiOstream &out) const
iterator_bool insert(const value_type &val)
const_iterator end() const
const_iterator lower_bound(const key_type &key) const
std::ofstream out("events_result.xml")
main entry point for tests
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define THROW1_TRACE(exception_class, exception_arg)
Throw trace.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
static int CompareNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive compare of a substring with another string.
double value_type
The numeric datatype used by the parser.
const struct ncbi::grid::netcache::search::fields::SIZE size
const struct ncbi::grid::netcache::search::fields::KEY key
static const char *const STRING_PACK_ENV
static const size_t kDefaultCountLimit
static const size_t kDefaultLengthLimit
static const char *const ENV_YES