Roll src/third_party/WebKit f36d5e0:68b67cd (svn 193299:193303)
[chromium-blink-merge.git] / tools / clang / blink_gc_plugin / tests / ignore_class.h
blob580ed7c5d56cf23318192cdd45ee19b2d979237b
1 // Copyright 2014 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.
5 #ifndef IGNORE_CLASS_H_
6 #define IGNORE_CLASS_H_
8 #include "heap/stubs.h"
10 namespace blink {
12 class HeapObject : public GarbageCollected<HeapObject> { };
14 // Don't require trace method on ignored class.
15 class GC_PLUGIN_IGNORE("http://crbug.com/12345") A;
16 class A : public GarbageCollected<A> {
17 private:
18 Member<HeapObject> m_obj;
21 // Don't require tracing of fields on ignored class.
22 class GC_PLUGIN_IGNORE("http://crbug.com/12345") B;
23 class B : public GarbageCollected<B> {
24 public:
25 virtual void trace(Visitor*);
26 private:
27 Member<HeapObject> m_obj;
30 // Don't require tracing of an ignored base class.
31 class C : public B {
32 public:
33 void trace(Visitor*);
34 private:
35 Member<HeapObject> m_obj;
40 #endif