Index: Source/bindings/core/v8/V8Binding.h |
diff --git a/Source/bindings/core/v8/V8Binding.h b/Source/bindings/core/v8/V8Binding.h |
index c106cb10058766f72ffce025bec427b936906da2..94b99472b0a0ebaa4d2b77650680307c57d59d4b 100644 |
--- a/Source/bindings/core/v8/V8Binding.h |
+++ b/Source/bindings/core/v8/V8Binding.h |
@@ -995,6 +995,21 @@ private: |
PassRefPtr<TraceEvent::ConvertableToTraceFormat> devToolsTraceEventData(v8::Isolate*, ExecutionContext*, v8::Handle<v8::Function>); |
+class AttributesWithObservableSideEffectOnGet final { |
+public: |
+ // Returns true iff |domObject| is a DOM object and whose attribute named |
+ // |attributeName| has no observable side effect when "get" is called. |
+ static bool hasNoSideEffect(v8::Isolate*, v8::Handle<v8::Value> domObject, v8::Handle<v8::Value> attributeName); |
+ |
+ // Registers a DOM attribute which has side effect when "get" is called. |
+ static void add(const WrapperTypeInfo*, String attributeName); |
+ |
+private: |
+ typedef Vector<std::pair<const WrapperTypeInfo*, String>> AttributeSet; |
+ |
+ static AttributeSet* attributesWithSideEffectOnGet(); |
+}; |
+ |
class V8RethrowTryCatchScope final { |
public: |
explicit V8RethrowTryCatchScope(v8::TryCatch& block) : m_block(block) { } |