Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1257)

Unified Diff: Source/modules/speech/SpeechRecognitionResult.h

Issue 139803012: Move speech module over to Oilpan. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Make SpeechSynthesisVoice GC-finalized Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/modules/speech/SpeechRecognitionResult.h
diff --git a/Source/modules/speech/SpeechRecognitionResult.h b/Source/modules/speech/SpeechRecognitionResult.h
index 3c33629463f00ab8f9a99b8e895bcade97f38431..fa6df939ee102f690178414226b5c8229dea13bb 100644
--- a/Source/modules/speech/SpeechRecognitionResult.h
+++ b/Source/modules/speech/SpeechRecognitionResult.h
@@ -27,26 +27,33 @@
#define SpeechRecognitionResult_h
#include "bindings/v8/ScriptWrappable.h"
+#include "heap/Handle.h"
#include "modules/speech/SpeechRecognitionAlternative.h"
#include "wtf/RefCounted.h"
#include "wtf/Vector.h"
namespace WebCore {
-class SpeechRecognitionResult : public ScriptWrappable, public RefCounted<SpeechRecognitionResult> {
+// FIXME: oilpan: the platform outer layer (WebSpeechRecognitionResult) depends on
+// holding a WebPrivatePtr (a RefPtr) to this result object. When/if such pointers
+// can be to GCed objects, we can drop the extra reference counting layer.
+class SpeechRecognitionResult : public RefCountedWillBeRefCountedGarbageCollected<SpeechRecognitionResult>, public ScriptWrappable {
+ DECLARE_GC_INFO;
public:
~SpeechRecognitionResult();
- static PassRefPtr<SpeechRecognitionResult> create(const Vector<RefPtr<SpeechRecognitionAlternative> >&, bool final);
+ static PassRefPtr<SpeechRecognitionResult> create(const WillBeHeapVector<RefPtrWillBeMember<SpeechRecognitionAlternative> >&, bool final);
unsigned long length() { return m_alternatives.size(); }
SpeechRecognitionAlternative* item(unsigned long index);
bool isFinal() { return m_final; }
+ void trace(Visitor*);
+
private:
- SpeechRecognitionResult(const Vector<RefPtr<SpeechRecognitionAlternative> >&, bool final);
+ SpeechRecognitionResult(const WillBeHeapVector<RefPtrWillBeMember<SpeechRecognitionAlternative> >&, bool final);
- Vector<RefPtr<SpeechRecognitionAlternative> > m_alternatives;
bool m_final;
+ WillBeHeapVector<RefPtrWillBeMember<SpeechRecognitionAlternative> > m_alternatives;
};
} // namespace WebCore

Powered by Google App Engine
This is Rietveld 408576698