File prod_weighted.h
File List > prod_weighted > src > prod_weighted.h
Go to the documentation of this file
#ifndef PROD_WEIGHTED_H
#define PROD_WEIGHTED_H
/*************************************************************************************************/
/*************************** Includes ************************************************************/
/*************************************************************************************************/
#include <stddef.h>
#include <stdint.h>
/*************************************************************************************************/
/*************************** Defines *************************************************************/
/*************************************************************************************************/
#define PROD_WEIGHTED_NAME ("weighted")
/*************************************************************************************************/
/*************************** Typedefs ************************************************************/
/*************************************************************************************************/
#ifdef __cplusplus
extern "C"
{
#endif
typedef struct {
char * string;
uint64_t weight;
} prod_weighted_pair_t;
typedef struct {
prod_weighted_pair_t *repl_list;
size_t repl_len;
prod_weighted_pair_t *term_list;
size_t term_len;
} prod_weighted_config_t;
#ifdef __cplusplus
}
#endif
/*************************************************************************************************/
/*************************** Public Function Declarations ****************************************/
/*************************************************************************************************/
#ifdef __cplusplus
extern "C"
{
#endif
const char * prod_weighted_resolve(const void *config);
const char * prod_weighted_terminate(const void *config);
#ifdef __cplusplus
}
#endif
#endif /* end PROD_WEIGHTED_H*/