* methodpool: Clean up the parsed module list handling to be slightly less insane
@ 2012-08-22 12:53 Richard Purdie
0 siblings, 0 replies; only message in thread
From: Richard Purdie @ 2012-08-22 12:53 UTC (permalink / raw)
To: bitbake-devel
This removes some dubious functions and replaces them with a simpler, cleaner
API which better describes what the code is doing. Unused code/variables are
removed and comments tweaked.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/bitbake/lib/bb/methodpool.py b/bitbake/lib/bb/methodpool.py
index 3b8e5c1..2fb5d96 100644
--- a/bitbake/lib/bb/methodpool.py
+++ b/bitbake/lib/bb/methodpool.py
@@ -33,9 +33,7 @@
from bb.utils import better_compile, better_exec
from bb import error
-# A dict of modules we have handled
-# it is the number of .bbclasses + x in size
-_parsed_methods = { }
+# A dict of function names we have seen
_parsed_fns = { }
def insert_method(modulename, code, fn):
@@ -56,15 +54,18 @@ def insert_method(modulename, code, fn):
else:
_parsed_fns[name] = modulename
+# A dict of modules the parser has finished with
+_parsed_methods = {}
+
def parsed_module(modulename):
"""
- Inform me file xyz was parsed
+ Has module been parsed?
"""
return modulename in _parsed_methods
-
-def get_parsed_dict():
+def set_parsed_module(modulename):
"""
- shortcut
+ Set module as parsed
"""
- return _parsed_methods
+ _parsed_methods[modulename] = True
+
diff --git a/bitbake/lib/bb/parse/ast.py b/bitbake/lib/bb/parse/ast.py
index b88d5f5..4d3a623 100644
--- a/bitbake/lib/bb/parse/ast.py
+++ b/bitbake/lib/bb/parse/ast.py
@@ -31,7 +31,6 @@ import itertools
from bb import methodpool
from bb.parse import logger
-__parsed_methods__ = bb.methodpool.get_parsed_dict()
_bbversions_re = re.compile(r"\[(?P<from>[0-9]+)-(?P<to>[0-9]+)\]")
class StatementGroup(list):
diff --git a/bitbake/lib/bb/parse/parse_py/BBHandler.py b/bitbake/lib/bb/parse/parse_py/BBHandler.py
index 625a2a2..2e0647b 100644
--- a/bitbake/lib/bb/parse/parse_py/BBHandler.py
+++ b/bitbake/lib/bb/parse/parse_py/BBHandler.py
@@ -161,7 +161,7 @@ def handle(fn, d, include):
# we have parsed the bb class now
if ext == ".bbclass" or ext == ".inc":
- bb.methodpool.get_parsed_dict()[base_name] = 1
+ bb.methodpool.set_parsed_module(base_name)
return d
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2012-08-22 13:05 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-22 12:53 methodpool: Clean up the parsed module list handling to be slightly less insane Richard Purdie
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.