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

Side by Side Diff: third_party/WebKit/Source/bindings/core/v8/ExceptionStatePlaceholder.h

Issue 2614013003: Remove IgnorableExceptionState (Closed)
Patch Set: temp Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 20 matching lines...) Expand all
31 #ifndef ExceptionStatePlaceholder_h 31 #ifndef ExceptionStatePlaceholder_h
32 #define ExceptionStatePlaceholder_h 32 #define ExceptionStatePlaceholder_h
33 33
34 #include "bindings/core/v8/ExceptionState.h" 34 #include "bindings/core/v8/ExceptionState.h"
35 #include "core/CoreExport.h" 35 #include "core/CoreExport.h"
36 #include "wtf/Assertions.h" 36 #include "wtf/Assertions.h"
37 #include "wtf/text/WTFString.h" 37 #include "wtf/text/WTFString.h"
38 38
39 namespace blink { 39 namespace blink {
40 40
41 class IgnorableExceptionState final : public ExceptionState { 41 #define IGNORE_EXCEPTION (::blink::DummyExceptionStateForTesting().returnThis())
haraken 2017/01/06 00:52:53 I noticed that we should try to remove IGNORE_EXCE
42 WTF_MAKE_NONCOPYABLE(IgnorableExceptionState);
43
44 public:
45 IgnorableExceptionState()
46 : ExceptionState(nullptr,
47 ExceptionState::UnknownContext,
48 nullptr,
49 nullptr) {}
50
51 ExceptionState& returnThis() { return *this; }
52
53 void throwDOMException(ExceptionCode, const String& message) override {}
54 void throwRangeError(const String& message) override{};
55 void throwSecurityError(const String& sanitizedMessage,
56 const String& unsanitizedMessage) override {}
57 void throwTypeError(const String& message) override {}
58 void rethrowV8Exception(v8::Local<v8::Value>) override{};
59 };
60
61 #define IGNORE_EXCEPTION (::blink::IgnorableExceptionState().returnThis())
62 42
63 #if ENABLE(ASSERT) 43 #if ENABLE(ASSERT)
64 44
65 class CORE_EXPORT NoExceptionStateAssertionChecker final 45 class CORE_EXPORT NoExceptionStateAssertionChecker final
haraken 2017/01/06 00:52:53 I'll replace this with NonThroableExceptionState i
66 : public ExceptionState { 46 : public ExceptionState {
67 WTF_MAKE_NONCOPYABLE(NoExceptionStateAssertionChecker); 47 WTF_MAKE_NONCOPYABLE(NoExceptionStateAssertionChecker);
68 48
69 public: 49 public:
70 NoExceptionStateAssertionChecker(const char* file, int line); 50 NoExceptionStateAssertionChecker(const char* file, int line);
71 51
72 ExceptionState& returnThis() { return *this; } 52 ExceptionState& returnThis() { return *this; }
73 53
74 void throwDOMException(ExceptionCode, const String& message) override; 54 void throwDOMException(ExceptionCode, const String& message) override;
75 void throwRangeError(const String& message) override; 55 void throwRangeError(const String& message) override;
76 void throwSecurityError(const String& sanitizedMessage, 56 void throwSecurityError(const String& sanitizedMessage,
77 const String& unsanitizedMessage) override; 57 const String& unsanitizedMessage) override;
78 void throwTypeError(const String& message) override; 58 void throwTypeError(const String& message) override;
79 void rethrowV8Exception(v8::Local<v8::Value>) override; 59 void rethrowV8Exception(v8::Local<v8::Value>) override;
80 60
81 private: 61 private:
82 const char* m_file; 62 const char* m_file;
83 const int m_line; 63 const int m_line;
84 }; 64 };
85 65
86 #define ASSERT_NO_EXCEPTION \ 66 #define ASSERT_NO_EXCEPTION \
87 (::blink::NoExceptionStateAssertionChecker(__FILE__, __LINE__).returnThis()) 67 (::blink::NoExceptionStateAssertionChecker(__FILE__, __LINE__).returnThis())
88 68
89 #else 69 #else
90 70
91 #define ASSERT_NO_EXCEPTION (::blink::IgnorableExceptionState().returnThis()) 71 #define ASSERT_NO_EXCEPTION \
72 (::blink::DummyExceptionStateForTesting().returnThis())
92 73
93 #endif 74 #endif
94 75
95 } // namespace blink 76 } // namespace blink
96 77
97 #endif // ExceptionStatePlaceholder_h 78 #endif // ExceptionStatePlaceholder_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698