Introduction to Library Functions STROPT(3)
NAME
stropt - table driven option expression evaluator
SYNOPSIS
#include <namval.h>
int stropt(char* s, struct namval* tab,
int (*fun)(void* a, struct namval* p, int n,
char* v),
void* a)
DESCRIPTION
stropt parses option expressions in the nul-terminated
string s using the option names in tab. tab is an array of
struct namval name value pairs:
char* name;
int value;
The last entry must be followed by a sentinel with name set
to 0.
An option expression contains 0 or more of [no]name[=value]
separate by space or tab, where name must be one of the
option names in tab, value is an optional value, and no is
for Boolean options. Each option is passed to fun for pro-
cessing. a is the void* pointer that is passed from the
stropt call but is otherwise not interpreted. p points to
the option name value pair from tab. n is 0 if no preceeded
the option name and v points to the beginning of the option
value in s. and If name is not found in tab then fun is
called with p pointing to an internal namval entry with
p->name pointing to the unknown option and p->value set to
the value of the sentinel entry in tab.
If fun returns non-zero then this value is returned and no
further options are processed. Otherwise stropt returns 0
after processing all options.
SunOS 5.10 Last change: 1
Generated by GNU enscript 1.6.4.