diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-03-02 18:16:33 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-03-03 08:43:32 +0000 |
commit | c6be487f9bd5d95915f2495d555b9f539adb1d44 (patch) | |
tree | 7bdfd263ae0e98b9ccb64c8df8476f669fb1421f /lib/bb/parse | |
parent | 4cfca360891e1ed876a9c19487b4f6210686af26 (diff) | |
download | bitbake-c6be487f9bd5d95915f2495d555b9f539adb1d44.tar.gz |
parse/ast: Abstract anonymous function execution into a function
This allows us to call this code from other contexts without
duplicating it.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/parse')
-rw-r--r-- | lib/bb/parse/ast.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/bb/parse/ast.py b/lib/bb/parse/ast.py index dba4540f5..6690dc51c 100644 --- a/lib/bb/parse/ast.py +++ b/lib/bb/parse/ast.py @@ -335,6 +335,12 @@ def handleInherit(statements, filename, lineno, m): classes = m.group(1) statements.append(InheritNode(filename, lineno, classes)) +def runAnonFuncs(d): + code = [] + for funcname in d.getVar("__BBANONFUNCS", False) or []: + code.append("%s(d)" % funcname) + bb.utils.better_exec("\n".join(code), {"d": d}) + def finalize(fn, d, variant = None): saved_handlers = bb.event.get_handlers().copy() @@ -349,10 +355,7 @@ def finalize(fn, d, variant = None): bb.event.fire(bb.event.RecipePreFinalise(fn), d) bb.data.expandKeys(d) - code = [] - for funcname in d.getVar("__BBANONFUNCS", False) or []: - code.append("%s(d)" % funcname) - bb.utils.better_exec("\n".join(code), {"d": d}) + runAnonFuncs(d) tasklist = d.getVar('__BBTASKS', False) or [] bb.event.fire(bb.event.RecipeTaskPreProcess(fn, list(tasklist)), d) |