All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Loading...
Searching...
No Matches
fmt.h File Reference

String formatting API. More...

Detailed Description

String formatting API.

Author
Kaspar Schleiser kaspa.nosp@m.r@sc.nosp@m.hleis.nosp@m.er.d.nosp@m.e

Definition in file fmt.h.

#include <stddef.h>
#include <stdint.h>
#include <unistd.h>
+ Include dependency graph for fmt.h:

Go to the source code of this file.

Macros

#define FMT_USE_MEMMOVE   (1)
 use memmove() or internal implementation
 

Functions

static int fmt_is_digit (char c)
 Test if the given character is a numerical digit (regex [0-9])
 
static int fmt_is_upper (char c)
 Test if the given character is an uppercase letter (regex [A-Z])
 
int fmt_is_number (const char *str)
 Test if the given string is a number (regex [0-9]+)
 
size_t fmt_byte_hex (char *out, uint8_t byte)
 Format a byte value as hex.
 
size_t fmt_bytes_hex (char *out, const uint8_t *ptr, size_t n)
 Formats a sequence of bytes as hex characters.
 
size_t fmt_bytes_hex_reverse (char *out, const uint8_t *ptr, size_t n)
 Formats a sequence of bytes as hex characters, starting with the last byte.
 
uint8_t fmt_hex_byte (const char *hex)
 Converts a sequence of two hex characters to a byte.
 
size_t fmt_hex_bytes (uint8_t *out, const char *hex)
 Converts a sequence of hex characters to an array of bytes.
 
size_t fmt_u16_hex (char *out, uint16_t val)
 Convert a uint16 value to hex string.
 
size_t fmt_u32_hex (char *out, uint32_t val)
 Convert a uint32 value to hex string.
 
size_t fmt_u64_hex (char *out, uint64_t val)
 Convert a uint64 value to hex string.
 
size_t fmt_u16_dec (char *out, uint16_t val)
 Convert a uint16 value to decimal string.
 
size_t fmt_u32_dec (char *out, uint32_t val)
 Convert a uint32 value to decimal string.
 
size_t fmt_u64_dec (char *out, uint64_t val)
 Convert a uint64 value to decimal string.
 
size_t fmt_s64_dec (char *out, int64_t val)
 Convert a int64 value to decimal string.
 
size_t fmt_s32_dec (char *out, int32_t val)
 Convert a int32 value to decimal string.
 
size_t fmt_s16_dec (char *out, int16_t val)
 Convert a int16 value to decimal string.
 
size_t fmt_s16_dfp (char *out, int16_t val, int scale)
 Convert 16-bit fixed point number to a decimal string.
 
size_t fmt_s32_dfp (char *out, int32_t val, int scale)
 Convert 32-bit fixed point number to a decimal string.
 
size_t fmt_float (char *out, float f, unsigned precision)
 Format float to string.
 
size_t fmt_char (char *out, char c)
 Copy in char to string (without terminating '\0')
 
size_t fmt_strlen (const char *str)
 Count characters until '\0' (exclusive) in str.
 
size_t fmt_strnlen (const char *str, size_t maxlen)
 Count at most maxlen characters until '\0' (exclusive) in str.
 
size_t fmt_str (char *out, const char *str)
 Copy null-terminated string (excluding terminating \0)
 
size_t fmt_to_lower (char *out, const char *str)
 Copy null-terminated string to a lowercase string (excluding terminating \0)
 
uint32_t scn_u32_dec (const char *str, size_t n)
 Convert string of decimal digits to uint32.
 
uint32_t scn_u32_hex (const char *str, size_t n)
 Convert string hexadecimal digits to uin32_t.
 
ssize_t scn_buf_hex (void *dest, size_t dest_len, const char *hex, size_t hex_len)
 Convert a hex to binary.
 
void print (const char *s, size_t n)
 Print string to stdout.
 
void print_u32_dec (uint32_t val)
 Print uint32 value to stdout.
 
void print_s32_dec (int32_t val)
 Print int32 value to stdout.
 
void print_byte_hex (uint8_t byte)
 Print byte value as hex to stdout.
 
void print_bytes_hex (const void *bytes, size_t n)
 Print bytes as hex to stdout.
 
void print_u32_hex (uint32_t val)
 Print uint32 value as hex to stdout.
 
void print_u64_hex (uint64_t val)
 Print uint64 value as hex to stdout.
 
void print_u64_dec (uint64_t val)
 Print uint64 value as decimal to stdout.
 
void print_s64_dec (uint64_t val)
 Print int64 value as decimal to stdout.
 
void print_float (float f, unsigned precision)
 Print float value.
 
void print_str (const char *str)
 Print null-terminated string to stdout.
 
size_t fmt_lpad (char *str, size_t in_len, size_t pad_len, char pad_char)
 Pad string to the left.