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 as GPL (General Public License) ||| See the files COPYING and DISCLAIMER for more information. \*/ /*
-
* $Id: program.h,v 1.
159
2002/05/
10
15
:
31
:
43
grubba
Exp $
+
* $Id: program.h,v 1.
160
2002/05/
11
21
:
08
:
00
mast
Exp $
*/ #ifndef PROGRAM_H #define PROGRAM_H #include <stdarg.h> #include "global.h" #include "pike_types.h" #include "pike_macros.h" #include "svalue.h" #include "time_stuff.h"
pike.git/src/program.h:146:
union idptr { void (*c_fun)(INT32); ptrdiff_t offset; }; #define IDENTIFIER_PIKE_FUNCTION 1 #define IDENTIFIER_C_FUNCTION 2 #define IDENTIFIER_FUNCTION 3 #define IDENTIFIER_CONSTANT 4
-
#define IDENTIFIER_VARARGS 8
+
#define IDENTIFIER_VARARGS 8
/* Used for functions only. */
#define IDENTIFIER_PROTOTYPED 16 #define IDENTIFIER_SCOPED 32 /* This is used for local functions only */ #define IDENTIFIER_SCOPE_USED 64 /* contains scoped local functions */ #define IDENTIFIER_ALIAS 128 /* This identifier is an alias. */ #define IDENTIFIER_IS_FUNCTION(X) ((X) & IDENTIFIER_FUNCTION) #define IDENTIFIER_IS_PIKE_FUNCTION(X) ((X) & IDENTIFIER_PIKE_FUNCTION) #define IDENTIFIER_IS_CONSTANT(X) ((X) & IDENTIFIER_CONSTANT) #define IDENTIFIER_IS_VARIABLE(X) (!((X) & (IDENTIFIER_FUNCTION | IDENTIFIER_CONSTANT))) #define IDENTIFIER_IS_ALIAS(X) ((X) & IDENTIFIER_ALIAS) #define IDENTIFIER_MASK 255 /* * Every constant, class, function and variable
-
*
get's
exactly one of these.
+
*
gets
exactly one of these.
*/ struct identifier { struct pike_string *name; struct pike_type *type; unsigned INT8 identifier_flags; /* IDENTIFIER_??? */ unsigned INT8 run_time_type; /* PIKE_T_??? */ unsigned INT16 opt_flags; /* OPT_??? */ #ifdef PROFILING unsigned INT32 num_calls;
pike.git/src/program.h:448:
/* Prototypes begin here */ void ins_int(INT32 i, void (*func)(char tmp)); void ins_short(INT16 i, void (*func)(char tmp)); void add_relocated_int_to_program(INT32 i); void use_module(struct svalue *s); void unuse_modules(INT32 howmany); struct node_s *find_module_identifier(struct pike_string *ident, int see_inherit); struct node_s *resolve_identifier(struct pike_string *ident);
+
struct node_s *program_magic_identifier (struct program_state *state,
+
int state_depth, int inherit_num,
+
struct pike_string *ident,
+
int colon_colon_ref);
struct program *parent_compilation(int level); struct program *id_to_program(INT32 id); void optimize_program(struct program *p); int program_function_index_compare(const void *a,const void *b); struct pike_string *find_program_name(struct program *p, INT32 *line); int override_identifier (struct reference *ref, struct pike_string *name, int cur_id); void fixate_program(void); struct program *low_allocate_program(void); void low_start_new_program(struct program *p, struct pike_string *name,