1//===- llvm/TableGen/Parser.h - tblgen parser entry point -------*- 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// This file declares an entry point into the tablegen parser for use by tools. 10// 11//===----------------------------------------------------------------------===// 12 13#ifndef LLVM_TABLEGEN_PARSER_H 14#define LLVM_TABLEGEN_PARSER_H 15 16namespace llvm { 17class RecordKeeper; 18class SourceMgr; 19 20/// Parse the TableGen file defined within the main buffer of the given 21/// SourceMgr. On success, populates the provided RecordKeeper with the parsed 22/// records and returns false. On failure, returns true. 23/// 24/// NOTE: TableGen currently relies on global state within a given parser 25/// invocation, so this function is not thread-safe. 26bool TableGenParseFile(SourceMgr &InputSrcMgr, RecordKeeper &Records); 27 28} // end namespace llvm 29 30#endif // LLVM_TABLEGEN_PARSER_H 31