---
title: "ClikaRT::cli::ExclusiveGroup"
sidebar_label: "ExclusiveGroup"
description: "A mutually-exclusive constraint. Lightweight handle, valid while its App lives."
---

<!-- Generated by tools/doxygen2mdx from Doxygen XML. Do not edit. -->

<span class="api-kind api-kind--class">class</span>

**Header:** `ClikaRT/cli/command.h`

A mutually-exclusive constraint. Lightweight handle, valid while its [`App`](./App.md) lives.

## Member functions

### add(string\_view, ArgType) {#add}

<div class="api-signature">

[`Arg`](./Arg.md) **`add`**(`std::string_view` `name`, [`ArgType`](./index.md#ArgType) `type`)

</div>

Declare option `name` of `type`; returns its [`Arg`](./Arg.md) builder.

<div class="api-declared">

Declared in `ClikaRT/cli/command.h`, line 137

</div>

### add(string\_view, string\_view, ArgType) {#add-2}

<div class="api-signature">

[`Arg`](./Arg.md) **`add`**(<br />
&nbsp;&nbsp;&nbsp;&nbsp;`std::string_view` `long_name`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;`std::string_view` `short_name`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`ArgType`](./index.md#ArgType) `type`<br />
)

</div>

Same as `add(name, type)`, with long + short spellings.

<div class="api-declared">

Declared in `ClikaRT/cli/command.h`, line 139

</div>

### flag(string\_view) {#flag}

<div class="api-signature">

[`Flag`](./Flag.md) **`flag`**(`std::string_view` `name`)

</div>

Declare boolean flag `name`; returns its [`Flag`](./Flag.md) builder.

<div class="api-declared">

Declared in `ClikaRT/cli/command.h`, line 141

</div>

### flag(string\_view, string\_view) {#flag-2}

<div class="api-signature">

[`Flag`](./Flag.md) **`flag`**(`std::string_view` `long_name`, `std::string_view` `short_name`)

</div>

Same as `flag(name)`, with long + short spellings.

<div class="api-declared">

Declared in `ClikaRT/cli/command.h`, line 143

</div>
