mirror of
https://github.com/boostorg/build.git
synced 2026-02-13 00:12:11 +00:00
for getting the list of variable names and for clearing all rule and variable storage. * compile.c - better error reporting for unknown rules; now it is a hard error. * hash.c/h - added hash_free to allow removal of elements from a hash * rule.c/h - implemented rule freeing; stopped exporting rules to the global module by default. * variable.c - reclaim variable storage when disposing of variable hash. * build.jam - make grammar building work under NT [SVN r18405]
28 lines
793 B
C
28 lines
793 B
C
/* (C) Copyright David Abrahams 2001. Permission to copy, use, modify, sell and
|
|
* distribute this software is granted provided this copyright notice appears
|
|
* in all copies. This software is provided "as is" without express or implied
|
|
* warranty, and with no claim as to its suitability for any purpose.
|
|
*/
|
|
#ifndef MODULES_DWA10182001_H
|
|
# define MODULES_DWA10182001_H
|
|
|
|
struct module
|
|
{
|
|
char* name;
|
|
struct hash* rules;
|
|
struct hash* variables;
|
|
};
|
|
|
|
typedef struct module module; /* MSVC debugger gets confused unless this is provided */
|
|
|
|
module* bindmodule( char* name );
|
|
module* root_module();
|
|
void bind_module_var( module*, char* name );
|
|
void enter_module( module* );
|
|
void exit_module( module* );
|
|
void delete_module( module* );
|
|
struct hash* demand_rules( module* );
|
|
|
|
#endif
|
|
|