| OLD | NEW | 
|   1 dart_library.library('BenchmarkBase', null, /* Imports */[ |   1 dart_library.library('BenchmarkBase', null, /* Imports */[ | 
|   2   'dart/_runtime', |   2   'dart_sdk' | 
|   3   'dart/core' |   3 ], function(exports, dart_sdk) { | 
|   4 ], /* Lazy imports */[ |  | 
|   5 ], function(exports, dart, core) { |  | 
|   6   'use strict'; |   4   'use strict'; | 
|   7   let dartx = dart.dartx; |   5   const core = dart_sdk.core; | 
|   8   class Expect extends core.Object { |   6   const dart = dart_sdk.dart; | 
 |   7   const dartx = dart_sdk.dartx; | 
 |   8   const BenchmarkBase$ = Object.create(null); | 
 |   9   BenchmarkBase$.Expect = class Expect extends core.Object { | 
|   9     static equals(expected, actual) { |  10     static equals(expected, actual) { | 
|  10       if (!dart.equals(expected, actual)) { |  11       if (!dart.equals(expected, actual)) { | 
|  11         dart.throw(`Values not equal: ${expected} vs ${actual}`); |  12         dart.throw(`Values not equal: ${expected} vs ${actual}`); | 
|  12       } |  13       } | 
|  13     } |  14     } | 
|  14     static listEquals(expected, actual) { |  15     static listEquals(expected, actual) { | 
|  15       if (expected[dartx.length] != actual[dartx.length]) { |  16       if (expected[dartx.length] != actual[dartx.length]) { | 
|  16         dart.throw(`Lists have different lengths: ${expected[dartx.length]} vs $
    {actual[dartx.length]}`); |  17         dart.throw(`Lists have different lengths: ${expected[dartx.length]} vs $
    {actual[dartx.length]}`); | 
|  17       } |  18       } | 
|  18       for (let i = 0; i < dart.notNull(actual[dartx.length]); i++) { |  19       for (let i = 0; i < dart.notNull(actual[dartx.length]); i++) { | 
|  19         Expect.equals(expected[dartx.get](i), actual[dartx.get](i)); |  20         BenchmarkBase$.Expect.equals(expected[dartx.get](i), actual[dartx.get](i
    )); | 
|  20       } |  21       } | 
|  21     } |  22     } | 
|  22     fail(message) { |  23     fail(message) { | 
|  23       dart.throw(message); |  24       dart.throw(message); | 
|  24     } |  25     } | 
|  25   } |  26   }; | 
|  26   dart.setSignature(Expect, { |  27   dart.setSignature(BenchmarkBase$.Expect, { | 
|  27     methods: () => ({fail: [dart.dynamic, [dart.dynamic]]}), |  28     methods: () => ({fail: [dart.dynamic, [dart.dynamic]]}), | 
|  28     statics: () => ({ |  29     statics: () => ({ | 
|  29       equals: [dart.void, [dart.dynamic, dart.dynamic]], |  30       equals: [dart.void, [dart.dynamic, dart.dynamic]], | 
|  30       listEquals: [dart.void, [core.List, core.List]] |  31       listEquals: [dart.void, [core.List, core.List]] | 
|  31     }), |  32     }), | 
|  32     names: ['equals', 'listEquals'] |  33     names: ['equals', 'listEquals'] | 
|  33   }); |  34   }); | 
|  34   class BenchmarkBase extends core.Object { |  35   BenchmarkBase$.BenchmarkBase = class BenchmarkBase extends core.Object { | 
|  35     BenchmarkBase(name) { |  36     BenchmarkBase(name) { | 
|  36       this.name = name; |  37       this.name = name; | 
|  37     } |  38     } | 
|  38     run() {} |  39     run() {} | 
|  39     warmup() { |  40     warmup() { | 
|  40       this.run(); |  41       this.run(); | 
|  41     } |  42     } | 
|  42     exercise() { |  43     exercise() { | 
|  43       for (let i = 0; i < 10; i++) { |  44       for (let i = 0; i < 10; i++) { | 
|  44         this.run(); |  45         this.run(); | 
|  45       } |  46       } | 
|  46     } |  47     } | 
|  47     setup() {} |  48     setup() {} | 
|  48     teardown() {} |  49     teardown() {} | 
|  49     static measureFor(f, timeMinimum) { |  50     static measureFor(f, timeMinimum) { | 
|  50       let time = 0; |  51       let time = 0; | 
|  51       let iter = 0; |  52       let iter = 0; | 
|  52       let watch = new core.Stopwatch(); |  53       let watch = new core.Stopwatch(); | 
|  53       watch.start(); |  54       watch.start(); | 
|  54       let elapsed = 0; |  55       let elapsed = 0; | 
|  55       while (dart.notNull(elapsed) < dart.notNull(timeMinimum)) { |  56       while (dart.notNull(elapsed) < dart.notNull(timeMinimum)) { | 
|  56         dart.dcall(f); |  57         dart.dcall(f); | 
|  57         elapsed = watch.elapsedMilliseconds; |  58         elapsed = watch.elapsedMilliseconds; | 
|  58         iter++; |  59         iter++; | 
|  59       } |  60       } | 
|  60       return 1000.0 * dart.notNull(elapsed) / iter; |  61       return 1000.0 * dart.notNull(elapsed) / iter; | 
|  61     } |  62     } | 
|  62     measure() { |  63     measure() { | 
|  63       this.setup(); |  64       this.setup(); | 
|  64       BenchmarkBase.measureFor(dart.fn(() => { |  65       BenchmarkBase$.BenchmarkBase.measureFor(dart.fn(() => { | 
|  65         this.warmup(); |  66         this.warmup(); | 
|  66       }), 100); |  67       }), 100); | 
|  67       let result = BenchmarkBase.measureFor(dart.fn(() => { |  68       let result = BenchmarkBase$.BenchmarkBase.measureFor(dart.fn(() => { | 
|  68         this.exercise(); |  69         this.exercise(); | 
|  69       }), 2000); |  70       }), 2000); | 
|  70       this.teardown(); |  71       this.teardown(); | 
|  71       return result; |  72       return result; | 
|  72     } |  73     } | 
|  73     report() { |  74     report() { | 
|  74       let score = this.measure(); |  75       let score = this.measure(); | 
|  75       core.print(`${this.name}(RunTime): ${score} us.`); |  76       core.print(`${this.name}(RunTime): ${score} us.`); | 
|  76     } |  77     } | 
|  77   } |  78   }; | 
|  78   dart.setSignature(BenchmarkBase, { |  79   dart.setSignature(BenchmarkBase$.BenchmarkBase, { | 
|  79     constructors: () => ({BenchmarkBase: [BenchmarkBase, [core.String]]}), |  80     constructors: () => ({BenchmarkBase: [BenchmarkBase$.BenchmarkBase, [core.St
    ring]]}), | 
|  80     methods: () => ({ |  81     methods: () => ({ | 
|  81       run: [dart.void, []], |  82       run: [dart.void, []], | 
|  82       warmup: [dart.void, []], |  83       warmup: [dart.void, []], | 
|  83       exercise: [dart.void, []], |  84       exercise: [dart.void, []], | 
|  84       setup: [dart.void, []], |  85       setup: [dart.void, []], | 
|  85       teardown: [dart.void, []], |  86       teardown: [dart.void, []], | 
|  86       measure: [core.double, []], |  87       measure: [core.double, []], | 
|  87       report: [dart.void, []] |  88       report: [dart.void, []] | 
|  88     }), |  89     }), | 
|  89     statics: () => ({measureFor: [core.double, [core.Function, core.int]]}), |  90     statics: () => ({measureFor: [core.double, [core.Function, core.int]]}), | 
|  90     names: ['measureFor'] |  91     names: ['measureFor'] | 
|  91   }); |  92   }); | 
|  92   // Exports: |  93   // Exports: | 
|  93   exports.Expect = Expect; |  94   exports.BenchmarkBase = BenchmarkBase$; | 
|  94   exports.BenchmarkBase = BenchmarkBase; |  | 
|  95 }); |  95 }); | 
| OLD | NEW |