/[m4]/m4/m4/m4module.h
ViewVC logotype

Diff of /m4/m4/m4module.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.14 by gary, Thu Aug 30 21:57:00 2001 UTC revision 1.15 by gary, Sat Sep 1 20:05:27 2001 UTC
# Line 29  Line 29 
29  #include <m4/error.h>  #include <m4/error.h>
30  #include <m4/ltdl.h>  #include <m4/ltdl.h>
31  #include <m4/system.h>  #include <m4/system.h>
32    #include <m4/hash.h>
33    
34  BEGIN_C_DECLS  BEGIN_C_DECLS
35    
# Line 41  typedef struct m4_token_data m4_token_da Line 42  typedef struct m4_token_data m4_token_da
42    
43  typedef void m4_builtin_func (struct obstack *, int, struct m4_token_data **);  typedef void m4_builtin_func (struct obstack *, int, struct m4_token_data **);
44  typedef void *m4_module_func (const char *);  typedef void *m4_module_func (const char *);
45  typedef void m4_hack_symbol ();  typedef int m4_symtab_apply_func (const char *name, m4_symbol *symbol, void *data);
   
46    
47  typedef struct {  typedef struct {
48      unsigned char *string;      /* characters of the string */      unsigned char *string;      /* characters of the string */
# Line 103  extern const m4_builtin *m4_builtin_find Line 103  extern const m4_builtin *m4_builtin_find
103  extern const m4_builtin *m4_builtin_find_by_func (  extern const m4_builtin *m4_builtin_find_by_func (
104                                  const m4_builtin *, m4_builtin_func *);                                  const m4_builtin *, m4_builtin_func *);
105    
106  extern m4_symbol **m4_symtab;  extern m4_hash *m4_symtab;
107    
108  extern void     m4_symtab_init          (void);  extern void     m4_symtab_init          (void);
109  extern m4_symbol *m4_lookup_symbol      (const char *,  extern m4_symbol *m4_lookup_symbol      (const char *, m4_symbol_lookup);
110                                                     m4_symbol_lookup);  extern int      m4_symtab_apply (m4_symtab_apply_func *, void *);
111  extern void     m4_hack_all_symbols     (m4_hack_symbol *,  extern void     m4_remove_table_reference_symbols (lt_dlhandle);
                                                    const char *);  
 extern void     m4_remove_table_reference_symbols (  
                                                 m4_builtin *, m4_macro *);  
112    
113    
114  /* Various different token types.  */  /* Various different token types.  */
# Line 145  extern boolean         m4_token_data_func_trace Line 142  extern boolean         m4_token_data_func_trace
142    
143  #define M4BUILTIN(name)                                         \  #define M4BUILTIN(name)                                         \
144    static void CONC(builtin_, name)                              \    static void CONC(builtin_, name)                              \
145    (struct obstack *, int , m4_token_data **);          (struct obstack *, int , m4_token_data **);
146    
147  #define M4BUILTIN_HANDLER(name)                                 \  #define M4BUILTIN_HANDLER(name)                                 \
148    static void CONC(builtin_, name) (obs, argc, argv)            \    static void CONC(builtin_, name) (obs, argc, argv)            \
149          struct obstack *obs; int argc; m4_token_data **argv;          struct obstack *obs; int argc; m4_token_data **argv;
150    
151  #define M4INIT_HANDLER(name)                                    \  #define M4INIT_HANDLER(name)                                    \
152    void CONC(name, CONC(_LTX_, m4_init_module)) (handle, obs)    \    void CONC(name, CONC(_LTX_, m4_init_module))                  \
153          lt_dlhandle handle; struct obstack *obs;          (lt_dlhandle handle, struct obstack *obs);              \
154      void CONC(name, CONC(_LTX_, m4_init_module))                  \
155            (lt_dlhandle handle, struct obstack *obs)
156    
157  #define M4FINISH_HANDLER(name)                                  \  #define M4FINISH_HANDLER(name)                                  \
158    void CONC(name, CONC(_LTX_, m4_finish_module)) (handle, obs)  \    void CONC(name, CONC(_LTX_, m4_finish_module))                \
159          lt_dlhandle handle; struct obstack *obs;          (lt_dlhandle handle, struct obstack *obs);              \
160      void CONC(name, CONC(_LTX_, m4_finish_module))                \
161            (lt_dlhandle handle, struct obstack *obs)
162    
163  /* Error handling.  */  /* Error handling.  */
164  #define M4ERROR(Arglist) (error Arglist)  #define M4ERROR(Arglist) (error Arglist)
165    
 #define HASHMAX 509             /* default, overridden by -Hsize */  
   
166  /* The name this program was run with. */  /* The name this program was run with. */
167  const char *program_name;  const char *program_name;
168    
# Line 381  extern m4_token_t m4_next_token (m4_toke Line 380  extern m4_token_t m4_next_token (m4_toke
380  extern  void    m4_skip_line    (void);  extern  void    m4_skip_line    (void);
381    
382  /* push back input */  /* push back input */
383    
384  extern  void    m4_push_file    (FILE *, const char *);  extern  void    m4_push_file    (FILE *, const char *);
385  extern  void    m4_push_single  (int ch);  extern  void    m4_push_single  (int ch);
386  extern  void    m4_push_macro   (m4_builtin_func *, lt_dlhandle,  extern  void    m4_push_macro   (m4_builtin_func *, lt_dlhandle,
# Line 439  extern void    m4_search_path_add (struct m Line 439  extern void    m4_search_path_add (struct m
439  struct m4_dump_symbol_data  struct m4_dump_symbol_data
440  {  {
441    struct obstack *obs;          /* obstack for table */    struct obstack *obs;          /* obstack for table */
442    m4_symbol **base;             /* base of table */    const char **base;            /* base of table */
443    int size;                     /* size of table */    int size;                     /* size of table */
444  };  };
445    
446  extern void m4_dump_symbol (m4_symbol *symbol, struct m4_dump_symbol_data *data);  extern int m4_dump_symbol (const char *name, m4_symbol *symbol, void *data);
447  extern void m4_dump_symbols (struct m4_dump_symbol_data *data, int argc, m4_token_data **argv, boolean complain);  extern void m4_dump_symbols (struct m4_dump_symbol_data *data, int argc, m4_token_data **argv, boolean complain);
448    
449    

Legend:
Removed from v.1.14  
changed lines
  Added in v.1.15

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26