Main.hx 1.1 KB

12345678910111213141516171819202122232425
  1. import js.lib.Promise;
  2. class Main {
  3. static function main() {
  4. var p = new Promise<String>(null);
  5. $type(p.then(function(x) $type(x)));
  6. $type(p.then(function(x) $type(x), function(e) $type(e)));
  7. $type(p.then(function(x) {$type(x); return 1;}));
  8. $type(p.then(function(x) {$type(x); return Promise.resolve(1);}));
  9. $type(p.then(null,function(x) {$type(x); return 1;}));
  10. $type(p.then(null,function(x) {$type(x); return Promise.resolve(1);}));
  11. $type(p.then(function(x) {$type(x); return 1;}, function(e) {$type(e); return 1;}));
  12. $type(p.then(function(x) {$type(x); return Promise.resolve(1);}, function(e) {$type(e); return 1;}));
  13. $type(p.then(function(x) {$type(x); return 1;}, function(e) {$type(e); return Promise.resolve(1);}));
  14. $type(p.then(function(x) {$type(x); return Promise.resolve(1);}, function(e) {$type(e); return Promise.resolve(1);}));
  15. $type(p.catchError(function(x) {$type(x);}));
  16. $type(p.catchError(function(x) {$type(x); return Promise.resolve(1);}));
  17. $type(p.catchError(function(x) {$type(x); return Promise.resolve("heh");}));
  18. }
  19. }