diff options
author | Patrick Simianer <simianer@cl.uni-heidelberg.de> | 2012-05-13 03:35:30 +0200 |
---|---|---|
committer | Patrick Simianer <simianer@cl.uni-heidelberg.de> | 2012-05-13 03:35:30 +0200 |
commit | 670a8f984fc6d8342180c59ae9e96b0b76f34d3d (patch) | |
tree | 9f2ce7eec1a77e56b3bb1ad0ad40f212d7a996b0 /jam-files/engine/modules.h | |
parent | eb3ee28dc0eb1d3e5ed01ba0df843be329ae450d (diff) | |
parent | 2f64af3e06a518b93f7ca2c30a9d0aeb2c947031 (diff) |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'jam-files/engine/modules.h')
-rw-r--r-- | jam-files/engine/modules.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/jam-files/engine/modules.h b/jam-files/engine/modules.h new file mode 100644 index 00000000..60053a23 --- /dev/null +++ b/jam-files/engine/modules.h @@ -0,0 +1,37 @@ +/* + * Copyright 2001-2004 David Abrahams. + * Distributed under the Boost Software License, Version 1.0. + * (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) + */ +#ifndef MODULES_DWA10182001_H +# define MODULES_DWA10182001_H + +#include "lists.h" + +struct module_t +{ + char* name; + struct hash* rules; + struct hash* variables; + struct hash* imported_modules; + struct module_t* class_module; + struct hash* native_rules; + int user_module; +}; + +typedef struct module_t module_t ; /* MSVC debugger gets confused unless this is provided */ + +module_t* bindmodule( char* name ); +module_t* root_module(); +void enter_module( module_t* ); +void exit_module( module_t* ); +void delete_module( module_t* ); + +void import_module(LIST* module_names, module_t* target_module); +LIST* imported_modules(module_t* module); + +struct hash* demand_rules( module_t* ); + + +#endif + |