From 26e1db651e18fd65fe7374b404a30e20f601969f Mon Sep 17 00:00:00 2001 From: Ulf Magnusson Date: Wed, 4 Sep 2019 20:44:24 +0200 Subject: Allow preprocessor user functions to access the parsing location Just requires making Kconfig.filename/linenr public. 'lineno' would be a more standard name, but be consistent with MenuNode.linenr. --- tests/kconfigfunctions.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'tests/kconfigfunctions.py') diff --git a/tests/kconfigfunctions.py b/tests/kconfigfunctions.py index e760468..8f35511 100644 --- a/tests/kconfigfunctions.py +++ b/tests/kconfigfunctions.py @@ -1,14 +1,22 @@ def add(kconf, name, *args): return str(sum(map(int, args))) + def one(kconf, name, s): return name + 2*s + def one_or_more(kconf, name, arg, *args): return arg + " + " + ",".join(args) + +def location(kconf, name): + return "{}:{}".format(kconf.filename, kconf.linenr) + + functions = { "add": (add, 0, None), "one": (one, 1, 1), "one-or-more": (one_or_more, 1, None), + "location": (location, 0, 0), } -- cgit v1.2.3