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

Unified Diff: Source/core/dom/Promise.js

Issue 17035004: [ABANDONED] Introduce Promise example implementation written in JavaScript. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 6 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
« no previous file with comments | « Source/core/dom/Promise.idl ('k') | Source/core/page/RuntimeEnabledFeatures.in » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/dom/Promise.js
diff --git a/Source/core/platform/Task.h b/Source/core/dom/Promise.js
similarity index 80%
copy from Source/core/platform/Task.h
copy to Source/core/dom/Promise.js
index b9d2e46802aebf6391df4ec3dabb580d43b2483c..26562d4298b2f85b6650de9dc4d2490f2665e798 100644
--- a/Source/core/platform/Task.h
+++ b/Source/core/dom/Promise.js
@@ -28,30 +28,27 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef Task_h
-#define Task_h
-
-#include "wtf/Functional.h"
-#include "public/platform/WebThread.h"
-
-namespace WebCore {
-
-class Task : public WebKit::WebThread::Task {
-public:
- explicit Task(const Closure& closure)
- : m_closure(closure)
+(function() {
+ function get(value)
{
+ var old = this.value;
+ this.value = value;
+ return old;
}
- virtual void run() OVERRIDE
+ function getStatic(value)
{
- m_closure();
+ return new Promise(value);
abarth-chromium 2013/06/18 09:17:22 This calls whatever the web page has mutated windo
yhirano 2013/06/19 12:55:56 Done. Please see Promise-overwrite-constructor.htm
}
-private:
- Closure m_closure;
-};
-
-} // namespace WebCore
+ function $Promise(value)
+ {
+ this.value = value;
abarth-chromium 2013/06/18 09:13:16 I'm worried that this will call setters on Object.
yhirano 2013/06/19 12:55:56 Done. Please see Promise-define-setter.html.
+ }
-#endif // Task_h
+ $Promise.prototype = {
jsbell 2013/06/18 18:23:13 Possibly use $Promise.prototype = Object.create(nu
abarth-chromium 2013/06/18 18:41:35 Both Object and create would be external dependenc
jsbell 2013/06/18 19:00:08 If this is run *after* user scripts can touch the
yhirano 2013/06/19 12:55:56 There is no external dependencies now. No property
+ get: get
+ };
+ $Promise.getStatic = getStatic;
+ return $Promise;
abarth-chromium 2013/06/18 09:17:22 What does this print: console.log((new Promise(42
yhirano 2013/06/19 12:55:56 [object Promise]
+});
« no previous file with comments | « Source/core/dom/Promise.idl ('k') | Source/core/page/RuntimeEnabledFeatures.in » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698