# args_parse_flag_argument

- **Language:** C
- **Kind:** function
- **Source:** https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L147
- **Page:** https://libtmux.org/en/tmux/3.7c/reference/c-function-arguments-c-args_parse_flag_argument/

```c
static int args_parse_flag_argument(struct args_value *values, u_int count, char **cause, struct args *args, u_int *i, const char *string, int flag, int optional_argument)
```

## Parameters

- `values` (`struct args_value *`)
- `count` (`u_int`)
- `cause` (`char **`)
- `args` (`struct args *`)
- `i` (`u_int *`)
- `string` (`const char *`)
- `flag` (`int`)
- `optional_argument` (`int`)

## Called by

- [`args_parse_flags`](/en/tmux/3.7c/reference/c-function-arguments-c-args_parse_flags/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L237)

## Calls

- [`args_copy_value`](/en/tmux/3.7c/reference/c-function-arguments-c-args_copy_value/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L183)
- [`args_free_value`](/en/tmux/3.7c/reference/c-function-args_free_value/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L167)
- [`args_set`](/en/tmux/3.7c/reference/c-function-args_set/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L189)
- [`args_value_as_string`](/en/tmux/3.7c/reference/c-function-arguments-c-args_value_as_string/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L187)
- [`log_debug`](/en/tmux/3.7c/reference/c-function-log_debug/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L176)
- [`xasprintf`](/en/tmux/3.7c/reference/c-function-xasprintf/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L166)
- [`xcalloc`](/en/tmux/3.7c/reference/c-function-xcalloc/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L154)
- [`xstrdup`](/en/tmux/3.7c/reference/c-function-xstrdup/) (function) [Call site](https://github.com/tmux/tmux/blob/e476c1230b958df0cb12977517d24b3dc931375b/arguments.c#L157)

## Referenced declarations

- [`args`](/en/tmux/3.7c/reference/c-struct-args/) (struct)
- [`ARGS_ENTRY_OPTIONAL_VALUE`](/en/tmux/3.7c/reference/c-define-arguments-c-args_entry_optional_value/) (constant)
- [`ARGS_STRING`](/en/tmux/3.7c/reference/c-enum-args_type-args_string/) (constant)
- [`args_value`](/en/tmux/3.7c/reference/c-struct-args_value/) (struct)
- [`args_value.type`](/en/tmux/3.7c/reference/c-struct-args_value-type/) (attribute)
