[Tizen_6_build] Fixed 32-bit arm build with gcc 9
[platform/upstream/boost-jam.git] / modules.h
1 /*
2  *  Copyright 2001-2004 David Abrahams.
3  *  Distributed under the Boost Software License, Version 1.0.
4  *  (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
5  */
6 #ifndef MODULES_DWA10182001_H
7 # define MODULES_DWA10182001_H
8
9 #include "lists.h"
10
11 struct module_t
12 {
13     char* name;
14     struct hash* rules;
15     struct hash* variables;
16     struct hash* imported_modules;
17     struct module_t* class_module;
18     struct hash* native_rules;
19     int user_module;
20 };
21
22 typedef struct module_t module_t ; /* MSVC debugger gets confused unless this is provided */
23
24 module_t* bindmodule( char* name );
25 module_t* root_module();
26 void enter_module( module_t* );
27 void exit_module( module_t* );
28 void delete_module( module_t* );
29
30 void import_module(LIST* module_names, module_t* target_module);
31 LIST* imported_modules(module_t* module);
32
33 struct hash* demand_rules( module_t* );
34
35
36 #endif
37