aboutsummaryrefslogtreecommitdiffstats
path: root/libenv_select_name_list.3
diff options
context:
space:
mode:
authorMattias Andrée <m@maandree.se>2025-01-30 18:42:27 +0100
committerMattias Andrée <m@maandree.se>2025-01-30 18:42:27 +0100
commitaebf2524909f0c0e3aec7f78fa01ad908f7da3a0 (patch)
tree86881e1b1b299990e6726eda5dde3f1f77c4f180 /libenv_select_name_list.3
downloadlibenv-aebf2524909f0c0e3aec7f78fa01ad908f7da3a0.tar.gz
libenv-aebf2524909f0c0e3aec7f78fa01ad908f7da3a0.tar.bz2
libenv-aebf2524909f0c0e3aec7f78fa01ad908f7da3a0.tar.xz
First commit
Signed-off-by: Mattias Andrée <m@maandree.se>
Diffstat (limited to '')
-rw-r--r--libenv_select_name_list.382
1 files changed, 82 insertions, 0 deletions
diff --git a/libenv_select_name_list.3 b/libenv_select_name_list.3
new file mode 100644
index 0000000..6addcd1
--- /dev/null
+++ b/libenv_select_name_list.3
@@ -0,0 +1,82 @@
+.TH LIBENV_SELECT_NAME_LIST 3 libenv
+.SH NAME
+libenv_select_name_list - Keep wanted environment variables
+
+.SH SYNOPSIS
+.nf
+#include <libenv.h>
+
+size_t libenv_select_name_list(const char **\fIvariables\fP, /* enum libenv_class */ ... /*, LIBENV_END */);
+size_t libenv_vselect_name_list(const char **\fIvariables\fP, va_list \fIclasses\fP);
+size_t libenv_select_name_list_with_dealloc(char **\fIvariables\fP, /* enum libenv_class */ ... /*, LIBENV_END */);
+size_t libenv_vselect_name_list_with_dealloc(char **\fIvariables\fP, va_list \fIclasses\fP);
+.fi
+.PP
+Link with
+.IR -lenv .
+
+.SH DESCRIPTION
+The
+.BR libenv_select_name_list ()
+function removes element in
+.I variables
+that matches the name of an environment variable that
+do not belong to ant of the environment variable classes
+listed after the
+.I variables
+argument. The list must end with
+.I LIBENV_END
+to mark indicate to the function that there are no
+more arguments to read.
+.PP
+.I variables
+should be a
+.I NULL
+terminated list, but may be
+.IR NULL .
+.PP
+The
+.BR libenv_select_name_list_with_dealloc ()
+fucntion is a variant of the
+.BR libenv_select_name_list ()
+function that deallocates, using the
+.BR free (3)
+function, any remove element.
+.PP
+The
+.BR libenv_vselect_name_list ()
+and
+.BR libenv_vselect_name_list_with_dealloc ()
+functions are variants of the
+.BR libenv_select_name_list ()
+and
+.BR libenv_select_name_list_with_dealloc ()
+functions, respectively, that uses
+.I va_list
+instead of being properly variadic.
+
+.SH RETURN VALUE
+The
+.BR libenv_select_name_list (),
+.BR libenv_vselect_name_list (),
+.BR libenv_select_name_list_with_dealloc (),
+and
+.BR libenv_vselect_name_list_with_dealloc ()
+functions return the new number of elements in
+.IR variables ,
+exclucing the
+.I NULL
+element at the end of the list.
+0 if
+.I variables
+is
+.IR NULL .
+
+.SH ERRORS
+None.
+
+.SH SEE ALSO
+.BR libenv (7),
+.BR enum_libenv_class (3),
+.BR libenv_select_variable_list (3),
+.BR libenv_filter_name_list (3).