1 /**************************************************************************/ 2 /* */ 3 /* OCaml */ 4 /* */ 5 /* Xavier Leroy, projet Cristal, INRIA Rocquencourt */ 6 /* */ 7 /* Copyright 1996 Institut National de Recherche en Informatique et */ 8 /* en Automatique. */ 9 /* */ 10 /* All rights reserved. This file is distributed under the terms of */ 11 /* the GNU Lesser General Public License version 2.1, with the */ 12 /* special exception on linking described in the file LICENSE. */ 13 /* */ 14 /**************************************************************************/ 15 16 /* Interface with C primitives. */ 17 18 #ifndef CAML_PRIMS_H 19 #define CAML_PRIMS_H 20 21 #ifdef CAML_INTERNALS 22 23 typedef value (*c_primitive)(); 24 25 extern c_primitive caml_builtin_cprim[]; 26 extern char * caml_names_of_builtin_cprim[]; 27 28 extern struct ext_table caml_prim_table; 29 #ifdef DEBUG 30 extern struct ext_table caml_prim_name_table; 31 #endif 32 33 #define Primitive(n) ((c_primitive)(caml_prim_table.contents[n])) 34 35 extern char * caml_section_table; 36 extern asize_t caml_section_table_size; 37 38 #endif /* CAML_INTERNALS */ 39 40 #endif /* CAML_PRIMS_H */ 41