llvm/clang/lib/Lex/UnicodeCharSets.h

//===--- UnicodeCharSets.h - Contains important sets of characters --------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#ifndef LLVM_CLANG_LIB_LEX_UNICODECHARSETS_H
#define LLVM_CLANG_LIB_LEX_UNICODECHARSETS_H

#include "llvm/Support/UnicodeCharRanges.h"

// Unicode 15.1 XID_Start
static const llvm::sys::UnicodeCharRange XIDStartRanges[] =;

// Unicode 15.1 XID_Continue, excluding XID_Start
// The Unicode Property XID_Continue is a super set of XID_Start.
// To save Space, the table below only contains the codepoints
// that are not also in XID_Start.
static const llvm::sys::UnicodeCharRange XIDContinueRanges[] =;

// Clang supports the "Mathematical notation profile" as an extension,
// as described in https://www.unicode.org/L2/L2022/22230-math-profile.pdf
// Math_Start
static const llvm::sys::UnicodeCharRange
    MathematicalNotationProfileIDStartRanges[] =;

// Math_Continue
static const llvm::sys::UnicodeCharRange
    MathematicalNotationProfileIDContinueRanges[] =;

// C11 D.1, C++11 [charname.allowed]
static const llvm::sys::UnicodeCharRange C11AllowedIDCharRanges[] =;

// C99 Annex D
static const llvm::sys::UnicodeCharRange C99AllowedIDCharRanges[] =;

// C11 D.2, C++11 [charname.disallowed]
static const llvm::sys::UnicodeCharRange C11DisallowedInitialIDCharRanges[] =;

// C99 6.4.2.1p3: The initial character [of an identifier] shall not be a
// universal character name designating a digit.
// C99 Annex D defines these characters as "Digits".
static const llvm::sys::UnicodeCharRange C99DisallowedInitialIDCharRanges[] =;

// Unicode v6.2, chapter 6.2, table 6-2.
static const llvm::sys::UnicodeCharRange UnicodeWhitespaceCharRanges[] =;

#endif