> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/function-blocks/blocks-reference/data-logic/logic/all-true.md).

# All True

This function block checks whether all elements in a provided boolean list are true. It is useful for combining multiple checks into a single pass/fail result for downstream logic or UI feedback.

## 📥 Inputs <a href="#inputs" id="inputs"></a>

`Boolean List` This input accepts a list of boolean values (True / False). Each element is evaluated.

## 📤 Outputs <a href="#outputs" id="outputs"></a>

`All True` This output produces a single boolean: True when all provided elements are True, otherwise False.

## 🕹️ Controls <a href="#controls" id="controls"></a>

No interactive controls are exposed for this block.

## 🎯 Features <a href="#features" id="features"></a>

* Simple, single-purpose logic check for lists of booleans.
* Works with lists coming from other blocks (including lists produced by batch or parsing operations).
* Safe handling for missing or invalid list elements — returns False when the list contains None or any False values.

## 📝 Usage Instructions <a href="#usage" id="usage"></a>

1. Provide a boolean list to the `Boolean List` input (for example, outputs from several checks).
2. Read the single boolean from the `All True` output to decide a combined pass/fail action.

## 📊 Evaluation <a href="#evaluation" id="evaluation"></a>

On execution the block inspects the provided list: if every element is True the block outputs True; if any element is False or missing the block outputs False.

## 💡 Tips and Tricks <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Use with `Logic Input` to create manual test lists for debugging or operator-controlled checks.
* Combine with `And` / `Or` to create more complex logical expressions before producing the final list.
* Pre-filter inputs with `Exclude Nones` to remove empty values that might unintentionally fail the check.
* Use `List Operations` or `Get Element` to build or inspect lists before feeding them here.
* In batch scenarios, use `Batch Processing` / `Debatch` and `Get Batch Size` to control how lists are constructed and validated.

## 🛠️ Troubleshooting <a href="#troubleshooting" id="troubleshooting"></a>

* No output or unexpected False: Verify that the input list contains only boolean values and that there are no unexpected None elements.
* Feeding non-list data: Ensure the producer block outputs a list (use `List Operations` or `Mux` / `Demux` helpers to format data as lists).
