|
Classes |
| union | idptr |
| struct | identifier |
| struct | program_constant |
| struct | reference |
| struct | inherit |
| struct | pike_trampoline |
| struct | parent_info |
| struct | program |
| struct | Supporter |
Defines |
| #define | COMPILATION_CHECK_FINAL 0x01 |
| #define | COMPILATION_FORCE_RESOLVE 0x02 |
| #define | DO_IF_FRD(X) |
| #define | SET_FORCE_RESOLVE(OLD) |
| #define | UNSET_FORCE_RESOLVE(OLD) |
| #define | LFUN___INIT 0 |
| #define | LFUN_CREATE 1 |
| #define | LFUN_DESTROY 2 |
| #define | LFUN_ADD 3 |
| #define | LFUN_SUBTRACT 4 |
| #define | LFUN_AND 5 |
| #define | LFUN_OR 6 |
| #define | LFUN_XOR 7 |
| #define | LFUN_LSH 8 |
| #define | LFUN_RSH 9 |
| #define | LFUN_MULTIPLY 10 |
| #define | LFUN_DIVIDE 11 |
| #define | LFUN_MOD 12 |
| #define | LFUN_COMPL 13 |
| #define | LFUN_EQ 14 |
| #define | LFUN_LT 15 |
| #define | LFUN_GT 16 |
| #define | LFUN___HASH 17 |
| #define | LFUN_CAST 18 |
| #define | LFUN_NOT 19 |
| #define | LFUN_INDEX 20 |
| #define | LFUN_ASSIGN_INDEX 21 |
| #define | LFUN_ARROW 22 |
| #define | LFUN_ASSIGN_ARROW 23 |
| #define | LFUN__SIZEOF 24 |
| #define | LFUN__INDICES 25 |
| #define | LFUN__VALUES 26 |
| #define | LFUN_CALL 27 |
| #define | LFUN_RADD 28 |
| #define | LFUN_RSUBTRACT 29 |
| #define | LFUN_RAND 30 |
| #define | LFUN_ROR 31 |
| #define | LFUN_RXOR 32 |
| #define | LFUN_RLSH 33 |
| #define | LFUN_RRSH 34 |
| #define | LFUN_RMULTIPLY 35 |
| #define | LFUN_RDIVIDE 36 |
| #define | LFUN_RMOD 37 |
| #define | LFUN_ADD_EQ 38 |
| #define | LFUN__IS_TYPE 39 |
| #define | LFUN__SPRINTF 40 |
| #define | LFUN__EQUAL 41 |
| #define | LFUN__M_DELETE 42 |
| #define | LFUN__GET_ITERATOR 43 |
| #define | LFUN_RANGE 44 |
| #define | NUM_LFUNS 45 |
| #define | LFUN__SEARCH 45 |
| #define | STRUCT |
| #define | EXTERN |
| #define | PIKE_BYTECODE_PORTABLE -1 |
| #define | PIKE_BYTECODE_DEFAULT 0 |
| #define | PIKE_BYTECODE_GOTO 1 |
| #define | PIKE_BYTECODE_SPARC 2 |
| #define | PIKE_BYTECODE_IA32 3 |
| #define | PIKE_BYTECODE_PPC32 4 |
| #define | PIKE_OPCODE_T unsigned INT8 |
| #define | PIKE_INSTR_T unsigned int |
| #define | IDENTIFIER_VARIABLE 0 |
| #define | IDENTIFIER_PIKE_FUNCTION 1 |
| #define | IDENTIFIER_C_FUNCTION 2 |
| #define | IDENTIFIER_FUNCTION 3 |
| #define | IDENTIFIER_CONSTANT 4 |
| #define | IDENTIFIER_TYPE_MASK 7 |
| #define | IDENTIFIER_VARARGS 8 |
| #define | IDENTIFIER_NO_THIS_REF 8 |
| #define | IDENTIFIER_HAS_BODY 16 |
| #define | IDENTIFIER_SCOPED 32 |
| #define | IDENTIFIER_SCOPE_USED 64 |
| #define | IDENTIFIER_ALIAS 128 |
| #define | IDENTIFIER_IS_FUNCTION(X) ((X) & IDENTIFIER_FUNCTION) |
| #define | IDENTIFIER_IS_PIKE_FUNCTION(X) ((X) & IDENTIFIER_PIKE_FUNCTION) |
| #define | IDENTIFIER_IS_C_FUNCTION(X) ((X) & IDENTIFIER_C_FUNCTION) |
| #define | IDENTIFIER_IS_CONSTANT(X) ((X) & IDENTIFIER_CONSTANT) |
| #define | IDENTIFIER_IS_VARIABLE(X) (!((X) & IDENTIFIER_TYPE_MASK)) |
| #define | IDENTIFIER_IS_ALIAS(X) ((X) & IDENTIFIER_ALIAS) |
| #define | IDENTIFIER_MASK 255 |
| #define | ID_STATIC 0x01 |
| #define | ID_PRIVATE 0x02 |
| #define | ID_NOMASK 0x04 |
| #define | ID_PUBLIC 0x08 |
| #define | ID_PROTECTED 0x10 |
| #define | ID_INLINE 0x20 |
| #define | ID_HIDDEN 0x40 |
| #define | ID_INHERITED 0x80 |
| #define | ID_OPTIONAL 0x100 |
| #define | ID_EXTERN 0x200 |
| #define | ID_VARIANT 0x400 |
| #define | ID_ALIAS 0x800 |
| #define | ID_MODIFIER_MASK 0x0fff |
| #define | ID_STRICT_TYPES 0x8000 |
| #define | ID_SAVE_PARENT 0x10000 |
| #define | ID_DONT_SAVE_PARENT 0x20000 |
| #define | IDREF_MAGIC_THIS -1 |
| #define | OBJECT_PARENT -18 |
| #define | INHERIT_PARENT -17 |
| #define | PROGRAM_OPTIMIZED 1 |
| #define | PROGRAM_FIXED 2 |
| #define | PROGRAM_FINISHED 4 |
| #define | PROGRAM_PASS_1_DONE 8 |
| #define | PROGRAM_DESTRUCT_IMMEDIATE 0x10 |
| #define | PROGRAM_HAS_C_METHODS 0x20 |
| #define | PROGRAM_CONSTANT 0x40 |
| #define | PROGRAM_USES_PARENT 0x80 |
| #define | PROGRAM_NO_WEAK_FREE 0x100 |
| #define | PROGRAM_NO_EXPLICIT_DESTRUCT 0x200 |
| #define | PROGRAM_AVOID_CHECK 0x400 |
| #define | PROGRAM_VIRGIN 0x800 |
| #define | PROGRAM_NEEDS_PARENT 0x1000 |
| #define | PROGRAM_IS_FACET_CLASS 0x1 |
| #define | PROGRAM_IS_PRODUCT_CLASS 0x2 |
| #define | PROG_EVENT_INIT 0 |
| #define | PROG_EVENT_EXIT 1 |
| #define | PROG_EVENT_GC_RECURSE 2 |
| #define | PROG_EVENT_GC_CHECK 3 |
| #define | NUM_PROG_EVENTS 4 |
| #define | LOW_PARENT_INFO(O, P) ((struct parent_info *)(PIKE_OBJ_STORAGE((O)) + (P)->parent_info_storage)) |
| #define | PARENT_INFO(O) LOW_PARENT_INFO( (O), (O)->prog) |
| #define | FOO(NUMTYPE, TYPE, ARGTYPE, NAME) TYPE * NAME ; |
| #define | FOO(NUMTYPE, TYPE, ARGTYPE, NAME) NUMTYPE PIKE_CONCAT(num_,NAME) ; |
| #define | CHECK_IDREF_RANGE(X, P) (X) |
| #define | PTR_FROM_INT(P, X) |
| #define | INHERIT_FROM_PTR(P, X) (dmalloc_touch(struct program *,(P))->inherits + (X)->inherit_offset) |
| #define | PROG_FROM_PTR(P, X) (dmalloc_touch(struct program *,INHERIT_FROM_PTR(P,X)->prog)) |
| #define | ID_FROM_PTR(P, X) (PROG_FROM_PTR(P,X)->identifiers+(X)->identifier_offset) |
| #define | INHERIT_FROM_INT(P, X) INHERIT_FROM_PTR(P, PTR_FROM_INT(P, X)) |
| #define | PROG_FROM_INT(P, X) PROG_FROM_PTR(P, PTR_FROM_INT(P, X)) |
| #define | ID_FROM_INT(P, X) ID_FROM_PTR(P, PTR_FROM_INT(P, X)) |
| #define | FIND_LFUN(P, N) ( dmalloc_touch(struct program *,(P))->flags & PROGRAM_FIXED?((P)->lfuns[(N)]):low_find_lfun((P), (N)) ) |
| #define | QUICK_FIND_LFUN(P, N) (dmalloc_touch(struct program *,(P))->lfuns[N]) |
| #define | free_program(p) |
| #define | SEE_STATIC 1 |
| #define | SEE_PRIVATE 2 |
| #define | COMPILER_IN_CATCH 1 |
| #define | ADD_STORAGE(X) low_add_storage(sizeof(X), ALIGNOF(X),0) |
| #define | STORAGE_NEEDED(X) ((X)->storage_needed - (X)->inherits[0].storage_offset) |
| #define | FOO(NUMTYPE, TYPE, ARGTYPE, NAME) void PIKE_CONCAT(add_to_,NAME(ARGTYPE ARG)); |
| #define | make_program_executable(X) |
| #define | ADD_FUNCTION(NAME, FUNC, TYPE, FLAGS) |
| #define | ADD_PROTOTYPE(NAME, TYPE, FLAGS) ADD_FUNCTION(NAME, 0, TYPE, FLAGS) |
| #define | ADD_FUNCTION2(NAME, FUNC, TYPE, FLAGS, OPT_FLAGS) |
| #define | ADD_PROTOTYPE2(NAME, TYPE, FLAGS, OPT_FLAGS) ADD_FUNCTION2(NAME, 0, TYPE, FLAGS, OPT_FLAGS) |
| #define | ADD_INT_CONSTANT(NAME, CONST, FLAGS) quick_add_integer_constant(NAME, CONSTANT_STRLEN(NAME), CONST, FLAGS) |
| #define | ADD_FLOAT_CONSTANT(NAME, CONST, FLAGS) quick_add_float_constant(NAME, CONSTANT_STRLEN(NAME), CONST, FLAGS) |
| #define | PIKE_MAP_VARIABLE(NAME, OFFSET, TYPE, RTTYPE, FLAGS) |
| #define | MAP_VARIABLE(NAME, TYPE, FLAGS, OFFSET, RTYPE) PIKE_MAP_VARIABLE(NAME, OFFSET, TYPE, RTYPE, FLAGS) |
| #define | ADD_FUNCTION_DTYPE(NAME, FUN, DTYPE, FLAGS) |
| #define | pike_add_function(NAME, CFUN, TYPE, FLAGS) |
| #define | add_function pike_add_function |
| #define | ADD_INHERIT(PROGRAM, FLAGS) low_inherit((PROGRAM), 0, 0, 0, (FLAGS), 0) |
| #define | START_NEW_PROGRAM_ID(ID) |
| #define | end_class(NAME, FLAGS) debug_end_class(NAME, CONSTANT_STRLEN(NAME), FLAGS) |
| #define | end_program debug_end_program |
| #define | start_new_program() debug_start_new_program(__LINE__,__FILE__) |
| #define | gc_cycle_check_program(X, WEAK) gc_cycle_enqueue((gc_cycle_check_cb *) real_gc_cycle_check_program, (X), (WEAK)) |
| #define | Pike_new_program Pike_compiler->new_program |
| #define | TEST_COMPAT(MAJOR, MINOR) |
Typedefs |
| typedef int | supporter_callback (void *, int) |
Functions |
| | BLOCK_ALLOC_FILL_PAGES (program, n/a) |
| void | ins_int (INT32 i, void(*func)(char tmp)) |
| void | ins_short (int i, void(*func)(char tmp)) |
| void | add_relocated_int_to_program (INT32 i) |
| void | use_module (struct svalue *s) |
| void | unuse_modules (INT32 howmany) |
| node * | find_module_identifier (struct pike_string *ident, int see_inherit) |
| node * | resolve_identifier (struct pike_string *ident) |
| node * | program_magic_identifier (struct program_state *state, int state_depth, int inherit_num, struct pike_string *ident, int colon_colon_ref) |
| program * | parent_compilation (int level) |
| program * | id_to_program (INT32 id) |
| void | optimize_program (struct program *p) |
| void | fsort_program_identifier_index (unsigned short *start, unsigned short *end, struct program *p) |
| pike_string * | find_program_name (struct program *p, INT32 *line) |
| int | override_identifier (struct reference *ref, struct pike_string *name) |
| void | fixate_program (void) |
| program * | low_allocate_program (void) |
| void | low_start_new_program (struct program *p, int pass, struct pike_string *name, int flags, int *idp) |
| PMOD_EXPORT void | debug_start_new_program (int line, const char *file) |
| void | dump_program_desc (struct program *p) |
| int | sizeof_variable (int run_time_type) |
| void | dump_program_tables (struct program *p, int indent) |
| void | check_program (struct program *p) |
| program * | end_first_pass (int finish) |
| PMOD_EXPORT struct program * | debug_end_program (void) |
| PMOD_EXPORT size_t | low_add_storage (size_t size, size_t alignment, ptrdiff_t modulo_orig) |
| PMOD_EXPORT void | set_init_callback (void(*init_callback)(struct object *)) |
| PMOD_EXPORT void | set_exit_callback (void(*exit_callback)(struct object *)) |
| PMOD_EXPORT void | set_gc_recurse_callback (void(*m)(struct object *)) |
| PMOD_EXPORT void | set_gc_check_callback (void(*m)(struct object *)) |
| void | pike_set_prog_event_callback (void(*cb)(int)) |
| void | pike_set_prog_optimize_callback (node *(*opt)(node *)) |
| int | really_low_reference_inherited_identifier (struct program_state *q, int e, int i) |
| int | low_reference_inherited_identifier (struct program_state *q, int e, struct pike_string *name, int flags) |
| int | find_inherit (struct program *p, struct pike_string *name) |
| node * | reference_inherited_identifier (struct pike_string *super_name, struct pike_string *function_name) |
| void | rename_last_inherit (struct pike_string *n) |
| void | low_inherit (struct program *p, struct object *parent, int parent_identifier, int parent_offset, INT32 flags, struct pike_string *name) |
| PMOD_EXPORT void | do_inherit (struct svalue *s, INT32 flags, struct pike_string *name) |
| void | compiler_do_inherit (node *n, INT32 flags, struct pike_string *name) |
| int | call_handle_inherit (struct pike_string *s) |
| void | simple_do_inherit (struct pike_string *s, INT32 flags, struct pike_string *name) |
| int | isidentifier (struct pike_string *s) |
| int | low_define_variable (struct pike_string *name, struct pike_type *type, INT32 flags, size_t offset, INT32 run_time_type) |
| PMOD_EXPORT int | map_variable (const char *name, const char *type, INT32 flags, size_t offset, INT32 run_time_type) |
| PMOD_EXPORT int | quick_map_variable (const char *name, int name_length, size_t offset, const char *type, int type_length, INT32 run_time_type, INT32 flags) |
| int | define_variable (struct pike_string *name, struct pike_type *type, INT32 flags) |
| PMOD_EXPORT int | simple_add_variable (const char *name, const char *type, INT32 flags) |
| PMOD_EXPORT int | add_constant (struct pike_string *name, struct svalue *c, INT32 flags) |
| PMOD_EXPORT int | simple_add_constant (const char *name, struct svalue *c, INT32 flags) |
| PMOD_EXPORT int | add_integer_constant (const char *name, INT_ARG_TYPE i, INT32 flags) |
| PMOD_EXPORT int | quick_add_integer_constant (const char *name, int name_length, INT_ARG_TYPE i, INT32 flags) |
| PMOD_EXPORT int | add_float_constant (const char *name, FLOAT_ARG_TYPE f, INT32 flags) |
| PMOD_EXPORT int | quick_add_float_constant (const char *name, int name_length, FLOAT_ARG_TYPE f, INT32 flags) |
| PMOD_EXPORT int | add_string_constant (const char *name, const char *str, INT32 flags) |
| PMOD_EXPORT int | add_program_constant (const char *name, struct program *p, INT32 flags) |
| PMOD_EXPORT int | add_object_constant (const char *name, struct object *o, INT32 flags) |
| PMOD_EXPORT int | add_function_constant (const char *name, void(*cfun)(INT32), const char *type, int flags) |
| PMOD_EXPORT int | debug_end_class (const char *name, ptrdiff_t namelen, INT32 flags) |
| INT32 | define_function (struct pike_string *name, struct pike_type *type, unsigned flags, unsigned function_flags, union idptr *func, unsigned opt_flags) |
| int | really_low_find_shared_string_identifier (struct pike_string *name, struct program *prog, int flags) |
| int | low_find_lfun (struct program *p, ptrdiff_t lfun) |
| int | lfun_lookup_id (struct pike_string *lfun_name) |
| int | low_find_shared_string_identifier (struct pike_string *name, struct program *prog) |
| int | find_shared_string_identifier (struct pike_string *name, struct program *prog) |
| PMOD_EXPORT int | find_identifier (const char *name, struct program *prog) |
| int | store_prog_string (struct pike_string *str) |
| int | store_constant (struct svalue *foo, int equal, struct pike_string *constant_name) |
| array * | program_indices (struct program *p) |
| array * | program_values (struct program *p) |
| void | program_index_no_free (struct svalue *to, struct program *p, struct svalue *ind) |
| int | get_small_number (char **q) |
| void | ext_store_program_line (struct program *prog, INT32 line, struct pike_string *file) |
| void | start_line_numbering (void) |
| void | store_linenumber (INT32 current_line, struct pike_string *current_file) |
| PMOD_EXPORT struct pike_string * | low_get_program_line (struct program *prog, INT32 *linep) |
| PMOD_EXPORT struct pike_string * | get_program_line (struct program *prog, INT32 *linep) |
| PMOD_EXPORT char * | low_get_program_line_plain (struct program *prog, INT32 *linep, int malloced) |
| PMOD_EXPORT struct pike_string * | low_get_line (PIKE_OPCODE_T *pc, struct program *prog, INT32 *linep) |
| PMOD_EXPORT char * | low_get_line_plain (PIKE_OPCODE_T *pc, struct program *prog, INT32 *linep, int malloced) |
| PMOD_EXPORT struct pike_string * | get_line (PIKE_OPCODE_T *pc, struct program *prog, INT32 *linep) |
| PMOD_EXPORT struct pike_string * | low_get_function_line (struct object *o, int fun, INT32 *linep) |
| void | va_yyerror (const char *fmt, va_list args) |
| void | my_yyerror (const char *fmt,...) |
| pike_string * | format_exception_for_error_msg (struct svalue *thrown) |
| void | handle_compile_exception (const char *yyerror_fmt,...) |
| void | verify_supporters (void) |
| void | init_supporter (struct Supporter *s, supporter_callback *fun, void *data) |
| int | unlink_current_supporter (struct Supporter *c) |
| int | call_dependants (struct Supporter *s, int finish) |
| int | report_compiler_dependency (struct program *p) |
| void | run_pass2 (struct compilation *c) |
| program * | compile (struct pike_string *aprog, struct object *ahandler, int amajor, int aminor, struct program *atarget, struct object *aplaceholder) |
| PMOD_EXPORT int | pike_add_function2 (const char *name, void(*cfun)(INT32), const char *type, unsigned flags, unsigned opt_flags) |
| PMOD_EXPORT int | quick_add_function (const char *name, int name_length, void(*cfun)(INT32), const char *type, int type_length, unsigned flags, unsigned opt_flags) |
| void | check_all_programs (void) |
| void | placeholder_index (INT32 args) |
| void | init_program (void) |
| void | cleanup_program (void) |
| void | gc_mark_program_as_referenced (struct program *p) |
| void | real_gc_cycle_check_program (struct program *p, int weak) |
| unsigned | gc_touch_all_programs (void) |
| void | gc_check_all_programs (void) |
| void | gc_mark_all_programs (void) |
| void | gc_cycle_check_all_programs (void) |
| void | gc_zap_ext_weak_refs_in_programs (void) |
| size_t | gc_free_all_unreferenced_programs (void) |
| void | push_compiler_frame (int lexical_scope) |
| void | low_pop_local_variables (int level) |
| void | pop_local_variables (int level) |
| void | pop_compiler_frame (void) |
| ptrdiff_t | low_get_storage (struct program *o, struct program *p) |
| PMOD_EXPORT char * | get_storage (struct object *o, struct program *p) |
| program * | low_program_from_function (struct program *p, INT32 i) |
| PMOD_EXPORT struct program * | program_from_function (const struct svalue *f) |
| PMOD_EXPORT struct program * | program_from_svalue (const struct svalue *s) |
| int | find_child (struct program *parent, struct program *child) |
| void | yywarning (char *fmt,...) |
| PMOD_EXPORT int | implements (struct program *a, struct program *b) |
| PMOD_EXPORT int | is_compatible (struct program *a, struct program *b) |
| void | yyexplain_not_compatible (struct program *a, struct program *b, int flags) |
| void | yyexplain_not_implements (struct program *a, struct program *b, int flags) |
| PMOD_EXPORT void * | parent_storage (int depth) |
| PMOD_EXPORT void | change_compiler_compatibility (int major, int minor) |
| void | make_program_executable (struct program *p) |
| void | really_free_program (struct program *) |
| void | count_memory_in_programs (INT32 *, INT32 *) |
Variables |
| PMOD_PROTO struct program_state * | Pike_compiler |
| pike_string * | this_program_string |
| const char *const | lfun_names [] |
| pike_string * | lfun_strings [] |
| object * | error_handler |
| object * | compat_handler |
| program * | first_program |
| program * | null_program |
| program * | pike_trampoline_program |
| program * | gc_internal_program |
| program * | placeholder_program |
| object * | placeholder_object |
| int | compilation_depth |