mercurial/demandload.py
author mpm@selenic.com
Sat, 02 Jul 2005 19:57:47 -0800
changeset 589 4be4d4580467
parent 262 3db700146536
child 1826 f3abe0bdccdd
permissions -rw-r--r--
[PATCH] bring MANIFEST.in up to date -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 [PATCH] bring MANIFEST.in up to date From: Andrew Thompson <andrewkt@aktzero.com> Some files were not coming over when I did python setup.py sdist I included MANIFEST.in for completeness, but I'm not sure if it should be in there. manifest hash: 9e055bea2829035685f8a4a9aaf07ee3f9785e1d -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCx2I7ywK+sNU5EO8RAl0EAJ9hwuKskuBwcSM46hqZY30JkMq8swCgnQVI 9FeppaKIUC3z2YMzhFHxRUQ= =3xJV -----END PGP SIGNATURE-----

def demandload(scope, modules):
    class d:
        def __getattr__(self, name):
            mod = self.__dict__["mod"]
            scope = self.__dict__["scope"]
            scope[mod] = __import__(mod, scope, scope, [])
            return getattr(scope[mod], name)

    for m in modules.split():
        dl = d()
        dl.mod = m
        dl.scope = scope
        scope[m] = dl