pike.git
/
src
/
program.h
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/program.h:1:
/* || This file is part of Pike. For copyright information see COPYRIGHT. || Pike is distributed under GPL, LGPL and MPL. See the file COPYING || for more information.
-
|| $Id: program.h,v 1.
236
2007
/
12
/
28
13
:
38
:
16
nilsson
Exp $
+
|| $Id: program.h,v 1.
237
2008
/
04
/
14
10
:
14
:
41
grubba
Exp $
*/ #ifndef PROGRAM_H #define PROGRAM_H #include <stdarg.h> #include "global.h" #include "pike_macros.h" #include "pike_error.h" #include "svalue.h"
pike.git/src/program.h:652:
if (gc_external_refs_zapped) \ gc_check_zapped (_, PIKE_T_PROGRAM, __FILE__, __LINE__))); \ if(!sub_ref(_)) \ really_free_program(_); \ }while(0) #endif BLOCK_ALLOC_FILL_PAGES(program, n/a);
-
extern struct object *error_handler;
-
extern struct object *compat_handler;
-
+
extern struct program *first_program; extern struct program *null_program;
-
+
extern struct program *compilation_program;
extern struct program *pike_trampoline_program; extern struct program *gc_internal_program; extern struct program *placeholder_program; extern struct object *placeholder_object; extern int compilation_depth; /* Flags for identifier finding... */ #define SEE_STATIC 1 #define SEE_PRIVATE 2
pike.git/src/program.h:688:
typedef int supporter_callback (void *, int); struct Supporter { #ifdef PIKE_DEBUG int magic; #endif struct Supporter *previous; struct Supporter *depends_on; struct Supporter *dependants; struct Supporter *next_dependant;
+
struct object *self;
supporter_callback *fun; void *data; struct program *prog; };
-
-
+
/* Prototypes begin here */ PMOD_EXPORT void do_free_program (struct program *p); 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);
pike.git/src/program.h:880:
struct supporter_marker; 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); struct compilation; void run_pass2(struct compilation *c);
+
void enter_compiler(struct pike_string *filename, int linenumber);
+
void exit_compiler(void);
struct 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,