FreeRDP
triostr.c File Reference
#include <winpr/config.h>
#include <assert.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
#include <ctype.h>
#include "triodef.h"
#include "triostr.h"
#include <math.h>

Macros

#define USE_MATH
 
#define TRIO_PRIVATE_STRING   TRIO_PRIVATE
 
#define NULL   0
 
#define NIL   ((char)0)
 
#define FALSE   (1 == 0)
 
#define TRUE   (!FALSE)
 
#define BOOLEAN_T   int
 
#define trio_powl(x, y)   pow((double)(x), (double)(y))
 
#define TRIO_FUNC_INTERNAL_TO_UPPER
 

Functions

TRIO_PRIVATE_STRING char *internal_duplicate_max TRIO_ARGS2 ((source, size), TRIO_CONST char *source, size_t size)
 
TRIO_PRIVATE_STRING trio_string_t * internal_string_alloc (TRIO_NOARGS)
 
TRIO_PRIVATE_STRING BOOLEAN_T internal_string_grow TRIO_ARGS2 ((self, delta), trio_string_t *self, size_t delta)
 
TRIO_PRIVATE_STRING BOOLEAN_T internal_string_grow_to TRIO_ARGS2 ((self, length), trio_string_t *self, size_t length)
 
TRIO_PRIVATE_STRING TRIO_INLINE int internal_to_upper TRIO_ARGS1 ((source), int source)
 
TRIO_PUBLIC_STRING char *trio_create TRIO_ARGS1 ((size), size_t size)
 
TRIO_PUBLIC_STRING void trio_destroy TRIO_ARGS1 ((string), char *string)
 
TRIO_PUBLIC_STRING size_t trio_length TRIO_ARGS1 ((string), TRIO_CONST char *string)
 
TRIO_PUBLIC_STRING size_t trio_length_max TRIO_ARGS2 ((string, max), TRIO_CONST char *string, size_t max)
 
TRIO_PUBLIC_STRING int trio_append TRIO_ARGS2 ((target, source), char *target, TRIO_CONST char *source)
 
TRIO_PUBLIC_STRING int trio_append_max TRIO_ARGS3 ((target, max, source), char *target, size_t max, TRIO_CONST char *source)
 
TRIO_PUBLIC_STRING int trio_contains TRIO_ARGS2 ((string, substring), TRIO_CONST char *string, TRIO_CONST char *substring)
 
TRIO_PUBLIC_STRING char *trio_duplicate TRIO_ARGS1 ((source), TRIO_CONST char *source)
 
TRIO_PUBLIC_STRING char *trio_duplicate_max TRIO_ARGS2 ((source, max), TRIO_CONST char *source, size_t max)
 
TRIO_PUBLIC_STRING int trio_equal TRIO_ARGS2 ((first, second), TRIO_CONST char *first, TRIO_CONST char *second)
 
TRIO_PUBLIC_STRING int trio_equal_case_max TRIO_ARGS3 ((first, max, second), TRIO_CONST char *first, size_t max, TRIO_CONST char *second)
 
TRIO_PUBLIC_STRING TRIO_CONST char *trio_error TRIO_ARGS1 ((error_number), int error_number)
 
TRIO_PUBLIC_STRING size_t trio_format_date_max TRIO_ARGS4 ((target, max, format, datetime), char *target, size_t max, TRIO_CONST char *format, TRIO_CONST struct tm *datetime)
 
TRIO_PUBLIC_STRING unsigned long trio_hash TRIO_ARGS2 ((string, type), TRIO_CONST char *string, int type)
 
TRIO_PUBLIC_STRING char *trio_index TRIO_ARGS2 ((string, character), TRIO_CONST char *string, int character)
 
TRIO_PUBLIC_STRING int trio_lower TRIO_ARGS1 ((target), char *target)
 
TRIO_PUBLIC_STRING int trio_match TRIO_ARGS2 ((string, pattern), TRIO_CONST char *string, TRIO_CONST char *pattern)
 
TRIO_PUBLIC_STRING size_t trio_span_function TRIO_ARGS3 ((target, source, Function), char *target, TRIO_CONST char *source, int(*Function) TRIO_PROTO((int)))
 
TRIO_PUBLIC_STRING char *trio_substring_max TRIO_ARGS3 ((string, max, substring), TRIO_CONST char *string, size_t max, TRIO_CONST char *substring)
 
TRIO_PUBLIC_STRING char *trio_tokenize TRIO_ARGS2 ((string, delimiters), char *string, TRIO_CONST char *delimiters)
 
TRIO_PUBLIC_STRING trio_long_double_t trio_to_long_double TRIO_ARGS2 ((source, endp), TRIO_CONST char *source, char **endp)
 
TRIO_PUBLIC_STRING long trio_to_long TRIO_ARGS3 ((string, endp, base), TRIO_CONST char *string, char **endp, int base)
 
TRIO_PUBLIC_STRING trio_string_t *trio_string_create TRIO_ARGS1 ((initial_size), int initial_size)
 
TRIO_PUBLIC_STRING void trio_string_destroy TRIO_ARGS1 ((self), trio_string_t *self)
 
TRIO_PUBLIC_STRING char *trio_string_get TRIO_ARGS2 ((self, offset), trio_string_t *self, int offset)
 
TRIO_PUBLIC_STRING void trio_xstring_set TRIO_ARGS2 ((self, buffer), trio_string_t *self, char *buffer)
 
TRIO_PUBLIC_STRING int trio_string_append TRIO_ARGS2 ((self, other), trio_string_t *self, trio_string_t *other)
 
TRIO_PUBLIC_STRING int trio_xstring_append TRIO_ARGS2 ((self, other), trio_string_t *self, TRIO_CONST char *other)
 
TRIO_PUBLIC_STRING int trio_xstring_append_char TRIO_ARGS2 ((self, character), trio_string_t *self, char character)
 
TRIO_PUBLIC_STRING int trio_xstring_append_max TRIO_ARGS3 ((self, other, max), trio_string_t *self, TRIO_CONST char *other, size_t max)
 
TRIO_PUBLIC_STRING trio_string_t *trio_string_duplicate TRIO_ARGS1 ((other), trio_string_t *other)
 
TRIO_PUBLIC_STRING trio_string_t *trio_xstring_duplicate TRIO_ARGS1 ((other), TRIO_CONST char *other)
 
TRIO_PUBLIC_STRING int trio_string_equal_max TRIO_ARGS3 ((self, max, other), trio_string_t *self, size_t max, trio_string_t *other)
 
TRIO_PUBLIC_STRING int trio_xstring_equal_max TRIO_ARGS3 ((self, max, other), trio_string_t *self, size_t max, TRIO_CONST char *other)
 
TRIO_PUBLIC_STRING size_t trio_string_format_date_max TRIO_ARGS4 ((self, max, format, datetime), trio_string_t *self, size_t max, TRIO_CONST char *format, TRIO_CONST struct tm *datetime)
 
TRIO_PUBLIC_STRING char *trio_string_index TRIO_ARGS2 ((self, character), trio_string_t *self, int character)
 

Macro Definition Documentation

◆ BOOLEAN_T

#define BOOLEAN_T   int

◆ FALSE

#define FALSE   (1 == 0)

◆ NIL

#define NIL   ((char)0)

◆ NULL

#define NULL   0

◆ TRIO_FUNC_INTERNAL_TO_UPPER

#define TRIO_FUNC_INTERNAL_TO_UPPER

◆ trio_powl

#define trio_powl (   x,
  y 
)    pow((double)(x), (double)(y))

◆ TRIO_PRIVATE_STRING

#define TRIO_PRIVATE_STRING   TRIO_PRIVATE

◆ TRUE

#define TRUE   (!FALSE)

◆ USE_MATH

#define USE_MATH