1 /* Program type definitions. */ 2 3 #include <stdlib.h> 4 #include "types.h" 5 6 /* Common operations. */ 7 8 __attr __new(const __table *table, __ref cls, size_t size); 9 10 __fragment *__new_fragment(unsigned int n); 11 12 void __newdata_sequence(__attr args[], unsigned int number); 13 14 #ifdef __HAVE___builtins___dict_dict 15 void __newdata_mapping(__attr args[], unsigned int number); 16 #endif /* __HAVE___builtins___dict_dict */ 17 18 /* Exception raising. */ 19 20 #ifdef __HAVE___builtins___exception_io_EOFError 21 void __raise_eof_error(); 22 #endif /* __HAVE___builtins___exception_io_EOFError */ 23 24 #ifdef __HAVE___builtins___exception_io_IOError 25 void __raise_io_error(__attr value); 26 #endif /* __HAVE___builtins___exception_io_IOError */ 27 28 void __raise_memory_error(); 29 void __raise_overflow_error(); 30 void __raise_zero_division_error(); 31 void __raise_type_error(); 32 __attr __ensure_instance(__attr arg); 33 34 /* Generic invocation operations. */ 35 36 __attr __invoke(__attr callable, int always_callable, 37 unsigned int nkwargs, __param kwcodes[], __attr kwargs[], 38 unsigned int nargs, __attr args[]); 39 40 /* Error routines. */ 41 42 __attr __unbound_method(__attr args[]); 43 44 /* Generic operations depending on specific program details. */ 45 46 void __SETDEFAULT(__ref obj, int pos, __attr value); 47 48 __attr __GETDEFAULT(__ref obj, int pos); 49 50 int __BOOL(__attr attr);