]> git.alsa-project.org Git - alsa-lib.git/commitdiff
ucm: macro - make argument names shorter
authorJaroslav Kysela <perex@perex.cz>
Thu, 19 May 2022 09:27:37 +0000 (11:27 +0200)
committerJaroslav Kysela <perex@perex.cz>
Thu, 19 May 2022 09:27:40 +0000 (11:27 +0200)
It seems that the use the macro name as the variable prefix is too large.
Use just two underscores as prefix for the macro arguments to make
macro definitions more readable.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
src/ucm/parser.c
src/ucm/ucm_confdoc.h

index b77544ba88f764f7789fd3ec0dba1e4fae42b40a..b5ee62a7525a4ac84117202755924d9db8d20626 100644 (file)
@@ -419,7 +419,7 @@ static int evaluate_macro1(snd_use_case_mgr_t *uc_mgr,
                err = snd_config_get_ascii(n, &var);
                if (err < 0)
                        return err;
-               snprintf(name, sizeof(name), "%s_%s", mid, id);
+               snprintf(name, sizeof(name), "__%s", id);
                err = uc_mgr_set_variable(uc_mgr, name, var);
                free(var);
                if (err < 0)
@@ -444,7 +444,7 @@ static int evaluate_macro1(snd_use_case_mgr_t *uc_mgr,
                err = snd_config_get_id(n, &id);
                if (err < 0)
                        return err;
-               snprintf(name, sizeof(name), "%s_%s", mid, id);
+               snprintf(name, sizeof(name), "__%s", id);
                err = uc_mgr_delete_variable(uc_mgr, name);
                if (err < 0)
                        return err;
index dbaf93afe8658a36cda2253708e0e024d761ccbe..42c331b6140c7f72efa90bf00d81b8996f8f2199 100644 (file)
@@ -461,16 +461,16 @@ macro like:
 
 ~~~{.html}
 DefineMacro.macro1 {
-  Define.a "${var:macro1_arg1}"
-  Define.b "${var:macro1_other}"
+  Define.a "${var:__arg1}"
+  Define.b "${var:__other}"
   # Device or any other block may be defined here...
 }
 ~~~
 
-The arguments in the macro are refered as the variables with the macro
-name prefix and underscore (*'_'*) delimiter. The configuration block
-in the DefineMacro subtree is always evaluated (including arguments
-and variables) at the time of the instantiation.
+The arguments in the macro are refered as the variables with the double
+underscore name prefix (like *__variable*). The configuration block in
+the DefineMacro subtree is always evaluated (including arguments and variables)
+at the time of the instantiation.
 
 The macros can be instantiated (expanded) using: