diff options
| author | LV-426 <lv-426@taproot.org.il> | 2014-11-11 01:38:20 +0200 |
|---|---|---|
| committer | Alon Levy <alon@pobox.com> | 2014-11-11 14:30:09 +0200 |
| commit | fd7c618f3c5ed54096615809c3644ca2a9415267 (patch) | |
| tree | 6927e37b9ec840bddebd4056806253577d337ff8 | |
| parent | 05d2c42815c15c33508299c16558248cc7a8f2ae (diff) | |
util.js - proper requirejs module definition - code handling the quirkiness between node & requirejs module definition belongs eleswhere, probably in a wrapper script, not prefixed to a particular module.
| -rw-r--r-- | scripts/util.js | 90 |
1 files changed, 42 insertions, 48 deletions
diff --git a/scripts/util.js b/scripts/util.js index 4af7a7cf..3113474b 100644 --- a/scripts/util.js +++ b/scripts/util.js @@ -1,58 +1,52 @@ -/* - Craziness to deal with the bolted on module systems that we use: - In browser: require.js, it uses a global function named 'define' - On server for tests: Node, it provides a module definition time object named 'exports' -*/ -(function(factory) { - if (typeof define != 'undefined') { - define('util', factory); - } else { - if (typeof exports == 'object') { - var obj = factory(); - for (var i in obj) { - exports[i] = obj[i]; - } - } - } -})(function() { -return { +"use strict" -set_from_array: function (a) { - var ret = {}; - for (var k = 0 ; k < a.length ; ++k) { - ret[a[k]] = 1; - } - return ret; -}, +define(function() { -set_from_object: function(o) { - var ret = {} - for (var k in o) { - ret[k] = 1; + function set_from_array(a) { + var ret = {}; + for (var k = 0; k < a.length; ++k) { + ret[a[k]] = 1; + } + return ret; } - return ret; -}, -set_diff: function(sa, sb) { - var ret = {a_b:[], b_a:[]}; - var i; - for (i in sa) { - if (!(i in sb)) { - ret.a_b.push(i); + function set_from_object(o) { + var ret = {} + for ( var k in o) { + ret[k] = 1; } + return ret; } - for (i in sb) { - if (!(i in sa)) { - ret.b_a.push(i); + + function set_diff(sa, sb) { + var ret = { + a_b : [], + b_a : [] + }; + var i; + for (i in sa) { + if (!(i in sb)) { + ret.a_b.push(i); + } } + for (i in sb) { + if (!(i in sa)) { + ret.b_a.push(i); + } + } + return ret; } - return ret; -}, -array_diff: function(aa, ab) { - var sa = set_from_array(aa); - var sb = set_from_array(ab); - return set_diff(sa, sb); -}, + function array_diff(aa, ab) { + var sa = set_from_array(aa); + var sb = set_from_array(ab); + return set_diff(sa, sb); + } -}}); + return { + set_from_array : set_from_array, + set_from_object : set_from_object, + set_diff : set_diff, + array_diff : array_diff + }; +}); |
