Go to the documentation of this file. 1 #ifndef VIENNA_RNA_PACKAGE_STRING_UTILS_H
2 #define VIENNA_RNA_PACKAGE_STRING_UTILS_H
4 #ifdef VRNA_WARN_DEPRECATED
5 # if defined(__clang__)
6 # define DEPRECATED(func, msg) func __attribute__ ((deprecated("", msg)))
7 # elif defined(__GNUC__)
8 # define DEPRECATED(func, msg) func __attribute__ ((deprecated(msg)))
10 # define DEPRECATED(func, msg) func
13 # define DEPRECATED(func, msg) func
34 #define XSTR(s) STR(s)
41 #ifndef FILENAME_MAX_LENGTH
49 #define FILENAME_MAX_LENGTH 80
57 #define FILENAME_ID_LENGTH 42
64 char *strdup(
const char *s);
194 const char *delimiter);
198 vrna_strjoin(
const char **strings,
199 const char *delimiter);
210 const char symbols[]);
308 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
314 DEPRECATED(
void str_uppercase(
char *sequence),
"Use vrna_seq_toupper() instead");
321 DEPRECATED(
void str_DNA2RNA(
char *sequence),
"Use vrna_seq_toRNA() instead");
329 const char symbols[]),
330 "Use vrna_random_string() instead");
337 DEPRECATED(
int hamming(
const char *s1,
339 "Use vrna_hamming_distance() instead");
349 "Use vrna_hamming_distance_bound() instead");
char ** vrna_strsplit(const char *string, const char *delimiter)
Split a string into tokens using a delimiting character.
char * vrna_random_string(int l, const char symbols[])
Create a random string using characters from a specified symbol set.
char * vrna_strdup_printf(const char *format,...)
Safely create a formatted string.
int vrna_hamming_distance(const char *s1, const char *s2)
Calculate hamming distance between two sequences.
char * vrna_seq_ungapped(const char *sequence)
Remove gap characters from a nucleotide sequence.
int hamming_bound(const char *s1, const char *s2, int n)
Calculate hamming distance between two sequences up to a specified length.
char * random_string(int l, const char symbols[])
Create a random string using characters from a specified symbol set.
char * vrna_cut_point_insert(const char *string, int cp)
Add a separating '&' character into a string according to cut-point position.
void str_DNA2RNA(char *sequence)
Convert a DNA input sequence to RNA alphabet.
Various data structures and pre-processor macros.
int vrna_strcat_vprintf(char **dest, const char *format, va_list args)
Safely append a formatted string to another string.
char * vrna_cut_point_remove(const char *string, int *cp)
Remove a separating '&' character from a string.
void vrna_seq_toRNA(char *sequence)
Convert an input sequence (possibly containing DNA alphabet characters) to RNA alphabet.
int vrna_hamming_distance_bound(const char *s1, const char *s2, int n)
Calculate hamming distance between two sequences up to a specified length.
void str_uppercase(char *sequence)
Convert an input sequence to uppercase.
int vrna_strcat_printf(char **dest, const char *format,...)
Safely append a formatted string to another string.
void vrna_seq_toupper(char *sequence)
Convert an input sequence to uppercase.
char * vrna_strdup_vprintf(const char *format, va_list argp)
Safely create a formatted string.
int hamming(const char *s1, const char *s2)
Calculate hamming distance between two sequences.