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

Unified Diff: content/public/renderer/v8_value_converter.h

Issue 19730002: V8ValueConverter for the activity logger that does not invoke interceptors and (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 5 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: content/public/renderer/v8_value_converter.h
diff --git a/content/public/renderer/v8_value_converter.h b/content/public/renderer/v8_value_converter.h
index b71b32dae3ab6563f5040485fcd9bc8b8d340364..2c3cf32af1fa485b5bb84e86847d3d74b7cd625d 100644
--- a/content/public/renderer/v8_value_converter.h
+++ b/content/public/renderer/v8_value_converter.h
@@ -14,6 +14,17 @@ class Value;
namespace content {
+// Extends the default behaviour of V8ValueConverter.
+class CONTENT_EXPORT V8ValueConverterStrategy {
+ public:
+ // If false is returned, V8ValueConverter proceeds with the default behavior.
+ virtual bool ToV8Value(const base::Value* value,
+ v8::Handle<v8::Value>* out) const = 0;
+ // If false is returned, V8ValueConverter proceeds with the default behavior.
+ virtual bool FromV8Value(v8::Handle<v8::Value> value,
+ base::Value** out) const = 0;
not at google - send to devlin 2013/07/22 21:44:57 make this a member class of Strategy of V8ValueCon
pmarch 2013/07/22 23:06:55 Done.
+};
+
// Converts between v8::Value (JavaScript values in the v8 heap) and Chrome's
// values (from base/values.h). Lists and dictionaries are converted
// recursively.
@@ -52,6 +63,9 @@ class CONTENT_EXPORT V8ValueConverter {
// converting arguments to extension APIs.
virtual void SetStripNullFromObjects(bool val) = 0;
+ // Extend default behavior of V8ValueConverter.
+ virtual void SetStrategy(V8ValueConverterStrategy* strategy) = 0;
+
// Converts a base::Value to a v8::Value.
//
// Unsupported types are replaced with null. If an array or object throws

Powered by Google App Engine
This is Rietveld 408576698