blob: 0df51cd597cc73c3f310ba54e6fb174a3f8a2a29 [file] [log] [blame]
yutak4d2f1c7f2015-09-16 10:29:361// Copyright 2015 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef TOOLS_BLINK_GC_PLUGIN_BLINK_GC_PLUGIN_OPTIONS_H_
6#define TOOLS_BLINK_GC_PLUGIN_BLINK_GC_PLUGIN_OPTIONS_H_
7
8#include <set>
9#include <string>
10#include <vector>
11
12struct BlinkGCPluginOptions {
Daniel Cheng2de974ba2016-12-20 22:15:1313 bool dump_graph = false;
sigbjornf59dc1fe2017-02-08 18:49:4314
15 // If |true|, emit warning if stack allocated class types provide
16 // a trace method.
17 bool warn_stack_allocated_trace_method = false;
18 // If |true|, emit warning for class types which derive from from
19 // GarbageCollectedFinalized<> when just GarbageCollected<> will do.
Daniel Cheng2de974ba2016-12-20 22:15:1320 bool warn_unneeded_finalizer = false;
sigbjornf59dc1fe2017-02-08 18:49:4321
Daniel Cheng2de974ba2016-12-20 22:15:1322 // TODO(https://crbug.com/675879): Clean up after the Blink rename.
23 bool use_chromium_style_naming = false;
sigbjornf59dc1fe2017-02-08 18:49:4324
yutak4d2f1c7f2015-09-16 10:29:3625 std::set<std::string> ignored_classes;
26 std::set<std::string> checked_namespaces;
27 std::vector<std::string> ignored_directories;
28};
29
30#endif // TOOLS_BLINK_GC_PLUGIN_BLINK_GC_PLUGIN_OPTIONS_H_