NCBI C++ ToolKit
ncbistr.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 #ifndef _NCBISTR_
2 #define _NCBISTR_
3 
4 /* $Id: ncbistr.hpp 80115 2017-11-08 12:52:45Z ivanov $
5 * ===========================================================================
6 *
7 * PUBLIC DOMAIN NOTICE
8 * National Center for Biotechnology Information
9 *
10 * This software/database is a "United States Government Work" under the
11 * terms of the United States Copyright Act. It was written as part of
12 * the author's official duties as a United States Government employee and
13 * thus cannot be copyrighted. This software/database is freely available
14 * to the public for use. The National Library of Medicine and the U.S.
15 * Government have not placed any restriction on its use or reproduction.
16 *
17 * Although all reasonable efforts have been taken to ensure the accuracy
18 * and reliability of the software and data, the NLM and the U.S.
19 * Government do not and cannot warrant the performance or results that
20 * may be obtained by using this software or data. The NLM and the U.S.
21 * Government disclaim all warranties, express or implied, including
22 * warranties of performance, merchantability or fitness for any particular
23 * purpose.
24 *
25 * Please cite the author in any work or product based on this material.
26 *
27 * ===========================================================================
28 *
29 * File Name: ncbistr.h
30 *
31 * Author: Gish, Kans, Ostell, Schuler, Vakatov, Lavrentiev
32 *
33 * Version Creation Date: 1/1/91
34 *
35 * C Tolkit Revision: 6.14
36 *
37 * File Description:
38 * prototypes for portable string routines
39 *
40 * ==========================================================================
41 */
42 
43 #include <corelib/ncbistd.hpp>
45 
46 
47 /** @addtogroup CToolsBridge
48  *
49  * @{
50  */
51 
53 
54 
55 NLM_EXTERN int LIBCALL Nlm_StrICmp PROTO((const char FAR *a, const char FAR *b));
56 NLM_EXTERN int LIBCALL Nlm_StrNICmp PROTO((const char FAR *a, const char FAR *b, size_t max));
57 NLM_EXTERN int LIBCALL Nlm_StrIPCmp PROTO((const char FAR *a, const char FAR *b));
58 NLM_EXTERN int LIBCALL Nlm_StrNIPCmp PROTO((const char FAR *a, const char FAR *b, size_t max));
59 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StrMove PROTO((char FAR *to, const char FAR *from));
61 NLM_EXTERN size_t LIBCALL Nlm_StrCnt PROTO((const char FAR *str, const char FAR *x_list));
62 
63 NLM_EXTERN size_t LIBCALL Nlm_StringLen PROTO((const char *str));
64 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringCpy PROTO((char FAR *to, const char FAR *from));
65 
66 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringNCpy PROTO((char FAR *to, const char FAR *from, size_t max));
67 
68 /* Copies not more than 'max' bytes from string 'from' to 'to';
69  * The resulting string is guaranteed to be '\0'-terminated
70  * (even if 'from' == NULL) -- unless 'to' == NULL or 'max' <= 0;
71  * 'to' fits into the 'max' bytes
72  */
73 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringNCpy_0 PROTO((char FAR *to, const char FAR *from, size_t max));
74 
75 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringCat PROTO((char FAR *to, const char FAR *from));
76 
77 /* Adds (not more than 'max') bytes from string 'from' to the end of
78  * string 'to';
79  * [Attention!]: then adds '\0' AFTER the last copied non-'\0' byte
80  */
81 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringNCat PROTO((char FAR *to, const char FAR *from, size_t max));
82 
83 NLM_EXTERN int LIBCALL Nlm_StringCmp PROTO((const char FAR *a, const char FAR *b));
84 NLM_EXTERN int LIBCALL Nlm_StringNCmp PROTO((const char FAR *a, const char FAR *b, size_t max));
85 NLM_EXTERN int LIBCALL Nlm_StringICmp PROTO((const char FAR *a, const char FAR *b));
86 NLM_EXTERN int LIBCALL Nlm_StringNICmp PROTO((const char FAR *a, const char FAR *b, size_t max));
88 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringRChr PROTO((const char FAR *str, int chr));
89 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringPBrk PROTO((const char FAR *str1, const char FAR *str2));
90 NLM_EXTERN size_t LIBCALL Nlm_StringSpn PROTO((const char FAR *str1, const char FAR *str2));
91 NLM_EXTERN size_t LIBCALL Nlm_StringCSpn PROTO((const char FAR *str1, const char FAR *str2));
92 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringStr PROTO((const char FAR *str1, const char FAR *str2));
93 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringTok PROTO((char FAR *str1, const char FAR *str2));
94 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringTokMT PROTO((char FAR *str1, const char FAR *str2, char FAR **tmp));
95 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringMove PROTO((char FAR *to, const char FAR *from));
98 NLM_EXTERN size_t LIBCALL Nlm_StringCnt PROTO((const char FAR *str, const char FAR *x_list));
99 NLM_EXTERN char* LIBCALL Nlm_StringUpper PROTO((char *string));
100 NLM_EXTERN char* LIBCALL Nlm_StringLower PROTO((char *string));
101 
104 
105 NLM_EXTERN Nlm_Int2 LIBCALL Nlm_MeshStringICmp PROTO((const char FAR *str1, const char FAR *str2));
106 
107 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringSearch PROTO((const char FAR *str, const char FAR *sub));
108 NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringISearch PROTO((const char FAR *str, const char FAR *sub));
109 
114 
115 /* Printing 8-byte integer into platform-independent array of 8 bytes
116  memory allocated for this storage */
118 
119 /* Reading platform-independent array of 8 bytes and transfer it to
120  8-bytes integer */
122 
123 /* Retrieve integer value from "str".
124  * On success, "*endptr" will point to the symbol of "str" that
125  * appears right after the read number.
126  * On conversion error, "*endptr" will be assigned NULL.
127  */
128 NLM_EXTERN Nlm_Int8 LIBCALL Nlm_StringToInt8 (const char* str, const char** endptr);
129 NLM_EXTERN Nlm_Uint8 LIBCALL Nlm_StringToUint8(const char* str, const char** endptr);
130 
131 /* Print "value" to "str".
132  * Return '\0'-terminated "str" on success.
133  * Return NULL if "str_size" is not enough to put the number and '\0'.
134  */
135 NLM_EXTERN char* LIBCALL Nlm_Int8ToString (Nlm_Int8 value, char* str, size_t str_size);
136 NLM_EXTERN char* LIBCALL Nlm_Uint8ToString(Nlm_Uint8 value, char* str, size_t str_size);
137 
142 
143 /*****************************************************************************
144 *
145 * LabelCopy (to, from, buflen)
146 * Copies the string "from" into "to" for up to "buflen" chars
147 * if "from" is longer than buflen, makes the last character '>'
148 * always puts one '\0' to terminate the string in to
149 * to MUST be one character longer than buflen to leave room for the
150 * last '\0' if from = buflen.
151 * returns number of characters transferred to "to"
152 *
153 *****************************************************************************/
155 
156 /*****************************************************************************
157 *
158 * LabelCopyExtra (to, from, buflen, prefix, suffix)
159 * Copies the string "from" into "to" for up to "buflen" chars
160 * if all together are longer than buflen, makes the last character '>'
161 * always puts one '\0' to terminate the string in to
162 * to MUST be one character longer than buflen to leave room for the
163 * last '\0' if from = buflen.
164 * returns number of characters transferred to "to"
165 *
166 * if not NULL, puts prefix before from and suffix after from
167 * both contained within buflen
168 *
169 *
170 *****************************************************************************/
172 
174 
175 /* Some higher-level string manipulation functions */
176 NLM_EXTERN Nlm_CharPtr LIBCALL StrCpyPtr PROTO ((char FAR *Dest, char FAR *Start, char FAR *Stop));
177 NLM_EXTERN Nlm_CharPtr LIBCALL StrDupPtr PROTO ((char FAR *Start,char FAR *Stop));
181 NLM_EXTERN Nlm_CharPtr LIBCALL SkipToChar PROTO ((char FAR *String,char Char));
182 NLM_EXTERN Nlm_CharPtr LIBCALL SkipPastChar PROTO ((char FAR *String,char Char));
183 NLM_EXTERN Nlm_CharPtr LIBCALL SkipToString PROTO ((char FAR *String,char FAR *Find));
184 NLM_EXTERN Nlm_CharPtr LIBCALL NoCaseSkipToString PROTO ((char FAR *String,char FAR *Find));
185 NLM_EXTERN Nlm_CharPtr LIBCALL SkipPastString PROTO ((char FAR *String,char FAR *Find));
186 NLM_EXTERN Nlm_CharPtr LIBCALL NoCaseSkipPastString PROTO ((char FAR *String,char FAR *Find));
187 NLM_EXTERN Nlm_CharPtr LIBCALL SkipSet PROTO ((char FAR *String,char FAR *CharSet));
188 NLM_EXTERN Nlm_CharPtr LIBCALL SkipToSet PROTO ((char FAR *String,char FAR *CharSet));
189 NLM_EXTERN Nlm_Boolean LIBCALL StringSub PROTO ((char FAR *String, char Find, char Replace));
190 NLM_EXTERN Nlm_Boolean LIBCALL StringSubSet PROTO ((char FAR *String,char FAR *FindSet, char Replace));
191 NLM_EXTERN Nlm_Boolean LIBCALL StringSubString PROTO ((char FAR *String, char FAR *Find, char FAR *Replace, Nlm_Int4 MaxLength));
193 NLM_EXTERN Int4 LIBCALL CountChar PROTO ((char FAR *String, char Char));
194 NLM_EXTERN Int4 LIBCALL CountStrings PROTO ((char FAR *String, char FAR *Find));
196 NLM_EXTERN void LIBCALL CleanSpaces PROTO ((char FAR *Line));
197 
198 NLM_EXTERN Nlm_Int4 LIBCALL CountSet PROTO ((char FAR *String, char FAR *Set));
199 NLM_EXTERN Nlm_Int4 LIBCALL StringDiff PROTO ((char FAR *This, char FAR *That));
200 NLM_EXTERN Nlm_Int4 LIBCALL StringDiffNum PROTO ((char FAR *This, char FAR *That, Nlm_Int4 NumChars));
201 NLM_EXTERN void LIBCALL TruncateString PROTO ((char FAR *String, Nlm_Int4 Length));
204 NLM_EXTERN void LIBCALL DeleteChar PROTO ((char FAR *String,char Delete));
205 
206 /* The resulting string will contain only printable characters(and '\n', '\t'
207  * and (if "rn_eol"==TRUE) '\r').
208  * If "rn_eol" is TRUE then insert '\r' before '\n' symbols not preceeded
209  * by '\r'; otherwise, remove all '\r' symbols.
210  * NB: The caller is responsible to free the memory allocated for the result.
211  */
213 #define StringPrintable Nlm_StringPrintable
214 
215 /* Merge all subsequent space symbols into a one space(see #SPACE));
216  * remove end-of-line dashes.
217  * NB: The caller is responsible to free the memory allocated for the result.
218  */
220 #define text2stream Nlm_text2stream
221 
222 /* Find the place where the "str" string should be broken to fit
223  * "max_col" positions; non-zero "dash" recommends to replace the
224  * "max_col" symbol with a dash.
225  * Return the recommended length of the line; do not skip leading
226  * spaces; the last symbol of the recommended line is not a space.
227  */
229  size_t max_col,
230  int PNTR dash));
231 #define stream2text Nlm_stream2text
232 
233 /* Rule the stroke "str" according to the "method"; return the resulting line.
234  * The resulting line contains "len" characters sharp, plus terminating '\0'.
235  * All space symbols will be replaced by ' '. The leading and trailing
236  * spaces do not count.
237  * NB: The caller is responsible to free the memory allocated for the result.
238  */
239 typedef enum
240 {
244  RL_Spread
246 #define enumRuleLine Nlm_enumRuleLine
247 
249  (const Nlm_Char FAR PNTR str,
250  size_t len,
251  Nlm_enumRuleLine method));
252 #define rule_line Nlm_rule_line
253 
254 
255 /* aliases for ANSI functions */
256 #define Nlm_StrLen strlen
257 #define Nlm_StrCpy strcpy
258 #define Nlm_StrNCpy strncpy
259 #define Nlm_StrCat strcat
260 #define Nlm_StrNCat strncat
261 #define Nlm_StrCmp strcmp
262 #define Nlm_StrNCmp strncmp
263 #define Nlm_StrChr strchr
264 #define Nlm_StrRChr strrchr
265 #define Nlm_StrCSpn strcspn
266 #define Nlm_StrNSet strnset
267 #define Nlm_StrPBrk strpbrk
268 #define Nlm_StrSet strset
269 #define Nlm_StrSpn strspn
270 #define Nlm_StrStr strstr
271 #define Nlm_StrTok strtok
272 
273 #ifdef COMP_MSC
274 #define Nlm_StrUpper _strupr
275 #define Nlm_StrLower _strlwr
276 #else
277 NLM_EXTERN char * LIBCALL Nlm_StrUpper PROTO((char *string));
278 NLM_EXTERN char * LIBCALL Nlm_StrLower PROTO((char *string));
279 #endif
280 
281 #define StrLen Nlm_StrLen
282 #define StrCpy Nlm_StrCpy
283 #define StrNCpy Nlm_StrNCpy
284 #define StrCat Nlm_StrCat
285 #define StrNCat Nlm_StrNCat
286 #define StrCmp Nlm_StrCmp
287 #define StrNCmp Nlm_StrNCmp
288 #define StrICmp Nlm_StrICmp
289 #define StrNICmp Nlm_StrNICmp
290 #define StrIPCmp Nlm_StrIPCmp
291 #define StrNIPCmp Nlm_StrNIPCmp
292 #define StrChr Nlm_StrChr
293 #define StrRChr Nlm_StrRChr
294 #define StrCSpn Nlm_StrCSpn
295 #define StrNSet Nlm_StrNSet
296 #define StrPBrk Nlm_StrPBrk
297 #define StrSet Nlm_StrSet
298 #define StrSpn Nlm_StrSpn
299 #define StrStr Nlm_StrStr
300 #define StrTok Nlm_StrTok
301 #define StrMove Nlm_StrMove
302 #define StrSave Nlm_StrSave
303 #define StrCnt Nlm_StrCnt
304 #define StrUpper Nlm_StrUpper
305 #define StrLower Nlm_StrLower
306 
307 #define StringLen Nlm_StringLen
308 #define StringCpy Nlm_StringCpy
309 #define StringNCpy Nlm_StringNCpy
310 #define StringNCpy_0 Nlm_StringNCpy_0
311 #define StringCat Nlm_StringCat
312 #define StringNCat Nlm_StringNCat
313 #define StringCmp Nlm_StringCmp
314 #define StringNCmp Nlm_StringNCmp
315 #define StringICmp Nlm_StringICmp
316 #define StringNICmp Nlm_StringNICmp
317 #define StringChr Nlm_StringChr
318 #define StringRChr Nlm_StringRChr
319 #define StringPBrk Nlm_StringPBrk
320 #define StringSpn Nlm_StringSpn
321 #define StringCSpn Nlm_StringCSpn
322 #define StringStr Nlm_StringStr
323 #define StringTok Nlm_StringTok
324 #define StringTokMT Nlm_StringTokMT
325 #define StringMove Nlm_StringMove
326 #define StringSave Nlm_StringSave
327 #define StringSaveNoNull Nlm_StringSaveNoNull
328 #define StringCnt Nlm_StringCnt
329 #define StringUpper Nlm_StringUpper
330 #define StringLower Nlm_StringLower
331 
332 #define NaturalStringCmp Nlm_NaturalStringCmp
333 #define NaturalStringICmp Nlm_NaturalStringICmp
334 
335 #define MeshStringICmp Nlm_MeshStringICmp
336 
337 #define StringSearch Nlm_StringSearch
338 #define StringISearch Nlm_StringISearch
339 
340 #define StringHasNoText Nlm_StringHasNoText
341 #define StringDoesHaveText Nlm_StringDoesHaveText
342 #define TrimSpacesAroundString Nlm_TrimSpacesAroundString
343 #define CompressSpaces Nlm_CompressSpaces
344 
345 #define LabelCopy Nlm_LabelCopy
346 #define LabelCopyExtra Nlm_LabelCopyExtra
347 
348 /* Disabled due conflicts with C++ NStr:: versions.
349  Replaced with inline functions, see below.
350 
351 #define StringToInt8 Nlm_StringToInt8
352 #define StringToUint8 Nlm_StringToUint8
353 #define Int8ToString Nlm_Int8ToString
354 #define Uint8ToString Nlm_Uint8ToString
355 */
356 
357 #define StringIsAllDigits Nlm_StringIsAllDigits
358 #define StringIsAllUpperCase Nlm_StringIsAllUpperCase
359 #define StringIsAllLowerCase Nlm_StringIsAllLowerCase
360 #define StringIsAllPunctuation Nlm_StringIsAllPunctuation
361 
362 /* Search with Boyer-Moore algorithm */
363 
364 typedef struct substringdata {
365  int d [256];
366  size_t subLen;
369  const char FAR *sub; /* points to the original substring, not copied */
371 
373  const char FAR *sub,
374  Nlm_Boolean caseCounts,
376 );
378  const char FAR *str,
380 );
381 
382 #define SubStringData Nlm_SubStringData
383 #define SubStringDataPtr Nlm_SubStringDataPtr
384 #define SetupSubString Nlm_SetupSubString
385 #define SearchSubString Nlm_SearchSubString
386 
387 /*----------------------------------------*/
388 /* Misc Text Oriented Macros */
389 /*----------------------------------------*/
390 
391 /*** PORTABILITY WARNING: These macros assume the ASCII character set ***/
392 #define IS_DIGIT(c) ('0'<=(c) && (c)<='9')
393 #define IS_UPPER(c) ('A'<=(c) && (c)<='Z')
394 #define IS_LOWER(c) ('a'<=(c) && (c)<='z')
395 #define IS_ALPHA(c) (IS_UPPER(c) || IS_LOWER(c))
396 #define TO_LOWER(c) ((Nlm_Char)(IS_UPPER(c) ? (c)+' ' : (c)))
397 #define TO_UPPER(c) ((Nlm_Char)(IS_LOWER(c) ? (c)-' ' : (c)))
398 #define IS_WHITESP(c) (((c) == ' ') || ((c) == '\n') || ((c) == '\r') || ((c) == '\t'))
399 #define IS_ALPHANUM(c) (IS_ALPHA(c) || IS_DIGIT(c))
400 #define IS_PRINT(c) (' '<=(c) && (c)<='~')
401 
402 
403 /*----------------------------------------*/
404 /* Inline */
405 /*----------------------------------------*/
406 
407 inline
408 Nlm_Int8 LIBCALL StringToInt8 (const char* str, const char** endptr)
409 {
410  return Nlm_StringToInt8(str, endptr);
411 }
412 
413 inline
414 Nlm_Uint8 LIBCALL StringToUint8(const char* str, const char** endptr)
415 {
416  return Nlm_StringToUint8(str, endptr);
417 }
418 
419 inline
420 char* LIBCALL Int8ToString (Nlm_Int8 value, char* str, size_t str_size)
421 {
422  return Nlm_Int8ToString(value, str, str_size);
423 }
424 
425 inline
426 char* LIBCALL Uint8ToString(Nlm_Uint8 value, char* str, size_t str_size)
427 {
428  return Nlm_Uint8ToString(value, str, str_size);
429 }
430 
431 
432 
434 
435 /* @} */
436 
437 #endif /* _NCBISTR_ */
Definition: svg.hpp:432
char value[7]
Definition: config.c:431
Include a standard set of the NCBI C++ Toolkit most basic headers.
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringCat(char FAR *to, const char FAR *from)
Definition: ct_ncbistr.cpp:87
NLM_EXTERN int LIBCALL Nlm_StrNIPCmp(const char FAR *a, const char FAR *b, size_t max)
Definition: ct_ncbistr.cpp:305
NLM_EXTERN void LIBCALL Nlm_LabelCopyNext(Nlm_CharPtr PNTR to, Nlm_CharPtr from, Nlm_Uint4 PNTR buflen)
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringPrintable(const Nlm_Char PNTR str, Nlm_Boolean rn_eol)
NLM_EXTERN Nlm_Boolean Nlm_StringIsAllPunctuation(Nlm_CharPtr str)
NLM_EXTERN int LIBCALL Nlm_NaturalStringICmp(Nlm_CharPtr str1, Nlm_CharPtr str2)
Definition: ct_ncbistr.cpp:637
NLM_EXTERN char *LIBCALL Nlm_StrLower(char *string)
Definition: ct_ncbistr.cpp:524
NLM_EXTERN void LIBCALL TruncateString(char FAR *theString, Nlm_Int4 Length)
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringTokMT(char FAR *str1, const char FAR *str2, char FAR **tmp)
Definition: ct_ncbistr.cpp:152
NLM_EXTERN Nlm_CharPtr LIBCALL SkipToChar(char FAR *theString, char Char)
NLM_EXTERN Nlm_Int4 LIBCALL BreakString(char FAR *theString, Nlm_CharPtr PNTR Words)
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringNCpy_0(char FAR *to, const char FAR *from, size_t max)
Definition: ct_ncbistr.cpp:73
NLM_EXTERN int LIBCALL Nlm_StrNICmp(const char FAR *a, const char FAR *b, size_t max)
Definition: ct_ncbistr.cpp:281
NLM_EXTERN size_t LIBCALL Nlm_StringCnt(const char FAR *str, const char FAR *x_list)
Definition: ct_ncbistr.cpp:203
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringSaveNoNull(const char FAR *from)
Definition: ct_ncbistr.cpp:198
NLM_EXTERN Nlm_Boolean LIBCALL StringSubString(char FAR *theString, char FAR *Find, char FAR *Replace, Nlm_Int4 MaxLength)
NLM_EXTERN Nlm_CharPtr LIBCALL TruncateStringCopy(char FAR *theString, Nlm_Int4 Length)
NLM_EXTERN Nlm_Boolean Nlm_StringIsAllUpperCase(Nlm_CharPtr str)
NLM_EXTERN Nlm_CharPtr LIBCALL NoCaseSkipPastString(char FAR *theString, char FAR *Find)
NLM_EXTERN Nlm_Uint4 LIBCALL Nlm_LabelCopyExtra(Nlm_CharPtr to, Nlm_CharPtr from, Nlm_Uint4 buflen, Nlm_CharPtr prefix, Nlm_CharPtr suffix)
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_rule_line(const Nlm_Char FAR PNTR str, size_t len, enumRuleLine method)
NLM_EXTERN int LIBCALL Nlm_StrIPCmp(const char FAR *a, const char FAR *b)
Definition: ct_ncbistr.cpp:244
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringStr(const char FAR *str1, const char FAR *str2)
Definition: ct_ncbistr.cpp:142
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_text2stream(const Nlm_Char FAR PNTR str)
NLM_EXTERN Nlm_Int4 LIBCALL CountChar(char FAR *theString, char Char)
NLM_EXTERN Nlm_Int4 LIBCALL CountSet(char FAR *theString, char FAR *Set)
NLM_EXTERN Nlm_Boolean LIBCALL Nlm_StringHasNoText(const char FAR *str)
Definition: ct_ncbistr.cpp:375
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringMove(char FAR *to, const char FAR *from)
Definition: ct_ncbistr.cpp:188
NLM_EXTERN Nlm_CharPtr LIBCALL NoCaseSkipToString(char FAR *theString, char FAR *Find)
NLM_EXTERN Nlm_CharPtr LIBCALL SkipPastChar(char FAR *theString, char Char)
NLM_EXTERN Nlm_CharPtr LIBCALL SkipToSpace(char FAR *theString)
NLM_EXTERN size_t LIBCALL Nlm_StrCnt(const char FAR *s, const char FAR *x_list)
Definition: ct_ncbistr.cpp:483
NLM_EXTERN Nlm_CharPtr LIBCALL SkipSet(char FAR *theString, char FAR *CharSet)
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringSave(const char FAR *from)
Definition: ct_ncbistr.cpp:193
NLM_EXTERN Nlm_Boolean Nlm_StringIsAllLowerCase(Nlm_CharPtr str)
NLM_EXTERN Nlm_Boolean Nlm_StringIsAllDigits(Nlm_CharPtr str)
NLM_EXTERN size_t LIBCALL Nlm_StringSpn(const char FAR *a, const char FAR *b)
Definition: ct_ncbistr.cpp:127
NLM_EXTERN Nlm_CharPtr LIBCALL StrCpyPtr(char FAR *Dest, char FAR *Start, char FAR *Stop)
NLM_EXTERN void LIBCALL DeleteChar(char FAR *theString, char Delete)
NLM_EXTERN Nlm_Boolean LIBCALL StringSub(char FAR *theString, char Find, char Replace)
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringRChr(const char FAR *str, int chr)
Definition: ct_ncbistr.cpp:122
NLM_EXTERN Nlm_Uint4 LIBCALL Nlm_LabelCopy(Nlm_CharPtr to, Nlm_CharPtr from, Nlm_Uint4 buflen)
NLM_EXTERN void LIBCALL CleanSpaces(char FAR *Line)
NLM_EXTERN Nlm_Boolean LIBCALL StringSubSet(char FAR *theString, char FAR *FindSet, char Replace)
NLM_EXTERN int LIBCALL Nlm_NaturalStringCmp(Nlm_CharPtr str1, Nlm_CharPtr str2)
Definition: ct_ncbistr.cpp:631
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringCpy(char FAR *to, const char FAR *from)
Definition: ct_ncbistr.cpp:63
NLM_EXTERN size_t LIBCALL Nlm_StringCSpn(const char FAR *a, const char FAR *b)
Definition: ct_ncbistr.cpp:132
NLM_EXTERN int LIBCALL Nlm_StrICmp(const char FAR *a, const char FAR *b)
Definition: ct_ncbistr.cpp:222
NLM_EXTERN Nlm_Int4 LIBCALL CountStrings(char FAR *theString, char FAR *Find)
NLM_EXTERN char *LIBCALL Nlm_StringUpper(char *string)
Definition: ct_ncbistr.cpp:208
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringTok(char FAR *str1, const char FAR *str2)
Definition: ct_ncbistr.cpp:147
NLM_EXTERN Nlm_CharPtr LIBCALL StrDupPtr(char FAR *Start, char FAR *Stop)
NLM_EXTERN Nlm_CharPtr LIBCALL StringEnd(char FAR *theString)
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringChr(const char FAR *str, int chr)
Definition: ct_ncbistr.cpp:117
NLM_EXTERN char *LIBCALL Nlm_StrUpper(char *string)
Definition: ct_ncbistr.cpp:509
NLM_EXTERN int LIBCALL Nlm_StringNCmp(const char FAR *a, const char FAR *b, size_t max)
Definition: ct_ncbistr.cpp:102
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_CompressSpaces(Nlm_CharPtr str)
Definition: ct_ncbistr.cpp:432
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringNCat(char FAR *to, const char FAR *from, size_t max)
Definition: ct_ncbistr.cpp:92
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringSearch(const char FAR *str, const char FAR *sub)
Definition: ct_ncbistr.cpp:837
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringPBrk(const char FAR *a, const char FAR *b)
Definition: ct_ncbistr.cpp:137
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StrSave(const char FAR *from)
Definition: ct_ncbistr.cpp:352
NLM_EXTERN int LIBCALL Nlm_StringICmp(const char FAR *a, const char FAR *b)
Definition: ct_ncbistr.cpp:107
NLM_EXTERN Nlm_Int4 LIBCALL StringDiff(char FAR *This, char FAR *That)
NLM_EXTERN Nlm_Int4 LIBCALL StringDiffNum(char FAR *This, char FAR *That, Nlm_Int4 NumChars)
NLM_EXTERN int LIBCALL Nlm_StringCmp(const char FAR *a, const char FAR *b)
Definition: ct_ncbistr.cpp:97
NLM_EXTERN Nlm_CharPtr LIBCALL SkipToSet(char FAR *theString, char FAR *CharSet)
NLM_EXTERN char *LIBCALL Nlm_StringLower(char *string)
Definition: ct_ncbistr.cpp:213
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringISearch(const char FAR *str, const char FAR *sub)
Definition: ct_ncbistr.cpp:843
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StrMove(char FAR *to, const char FAR *from)
Definition: ct_ncbistr.cpp:364
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_TrimSpacesAroundString(Nlm_CharPtr str)
Definition: ct_ncbistr.cpp:391
NLM_EXTERN Nlm_CharPtr LIBCALL SkipSpaces(char FAR *Line)
NLM_EXTERN size_t Nlm_stream2text(const Nlm_Char FAR PNTR str, size_t max_col, int PNTR dash)
NLM_EXTERN Nlm_CharPtr LIBCALL SkipToString(char FAR *theString, char FAR *Find)
NLM_EXTERN Nlm_Boolean LIBCALL Nlm_StringDoesHaveText(const char FAR *str)
Definition: ct_ncbistr.cpp:386
NLM_EXTERN int LIBCALL Nlm_StringNICmp(const char FAR *a, const char FAR *b, size_t max)
Definition: ct_ncbistr.cpp:112
NLM_EXTERN Nlm_CharPtr LIBCALL SkipPastString(char FAR *theString, char FAR *Find)
NLM_EXTERN Nlm_CharPtr LIBCALL Nlm_StringNCpy(char FAR *to, const char FAR *from, size_t max)
Definition: ct_ncbistr.cpp:68
NLM_EXTERN size_t LIBCALL Nlm_StringLen(const char *str)
Definition: ct_ncbistr.cpp:58
NLM_EXTERN Nlm_CharPtr LIBCALL SkipChar(char FAR *theString, char Char)
NLM_EXTERN Nlm_Int2 LIBCALL Nlm_MeshStringICmp(const char FAR *str1, const char FAR *str2)
Definition: ct_ncbistr.cpp:647
short Nlm_Int2
Definition: ncbistd.hpp:163
BEGIN_CTRANSITION_SCOPE NLM_EXTERN int LIBCALL Nlm_StrICmp PROTO((const char FAR *a, const char FAR *b))
size_t subLen
Definition: ncbistr.hpp:366
Nlm_Int8 LIBCALL StringToInt8(const char *str, const char **endptr)
Definition: ncbistr.hpp:408
#define BEGIN_CTRANSITION_SCOPE
Definition: ncbilcl.hpp:49
Nlm_Boolean initialized
Definition: ncbistr.hpp:368
NLM_EXTERN char *LIBCALL Nlm_Uint8ToString(Nlm_Uint8 value, char *str, size_t str_size)
Definition: ct_ncbistr.cpp:978
struct substringdata Nlm_SubStringDataPtr
#define PNTR
Definition: ncbistd.hpp:98
unsigned char Nlm_Boolean
Definition: ncbistd.hpp:135
const char FAR * sub
Definition: ncbistr.hpp:369
NLM_EXTERN Nlm_CharPtr Nlm_SearchSubString(const char FAR *str, Nlm_SubStringData PNTR data)
Definition: ct_ncbistr.cpp:730
char * Nlm_CharPtr
Definition: ncbistd.hpp:123
NLM_EXTERN Nlm_Boolean Nlm_SetupSubString(const char FAR *sub, Nlm_Boolean caseCounts, Nlm_SubStringData PNTR data)
Definition: ct_ncbistr.cpp:695
Nlm_Boolean caseCounts
Definition: ncbistr.hpp:367
NLM_EXTERN char *LIBCALL Nlm_Int8ToString(Nlm_Int8 value, char *str, size_t str_size)
Definition: ct_ncbistr.cpp:984
#define Nlm_Int8
Definition: ncbiopt.hpp:231
NLM_EXTERN Nlm_Uint8 LIBCALL BytesToUint8(Nlm_Uint1Ptr bytes)
Definition: ct_ncbistr.cpp:864
NLM_EXTERN Nlm_Uint8 LIBCALL Nlm_StringToUint8(const char *str, const char **endptr)
Definition: ct_ncbistr.cpp:933
char Nlm_Char
Definition: ncbistd.hpp:123
#define LIBCALL
Definition: ncbistd.hpp:297
Nlm_enumRuleLine
Definition: ncbistr.hpp:240
Nlm_Uint8 LIBCALL StringToUint8(const char *str, const char **endptr)
Definition: ncbistr.hpp:414
NLM_EXTERN Nlm_Uint1Ptr LIBCALL Uint8ToBytes(Nlm_Uint8 value)
Definition: ct_ncbistr.cpp:849
unsigned int Nlm_Uint4
Definition: ncbistd.hpp:186
signed int Nlm_Int4
Definition: ncbistd.hpp:178
char *LIBCALL Int8ToString(Nlm_Int8 value, char *str, size_t str_size)
Definition: ncbistr.hpp:420
unsigned char * Nlm_Uint1Ptr
Definition: ncbistd.hpp:156
struct substringdata Nlm_SubStringData
char *LIBCALL Uint8ToString(Nlm_Uint8 value, char *str, size_t str_size)
Definition: ncbistr.hpp:426
int d[256]
Definition: ncbistr.hpp:365
#define END_CTRANSITION_SCOPE
Definition: ncbilcl.hpp:50
#define NLM_EXTERN
Definition: ncbistd.hpp:290
#define Nlm_Uint8
Definition: ncbiopt.hpp:233
NLM_EXTERN Nlm_Int8 LIBCALL Nlm_StringToInt8(const char *str, const char **endptr)
Definition: ct_ncbistr.cpp:940
#define FAR
Definition: ncbistd.hpp:278
@ RL_Left
Definition: ncbistr.hpp:241
@ RL_Right
Definition: ncbistr.hpp:242
@ RL_Center
Definition: ncbistr.hpp:243
@ RL_Spread
Definition: ncbistr.hpp:244
int32_t Int4
4-byte (32-bit) signed integer
Definition: ncbitype.h:102
char Char
Alias for char.
Definition: ncbitype.h:93
int len
unsigned int a
Definition: ncbi_localip.c:102
T max(T x_, T y_)
bool StripSpaces(string &str)
Definition: objutil.cpp:256
static char tmp[2048]
Definition: utf8.c:42
static const char * suffix[]
Definition: pcregrep.c:408
static const char * prefix[]
Definition: pcregrep.c:405
static const char * Words[]
Definition: spell_check.cpp:45
static const char * str(char *buf, int n)
Definition: stats.c:84
Modified on Wed Feb 21 09:57:57 2024 by modify_doxy.py rev. 669887