pike.git
/
src
/
program.h
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/program.h:725:
ATTRIBUTE((malloc)) PMOD_EXPORT struct program * alloc_program(void); PMOD_EXPORT void really_free_program(struct program * p); void count_memory_in_programs(size_t *num, size_t *_size); void free_all_program_blocks(void); extern struct program *first_program; extern struct program *null_program;
-
extern struct program *compilation_env_program;
-
extern struct program *compilation_program;
-
extern struct object *compilation_environment;
+
extern struct program *pike_trampoline_program; extern struct program *gc_internal_program; extern struct program *placeholder_program; extern struct object *placeholder_object; /* Flags for identifier finding... */ #define SEE_STATIC 1 #define SEE_PROTECTED 1 #define SEE_PRIVATE 2
pike.git/src/program.h:758:
#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 BAR(NUMTYPE,TYPE,ARGTYPE,NAME) \ void PIKE_CONCAT(low_add_many_to_,NAME)(struct program_state *state, ARGTYPE *ARG, NUMTYPE cnt); \ void PIKE_CONCAT(add_to_,NAME)(ARGTYPE ARG); #include "program_areas.h"
-
typedef int supporter_callback (void *, int);
-
-
struct Supporter
-
{
-
#ifdef PIKE_DEBUG
-
int magic;
-
#endif
-
-
struct Supporter *previous;
-
/* Makes up a linked list of supporters with the first one in
-
* current_supporter. Supporters are linked onto this list during
-
* the (recursive) compilation of each compilation unit (i.e.
-
* compiled string). Thus nested programs and programs built from C
-
* don't have supporters. */
-
-
struct Supporter *depends_on;
-
/* The supporter furthest in on the current_supporter linked list
-
* that this one depends on. When it gets unlinked from that list,
-
* this becomes a back pointer for the dependants linked list
-
* below. */
-
-
struct Supporter *dependants, *next_dependant;
-
/* dependants points to a linked list of supporters that depends on
-
* this one, and next_dependant makes up the links between those
-
* supporters. A supporter is linked onto this list when it is
-
* unlinked from the current_supporter list. */
-
-
struct object *self;
-
supporter_callback *fun;
-
void *data;
-
-
struct program *prog;
-
/* The top level program in the compilation unit. */
-
};
-
+
/* Prototypes begin here */
-
PMOD_EXPORT void lock_pike_compiler(void);
-
PMOD_EXPORT void unlock_pike_compiler(void);
+
PMOD_EXPORT void do_free_program (struct program *p); void ins_int(INT32 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 *find_predef_identifier(struct pike_string *ident); node *resolve_identifier(struct pike_string *ident); PMOD_EXPORT struct program *resolve_program(struct pike_string *ident);
pike.git/src/program.h:1018:
struct pike_type *expected_t, struct pike_string *got_file, INT_TYPE got_line, struct pike_type *got_t, INT32 args, const char *fmt, ...); void yytype_error(const char *msg, struct pike_type *expected_t, struct pike_type *got_t, unsigned int flags); struct pike_string *format_exception_for_error_msg (struct svalue *thrown); void handle_compile_exception (const char *yyerror_fmt, ...); struct supporter_marker; void count_memory_in_supporter_markers(size_t *num, size_t *size);
-
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);
-
PMOD_EXPORT void enter_compiler(struct pike_string *filename,
-
INT_TYPE linenumber);
-
PMOD_EXPORT 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 low_quick_add_function(struct pike_string *name_tmp, 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);