version 1.409, 2013/04/24 10:01:32 |
version 1.410, 2013/05/31 12:19:34 |
|
|
}; |
}; |
ARRAY_DECL(clients, struct client *); |
ARRAY_DECL(clients, struct client *); |
|
|
/* Parsed arguments. */ |
/* Parsed arguments structures. */ |
struct args { |
struct args_entry { |
bitstr_t *flags; |
u_char flag; |
char *values[SCHAR_MAX]; /* XXX This is awfully big. */ |
char *value; |
|
RB_ENTRY(args_entry) entry; |
|
}; |
|
RB_HEAD(args_tree, args_entry); |
|
|
int argc; |
struct args { |
char **argv; |
struct args_tree tree; |
|
int argc; |
|
char **argv; |
}; |
}; |
|
|
/* Command and list of commands. */ |
/* Command and list of commands. */ |
|
|
void clock_draw(struct screen_write_ctx *, int, int); |
void clock_draw(struct screen_write_ctx *, int, int); |
|
|
/* arguments.c */ |
/* arguments.c */ |
|
int args_cmp(struct args_entry *, struct args_entry *); |
|
RB_PROTOTYPE(args_tree, args_entry, entry, args_cmp); |
struct args *args_create(int, ...); |
struct args *args_create(int, ...); |
struct args *args_parse(const char *, int, char **); |
struct args *args_parse(const char *, int, char **); |
void args_free(struct args *); |
void args_free(struct args *); |