forked from OSchip/llvm-project
34 lines
1.1 KiB
C++
34 lines
1.1 KiB
C++
//===-- RemarkParserImpl.h - Implementation details -------------*- C++/-*-===//
|
|
//
|
|
// 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
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This file provides implementation details for the remark parser.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_REMARKS_REMARK_PARSER_IMPL_H
|
|
#define LLVM_REMARKS_REMARK_PARSER_IMPL_H
|
|
|
|
namespace llvm {
|
|
namespace remarks {
|
|
/// This is used as a base for any parser implementation.
|
|
struct ParserImpl {
|
|
enum class Kind { YAML };
|
|
|
|
explicit ParserImpl(Kind TheParserKind) : ParserKind(TheParserKind) {}
|
|
// Virtual destructor prevents mismatched deletes
|
|
virtual ~ParserImpl() {}
|
|
|
|
// The parser kind. This is used as a tag to safely cast between
|
|
// implementations.
|
|
Kind ParserKind;
|
|
};
|
|
} // end namespace remarks
|
|
} // end namespace llvm
|
|
|
|
#endif /* LLVM_REMARKS_REMARK_PARSER_IMPL_H */
|