File: issue247834.js

package info (click to toggle)
libnb-platform18-java 12.1-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 729,800 kB
  • sloc: java: 5,059,097; xml: 574,432; php: 78,788; javascript: 29,039; ansic: 10,278; sh: 6,386; cpp: 4,612; jsp: 3,643; sql: 1,097; makefile: 540; objc: 288; perl: 277; haskell: 93
file content (41 lines) | stat: -rw-r--r-- 1,434 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
define([], function () {
    
    /**
     * An experimental support for access to an asynchronously computed object.
     * 
     * The usage is following:
     *
     * @author Marek Fukala
     *
     * @constructor
     * @param {type} createResult - function which creates the result.
     * It needs to accept one argument - a function, which must be called with
     * the result as an argument, when the result is computed.
     *
     * @param {Object} initialResultValue - initial result, may be undefined.
     * Note: If you provide the initialValue parameter, the createResult
     * function will not be called until you invalidate the result.
     *
     * @param {function} resultChangeListener - function which gets called whenever
     * the result is recomputed.
     *
     * @param {boolean} eager - in another words "not lazy". If true,
     * the behavior of Asyc changes in following way:
     * 1) the Async will initially call the createResult function to compute
     * the value if no initialValue is provided,
     * 2) when the result gets invalidated by calling markResultDirty(),
     * the call will trigger the value recomputation automatically.
     *
     * @returns {Async}
     */
    function Async(createResult, initialResultValue, resultChangeListener, eager) {
        Breeze.checkThis(this);
        this._debugThisAsync = false;

        this.setEager(eager);

    }

    return Async;

});