#include "grumpy.h"
#include "type_conversion.h"

static const R_CallMethodDef callMethods[] = {
  {"type_convert_int", (DL_FUNC) &type_convert_int, 3},
  {"type_convert_uint", (DL_FUNC) &type_convert_uint, 3},
  {"type_convert_float", (DL_FUNC) &type_convert_float, 3},
  {"type_convert_bool", (DL_FUNC) &type_convert_bool, 3},
  {"type_convert_string", (DL_FUNC) &type_convert_string, 3},
  {"type_convert_unicode", (DL_FUNC) &type_convert_unicode, 4},
  {NULL, NULL, 0}
};

void R_init_grumpy(DllInfo *info)
{
  R_registerRoutines(info, NULL, callMethods, NULL, NULL);
  R_useDynamicSymbols(info, FALSE);
  R_forceSymbols(info, TRUE);
}
