#ifndef AWS_COMMON_SHARED_LIBRARY_H
#define AWS_COMMON_SHARED_LIBRARY_H
#include <aws/io/io.h>
struct aws_byte_cursor;
struct aws_shared_library {
void *library_handle;
};
typedef void (*aws_generic_function)(void);
AWS_EXTERN_C_BEGIN
AWS_IO_API
int aws_shared_library_init(struct aws_shared_library *library, const char *library_path);
AWS_IO_API
void aws_shared_library_clean_up(struct aws_shared_library *library);
AWS_IO_API
int aws_shared_library_find_function(
struct aws_shared_library *library,
const char *symbol_name,
aws_generic_function *function_address);
AWS_EXTERN_C_END
#endif