---
title: "ClikaRT::dtype::uint1_t"
sidebar_label: "uint1_t"
description: "Unsigned 1-bit integer, range {0, 1}. Low bit of a byte."
---

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

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

**Header:** `ClikaRT/compute/scalar_types.h`

Unsigned 1-bit integer, range \{0, 1\}. Low bit of a byte.

## Static member functions

### from\_bits() {#from_bits}

<div class="api-signature">

`static` `constexpr` [`uint1_t`](./uint1_t.md) **`from_bits`**(`std::uint8_t` `b`) `noexcept`

</div>

Reinterpret the low 1 bit of `b` without conversion.

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 467

</div>

## Member functions

### uint1\_t() {#uint1_t}

<div class="api-signature">

`constexpr` `constexpr` **`uint1_t`**() `noexcept=default`

</div>

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 464

</div>

### uint1\_t(uint8\_t) {#uint1_t-2}

<div class="api-signature">

`constexpr` `explicit` `constexpr` **`uint1_t`**(`std::uint8_t` `v`) `noexcept`

</div>

Wrap an 8-bit value: keeps the low 1 bit (wraps; no saturation or range check).

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 465

</div>

### operator std::uint8\_t() {#operator-std-uint8-t}

<div class="api-signature">

`constexpr` `constexpr` **`operator std::uint8_t`**() `const noexcept`

</div>

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 466

</div>

## Data members

### bits {#bits}

<div class="api-signature">

`std::uint8_t` **`bits`** `= 0`

</div>

Raw encoding in the low bit (the storage/ABI form).

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 463

</div>

## Friends

### operator== {#operator-eq}

<div class="api-signature">

`friend` `bool` **`operator==`**([`uint1_t`](./uint1_t.md) `a`, [`uint1_t`](./uint1_t.md) `b`) `noexcept`

</div>

Compares `a` and `b` by widened integer value.

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 468

</div>

### operator\!= {#operator-ne}

<div class="api-signature">

`friend` `bool` **`operator!=`**([`uint1_t`](./uint1_t.md) `a`, [`uint1_t`](./uint1_t.md) `b`) `noexcept`

</div>

Compares `a` and `b` by widened integer value.

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 469

</div>

### operator\< {#operator-lt}

<div class="api-signature">

`friend` `bool` **`operator<`**([`uint1_t`](./uint1_t.md) `a`, [`uint1_t`](./uint1_t.md) `b`) `noexcept`

</div>

Compares `a` and `b` by widened integer value.

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 470

</div>

### operator\<= {#operator-le}

<div class="api-signature">

`friend` `bool` **`operator<=`**([`uint1_t`](./uint1_t.md) `a`, [`uint1_t`](./uint1_t.md) `b`) `noexcept`

</div>

Compares `a` and `b` by widened integer value.

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 471

</div>

### operator\> {#operator-gt}

<div class="api-signature">

`friend` `bool` **`operator>`**([`uint1_t`](./uint1_t.md) `a`, [`uint1_t`](./uint1_t.md) `b`) `noexcept`

</div>

Compares `a` and `b` by widened integer value.

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 472

</div>

### operator\>= {#operator-ge}

<div class="api-signature">

`friend` `bool` **`operator>=`**([`uint1_t`](./uint1_t.md) `a`, [`uint1_t`](./uint1_t.md) `b`) `noexcept`

</div>

Compares `a` and `b` by widened integer value.

<div class="api-declared">

Declared in `ClikaRT/compute/scalar_types.h`, line 473

</div>
