Serenity Operating System
1/*
2 * Copyright (c) 2023, Matthew Olsson <mattco@serenityos.org>
3 *
4 * SPDX-License-Identifier: BSD-2-Clause
5 */
6
7#include "CellsHandler.h"
8#include <clang/Tooling/CommonOptionsParser.h>
9#include <clang/Tooling/Tooling.h>
10#include <llvm/Support/CommandLine.h>
11
12int main(int argc, char const** argv)
13{
14 llvm::cl::OptionCategory s_tool_category("LibJSGCVerifier options");
15 auto maybe_parser = clang::tooling::CommonOptionsParser::create(argc, argv, s_tool_category);
16 if (!maybe_parser) {
17 llvm::errs() << maybe_parser.takeError();
18 return 1;
19 }
20
21 auto& parser = maybe_parser.get();
22 clang::tooling::ClangTool tool(parser.getCompilations(), parser.getSourcePathList());
23
24 CollectCellsHandler collect_handler;
25 auto collect_action = clang::tooling::newFrontendActionFactory(&collect_handler.finder(), &collect_handler);
26 return tool.run(collect_action.get());
27}