1 #include <locale.h> 2 #include <langinfo.h> 3 #include <caml/mlvalues.h> 4 #include <caml/memory.h> 5 #include <caml/alloc.h> 6 caml_setlocale(value locale)7value caml_setlocale(value locale){ 8 CAMLparam1 (locale); 9 setlocale (LC_ALL, String_val (locale)); 10 CAMLreturn (Val_int (0)); 11 } 12 get_enc(value unit)13value get_enc(value unit){ 14 CAMLparam1 (unit); 15 char *s; 16 s = nl_langinfo (CODESET); 17 if (s == NULL) s = "INVARIANT"; 18 CAMLreturn (copy_string (s)); 19 } 20