aboutsummaryrefslogtreecommitdiff
path: root/tmux.h
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2013-05-31 21:44:42 +0100
committerThomas Adam <thomas@xteddy.org>2013-05-31 21:44:42 +0100
commit399d7380a5babec8179d6e3334a5cabfa8e2fade (patch)
tree6181faf6951c0263e48f1f49699a2626aeefc02a /tmux.h
parent2ee9c4df12429d4f6fb8f06a373fdd5c0347049c (diff)
parentc231381aa3a22340e787baaf78781d9b8ecd6a2c (diff)
downloadrtmux-399d7380a5babec8179d6e3334a5cabfa8e2fade.tar.gz
rtmux-399d7380a5babec8179d6e3334a5cabfa8e2fade.tar.bz2
rtmux-399d7380a5babec8179d6e3334a5cabfa8e2fade.zip
Merge branch 'obsd-master'
Diffstat (limited to 'tmux.h')
-rw-r--r--tmux.h19
1 files changed, 13 insertions, 6 deletions
diff --git a/tmux.h b/tmux.h
index e6c3bbc0..9ab9f58d 100644
--- a/tmux.h
+++ b/tmux.h
@@ -1357,13 +1357,18 @@ struct client {
};
ARRAY_DECL(clients, struct client *);
-/* Parsed arguments. */
-struct args {
- bitstr_t *flags;
- char *values[SCHAR_MAX]; /* XXX This is awfully big. */
+/* Parsed arguments structures. */
+struct args_entry {
+ u_char flag;
+ char *value;
+ RB_ENTRY(args_entry) entry;
+};
+RB_HEAD(args_tree, args_entry);
- int argc;
- char **argv;
+struct args {
+ struct args_tree tree;
+ int argc;
+ char **argv;
};
/* Command and list of commands. */
@@ -1720,6 +1725,8 @@ extern const char clock_table[14][5][5];
void clock_draw(struct screen_write_ctx *, int, int);
/* 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_parse(const char *, int, char **);
void args_free(struct args *);