#ifndef ARF_H
#define ARF_H
#include <stddef.h>
#include <stdint.h>
#ifndef __cplusplus
#include <stdbool.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
bool arf_is_valid_cstr(const char *cstr)
__attribute__((__pure__, __nonnull__(1), __nothrow__));
bool arf_has_arf_magic(const uint8_t *ptr, size_t len)
__attribute__((__pure__, __nothrow__));
bool arf_is_valid_arf(const uint8_t *ptr, size_t len)
__attribute__((__pure__, __nothrow__));
bool arf_categorize_cstr(const char *cstr, size_t *__restrict__ len)
__attribute__((__nonnull__(1, 2), __nothrow__));
size_t arf_sizeof_cstr_arf(const char *cstr)
__attribute__((__pure__, __nonnull__(1), __nothrow__));
void arf_cstr_arf(const char *cstr, uint8_t *__restrict__ ptr)
__attribute__((__nonnull__(1, 2), __nothrow__));
size_t arf_sizeof_arf_cstr(const uint8_t *ptr, size_t len)
__attribute__((__pure__, __nonnull__(1), __nothrow__));
void arf_arf_cstr(const uint8_t *ptr, size_t len, char *__restrict__ cstr)
__attribute__((__nonnull__(1, 3), __nothrow__));
#ifdef __cplusplus
}
#endif
#endif