The reload function is in the imp module
[mudpy.git] / lib / mudpy / __init__.py
1 # -*- coding: utf-8 -*-
2 """Core modules package for the mudpy engine."""
3
4 # Copyright (c) 2004-2013 Jeremy Stanley <fungi@yuggoth.org>. Permission
5 # to use, copy, modify, and distribute this software is granted under
6 # terms provided in the LICENSE file distributed with this software.
7
8
9 def load():
10     """Import/reload some modules (be careful, as this can result in loops)."""
11
12     import imp
13
14     # pick up the modules list from this package
15     global modules
16
17     # iterate over the list of modules provided
18     for module in modules:
19
20         # attempt to reload the module, assuming it was probably imported
21         # earlier
22         try:
23             exec("imp.reload(%s)" % module)
24
25         # must not have been, so import it now
26         except NameError:
27             exec("import mudpy.%s" % module)
28
29 # load the modules contained in this package
30 modules = ["data", "misc", "password", "telnet"]
31 load()