1c0981da4SDimitry Andric //===--- AttrDocTable.cpp - implements Attr::getDocumentation() -*- C++ -*-===// 2c0981da4SDimitry Andric // 3c0981da4SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4c0981da4SDimitry Andric // See https://llvm.org/LICENSE.txt for license information. 5c0981da4SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6c0981da4SDimitry Andric // 7c0981da4SDimitry Andric //===----------------------------------------------------------------------===// 8c0981da4SDimitry Andric // 9c0981da4SDimitry Andric // This file contains out-of-line methods for Attr classes. 10c0981da4SDimitry Andric // 11c0981da4SDimitry Andric //===----------------------------------------------------------------------===// 12c0981da4SDimitry Andric 13c0981da4SDimitry Andric #include "clang/AST/Attr.h" 14c0981da4SDimitry Andric #include "llvm/ADT/StringRef.h" 15c0981da4SDimitry Andric 16c0981da4SDimitry Andric #include "AttrDocTable.inc" 17c0981da4SDimitry Andric 18c0981da4SDimitry Andric static const llvm::StringRef AttrDoc[] = { 19c0981da4SDimitry Andric #define ATTR(NAME) AttrDoc_##NAME, 20c0981da4SDimitry Andric #include "clang/Basic/AttrList.inc" 21c0981da4SDimitry Andric }; 22c0981da4SDimitry Andric getDocumentation(clang::attr::Kind K)23c0981da4SDimitry Andricllvm::StringRef clang::Attr::getDocumentation(clang::attr::Kind K) { 24ac9a064cSDimitry Andric if (K < (int)std::size(AttrDoc)) 25c0981da4SDimitry Andric return AttrDoc[K]; 26c0981da4SDimitry Andric return ""; 27c0981da4SDimitry Andric } 28