---
name: "std::__detail::_BracketMatcher"
section: "3cxx"
platform: "linux"
package: "libstdc++-12-doc"
version: "12.4.0-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/std::__detail::_BracketMatcher/3cxx"
---

# std::\_\_detail::\_BracketMatcher(3cxx)

Matches a character range (bracket expression)

## NAME

std::\_\_detail::\_BracketMatcher\< \_TraitsT, \_\_icase, \_\_collate \> - Matches a character range (bracket expression)

## SYNOPSIS

`#include <regex>`

### Public Types

**typedef** \_TraitsT::char\_class\_type **\_CharClassT**\
 **typedef** \_TransT::\_CharT **\_CharT**\
 **typedef** \_TraitsT::string\_type **\_StringT**\
 **typedef** \_TransT::\_StrTransT **\_StrTransT**\
 **typedef** \_RegexTranslator\< \_TraitsT, **\_\_icase**, **\_\_collate** \> **\_TransT**\

### Public Member Functions

**\_BracketMatcher** (bool **\_\_is\_non\_matching**, const \_TraitsT &\_\_traits)\
 **void** **\_M\_add\_char** (\_CharT \_\_c)\
 **void** **\_M\_add\_character\_class** (const \_StringT &**\_\_s**, bool **\_\_neg**)\
 \_StringT **\_M\_add\_collate\_element** (const \_StringT &**\_\_s**)\
 **void** **\_M\_add\_equivalence\_class** (const \_StringT &**\_\_s**)\
 **void** **\_M\_make\_range** (\_CharT **\_\_l**, \_CharT \_\_r)\
 **void** **\_M\_ready** ()\
 bool **operator()** (\_CharT **\_\_ch**) const\

## Detailed Description

### template\<typename \_TraitsT, bool \_\_icase, bool \_\_collate\>

struct std::\_\_detail::\_BracketMatcher\< \_TraitsT, \_\_icase, \_\_collate \>"Matches a character range (bracket expression)

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
