1//===----- Attr.h - Enum values for C Attribute Kinds ----------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8///
9/// \file
10/// Defines the clang::attr::Kind enum.
11///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_CLANG_BASIC_ATTRKINDS_H
15#define LLVM_CLANG_BASIC_ATTRKINDS_H
16
17namespace clang {
18
19namespace attr {
20
21// A list of all the recognized kinds of attributes.
22enum Kind {
23#define ATTR(X) X,
24#define ATTR_RANGE(CLASS, FIRST_NAME, LAST_NAME) \
25 First##CLASS = FIRST_NAME, \
26 Last##CLASS = LAST_NAME,
27#include "clang/Basic/AttrList.inc"
28};
29
30} // end namespace attr
31} // end namespace clang
32
33#endif
34