pike.git / src / program.h

version» Context lines:

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,