@dashkite/joy 0.3.15 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,186 +1,122 @@
1
- var Generic,
2
- GenericFunction,
3
- create,
4
- define,
5
- generic,
6
- isGeneric,
7
- lookup,
8
- splice = [].splice;
9
- import { isKind, isFunction, isString, isObject } from "./type.js";
1
+ var Generic, GenericFunction, create, define, generic, isGeneric, lookup, splice = [].splice;
2
+ import { isKind, isFunction, isString, isObject } from "./type";
10
3
  GenericFunction = class GenericFunction {
11
- static create() {
12
- let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
13
- return new this(options);
14
- }
15
-
16
- constructor(_ref) {
17
- var _this = this;
18
-
19
- let {
20
- name: name1,
21
- description: description1,
22
- default: _default
23
- } = _ref;
24
- this.name = name1;
25
- this.description = description1;
26
- this.default = _default;
27
-
28
- if (this.name == null) {
29
- this.name = "anonymous-generic";
4
+ static create(options = {}) {
5
+ return new this(options);
30
6
  }
31
-
32
- this.entries = [];
33
-
34
- if (this.default == null) {
35
- this.default = function () {
36
- var error;
37
- error = new TypeError(`${_this.name}: invalid arguments.`);
38
-
39
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
40
- args[_key] = arguments[_key];
7
+ constructor({ name: name1, description: description1, default: _default }){
8
+ this.name = name1;
9
+ this.description = description1;
10
+ this.default = _default;
11
+ if (this.name == null) {
12
+ this.name = "anonymous-generic";
13
+ }
14
+ this.entries = [];
15
+ if (this.default == null) {
16
+ this.default = (...args)=>{
17
+ var error;
18
+ error = new TypeError(`${this.name}: invalid arguments.`);
19
+ error.arguments = args;
20
+ throw error;
21
+ };
41
22
  }
42
-
43
- error.arguments = args;
44
- throw error;
45
- };
46
23
  }
47
- }
48
-
49
- define() {
50
- for (var _len2 = arguments.length, terms = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
51
- terms[_key2] = arguments[_key2];
24
+ define(...terms) {
25
+ var f, ref;
26
+ ref = terms, [...terms] = ref, [f] = splice.call(terms, -1);
27
+ this.entries.unshift([
28
+ terms,
29
+ f
30
+ ]);
31
+ return this;
52
32
  }
53
-
54
- var f, ref;
55
- ref = terms, [...terms] = ref, [f] = splice.call(terms, -1);
56
- this.entries.unshift([terms, f]);
57
- return this;
58
- }
59
-
60
- lookup(args) {
61
- var f, i, j, len, match, ref, term, terms;
62
- ref = this.entries; // go through each definition in our lookup 'table'
63
-
64
- for (j = 0, len = ref.length; j < len; j++) {
65
- [terms, f] = ref[j];
66
-
67
- if (terms.length > args.length) {
68
- // there must be at least one argument per term
69
- // (variadic terms can consume multiple arguments,
70
- // so the converse is not true)
71
- continue;
72
- }
73
-
74
- if (terms.length === 0 && args.length === 0) {
75
- // allow for the nullary function
76
- return f;
77
- } // we can't have a match if we don't match any terms
78
-
79
-
80
- match = false; // each argument must be consumed
81
-
82
- i = 0;
83
-
84
- while (i < args.length) {
85
- if ((term = terms[i]) == null) {
86
- match = false;
87
- break;
88
- } // if the term may be variadic (indicated by taking 0 arguments)
89
- // and this is the last available term
90
- // try the term with the remaining arguments
91
-
92
-
93
- if (terms.length === i + 1 && term.length === 0) {
94
- match = term(...args.slice(i));
95
- break;
96
- }
97
-
98
- if (!(match = term(args[i++]))) {
99
- // otherwise, we have the default case, where we try to match
100
- // the next argument with the next term
101
- break;
33
+ lookup(args) {
34
+ var f, i, j, len, match, ref, term, terms;
35
+ ref = this.entries;
36
+ // go through each definition in our lookup 'table'
37
+ for(j = 0, len = ref.length; j < len; j++){
38
+ [terms, f] = ref[j];
39
+ if (terms.length > args.length) {
40
+ continue;
41
+ }
42
+ if (terms.length === 0 && args.length === 0) {
43
+ // allow for the nullary function
44
+ return f;
45
+ }
46
+ // we can't have a match if we don't match any terms
47
+ match = false;
48
+ // each argument must be consumed
49
+ i = 0;
50
+ while(i < args.length){
51
+ if ((term = terms[i]) == null) {
52
+ match = false;
53
+ break;
54
+ }
55
+ // if the term may be variadic (indicated by taking 0 arguments)
56
+ // and this is the last available term
57
+ // try the term with the remaining arguments
58
+ if (terms.length === i + 1 && term.length === 0) {
59
+ match = term(...args.slice(i));
60
+ break;
61
+ }
62
+ if (!(match = term(args[i++]))) {
63
+ break;
64
+ }
65
+ }
66
+ if (match) {
67
+ // if we ended up with a match, just return the corresponding fn
68
+ return f;
69
+ }
102
70
  }
103
- }
104
-
105
- if (match) {
106
- // if we ended up with a match, just return the corresponding fn
107
- return f;
108
- }
109
- } // if exit the loop without returning a match, return the default
110
-
111
-
112
- return this.default;
113
- }
114
-
115
- dispatch(args) {
116
- var f;
117
- f = this.lookup(args);
118
- return f(...args);
119
- }
120
-
71
+ // if exit the loop without returning a match, return the default
72
+ return this.default;
73
+ }
74
+ dispatch(args) {
75
+ var f;
76
+ f = this.lookup(args);
77
+ return f(...args);
78
+ }
121
79
  };
122
-
123
- lookup = function (_ref2, args) {
124
- let {
125
- _
126
- } = _ref2;
127
- return _.lookup(args);
80
+ lookup = function({ _ }, args) {
81
+ return _.lookup(args);
128
82
  };
129
-
130
- define = function (_ref3) {
131
- let {
132
- _
133
- } = _ref3;
134
-
135
- for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
136
- args[_key3 - 1] = arguments[_key3];
137
- }
138
-
139
- return _.define(...args);
83
+ define = function({ _ }, ...args) {
84
+ return _.define(...args);
140
85
  };
141
-
142
- create = function (options) {
143
- var f;
144
-
145
- f = function () {
146
- for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
147
- args[_key4] = arguments[_key4];
148
- }
149
-
150
- return f._.dispatch(args);
151
- };
152
-
153
- f._ = GenericFunction.create(options);
154
- return f;
86
+ create = function(options) {
87
+ var f;
88
+ f = function(...args) {
89
+ return f._.dispatch(args);
90
+ };
91
+ f._ = GenericFunction.create(options);
92
+ return f;
155
93
  };
156
-
157
- isGeneric = function (f) {
158
- return isFunction(f) && f._ != null && isKind(GenericFunction, f._);
94
+ isGeneric = function(f) {
95
+ return isFunction(f) && f._ != null && isKind(GenericFunction, f._);
159
96
  };
160
-
161
97
  generic = create({
162
- name: "generic",
163
- description: "Create or extend a generic function."
98
+ name: "generic",
99
+ description: "Create or extend a generic function."
164
100
  });
165
101
  define(generic, create);
166
102
  define(generic, isObject, create);
167
- define(generic, isString, isObject, function (name, description) {
168
- return create({ ...description,
169
- name
170
- });
103
+ define(generic, isString, isObject, function(name, description) {
104
+ return create({
105
+ ...description,
106
+ name
107
+ });
171
108
  });
172
- define(generic, isGeneric, function () {
173
- return true;
174
- }, function (f) {
175
- for (var _len5 = arguments.length, ax = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {
176
- ax[_key5 - 1] = arguments[_key5];
177
- }
178
-
179
- return define(f, ...ax);
109
+ define(generic, isGeneric, function() {
110
+ return true;
111
+ }, function(f, ...ax) {
112
+ return define(f, ...ax);
180
113
  });
181
114
  Generic = {
182
- create,
183
- define,
184
- lookup
115
+ create,
116
+ define,
117
+ lookup
185
118
  };
186
- export { Generic, generic };
119
+ export { Generic, generic }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9qb3kvc3JjL2dlbmVyaWMuY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQUEsT0FBQSxFQUFBLGVBQUEsRUFBQSxNQUFBLEVBQUEsTUFBQSxFQUFBLE9BQUEsRUFBQSxTQUFBLEVBQUEsTUFBQTtFQUFBOztBQUFBLE9BQUE7RUFDRSxNQURGO0VBRUUsVUFGRjtFQUdFLFFBSEY7RUFJRSxRQUpGO0NBQUEsTUFBQTs7QUFPTSxrQkFBTixNQUFBLGdCQUFBO0VBRVcsT0FBUixNQUFRLENBQUMsVUFBVSxDQUFBLENBQVgsQ0FBQTtXQUFrQixJQUFJLElBQUosQ0FBTSxPQUFOO0VBQWxCOztFQUVULFdBQWEsQ0FBQztNQUFFLFdBQUY7TUFBUyx5QkFBVDtNQUF1QjtJQUF2QixDQUFELENBQUE7SUFBRSxJQUFDLENBQUE7SUFBTSxJQUFDLENBQUE7SUFBYSxJQUFDLENBQUE7O01BQ25DLElBQUMsQ0FBQSxPQUFROztJQUNULElBQUMsQ0FBQSxPQUFELEdBQVc7O01BQ1gsSUFBQyxDQUFBLFVBQVcsQ0FBQSxHQUFDLElBQUQsQ0FBQSxHQUFBO0FBQ2hCLFlBQUE7UUFBTSxLQUFBLEdBQVEsSUFBSSxTQUFKLENBQWMsQ0FBQSxDQUFBLENBQUcsSUFBQyxDQUFBLElBQUosQ0FBQSxvQkFBQSxDQUFkO1FBQ1IsS0FBSyxDQUFDLFNBQU4sR0FBa0I7UUFDbEIsTUFBTTtNQUhJOztFQUhEOztFQVFiLE1BQVEsQ0FBQSxHQUFDLEtBQUQsQ0FBQTtBQUFnQixRQUFBLENBQUEsRUFBQTtvQ0FBTDtJQUFNLElBQUMsQ0FBQSxPQUFPLENBQUMsT0FBVCxDQUFpQixDQUFDLEtBQUQsRUFBUSxDQUFSLENBQWpCO1dBQThCO0VBQS9DOztFQUVSLE1BQVEsQ0FBQyxJQUFELENBQUE7QUFFVixRQUFBLENBQUEsRUFBQSxDQUFBLEVBQUEsQ0FBQSxFQUFBLEdBQUEsRUFBQSxLQUFBLEVBQUEsR0FB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O0FBRVYsT0FBQTtFQUFRLE9BQVI7RUFBaUIsT0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBpc0tpbmRcbiAgaXNGdW5jdGlvblxuICBpc1N0cmluZ1xuICBpc09iamVjdFxufSBmcm9tIFwiLi90eXBlXCJcblxuY2xhc3MgR2VuZXJpY0Z1bmN0aW9uXG5cbiAgQGNyZWF0ZTogKG9wdGlvbnMgPSB7fSkgLT4gbmV3IEAgb3B0aW9uc1xuXG4gIGNvbnN0cnVjdG9yOiAoe0BuYW1lLCBAZGVzY3JpcHRpb24sIEBkZWZhdWx0fSkgLT5cbiAgICBAbmFtZSA/PSBcImFub255bW91cy1nZW5lcmljXCJcbiAgICBAZW50cmllcyA9IFtdXG4gICAgQGRlZmF1bHQgPz0gKGFyZ3MuLi4pID0+XG4gICAgICBlcnJvciA9IG5ldyBUeXBlRXJyb3IgXCIje0BuYW1lfTogaW52YWxpZCBhcmd1bWVudHMuXCJcbiAgICAgIGVycm9yLmFyZ3VtZW50cyA9IGFyZ3NcbiAgICAgIHRocm93IGVycm9yXG5cbiAgZGVmaW5lOiAodGVybXMuLi4sIGYpIC0+IEBlbnRyaWVzLnVuc2hpZnQgW3Rlcm1zLCBmXSA7IEBcblxuICBsb29rdXA6IChhcmdzKSAtPlxuXG4gICAgIyBnbyB0aHJvdWdoIGVhY2ggZGVmaW5pdGlvbiBpbiBvdXIgbG9va3VwICd0YWJsZSdcbiAgICBmb3IgW3Rlcm1zLCBmXSBpbiBAZW50cmllc1xuXG4gICAgICAjIHRoZXJlIG11c3QgYmUgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IHBlciB0ZXJtXG4gICAgICAjICh2YXJpYWRpYyB0ZXJtcyBjYW4gY29uc3VtZSBtdWx0aXBsZSBhcmd1bWVudHMsXG4gICAgICAjIHNvIHRoZSBjb252ZXJzZSBpcyBub3QgdHJ1ZSlcbiAgICAgIGNvbnRpbnVlIGlmIHRlcm1zLmxlbmd0aCA+IGFyZ3MubGVuZ3RoXG5cbiAgICAgICMgYWxsb3cgZm9yIHRoZSBudWxsYXJ5IGZ1bmN0aW9uXG4gICAgICByZXR1cm4gZiBpZiB0ZXJtcy5sZW5ndGggPT0gMCAmJiBhcmdzLmxlbmd0aCA9PSAwXG5cbiAgICAgICMgd2UgY2FuJ3QgaGF2ZSBhIG1hdGNoIGlmIHdlIGRvbid0IG1hdGNoIGFueSB0ZXJtc1xuICAgICAgbWF0Y2ggPSBmYWxzZVxuXG4gICAgICAjIGVhY2ggYXJndW1lbnQgbXVzdCBiZSBjb25zdW1lZFxuICAgICAgaSA9IDBcbiAgICAgIHdoaWxlIGkgPCBhcmdzLmxlbmd0aFxuXG4gICAgICAgICMgaWYgdGhlcmUncyBubyBjb3JyZXNwb25kaW5nIHRlcm0sIHdlIGhhdmUgbGVmdG92ZXJcbiAgICAgICAgIyBhcmd1bWVudHMgd2l0aCBubyB0ZXJtIHRvIGNvbnN1bWUgdGhlbSwgc28gbW92ZSBvblxuICAgICAgICBpZiAhKHRlcm0gPSB0ZXJtc1tpXSk/XG4gICAgICAgICAgbWF0Y2ggPSBmYWxzZVxuICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgIyBpZiB0aGUgdGVybSBtYXkgYmUgdmFyaWFkaWMgKGluZGljYXRlZCBieSB0YWtpbmcgMCBhcmd1bWVudHMpXG4gICAgICAgICMgYW5kIHRoaXMgaXMgdGhlIGxhc3QgYXZhaWxhYmxlIHRlcm1cbiAgICAgICAgIyB0cnkgdGhlIHRlcm0gd2l0aCB0aGUgcmVtYWluaW5nIGFyZ3VtZW50c1xuICAgICAgICBpZiAodGVybXMubGVuZ3RoID09IGkgKyAxKSAmJiB0ZXJtLmxlbmd0aCA9PSAwXG4gICAgICAgICAgbWF0Y2ggPSB0ZXJtIGFyZ3NbaS4uXS4uLlxuICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgIyBvdGhlcndpc2UsIHdlIGhhdmUgdGhlIGRlZmF1bHQgY2FzZSwgd2hlcmUgd2UgdHJ5IHRvIG1hdGNoXG4gICAgICAgICMgdGhlIG5leHQgYXJndW1lbnQgd2l0aCB0aGUgbmV4dCB0ZXJtXG4gICAgICAgIGJyZWFrIGlmICEobWF0Y2ggPSB0ZXJtIGFyZ3NbaSsrXSlcblxuICAgICAgIyBpZiB3ZSBlbmRlZCB1cCB3aXRoIGEgbWF0Y2gsIGp1c3QgcmV0dXJuIHRoZSBjb3JyZXNwb25kaW5nIGZuXG4gICAgICByZXR1cm4gZiBpZiBtYXRjaFxuXG4gICAgIyBpZiBleGl0IHRoZSBsb29wIHdpdGhvdXQgcmV0dXJuaW5nIGEgbWF0Y2gsIHJldHVybiB0aGUgZGVmYXVsdFxuICAgIEBkZWZhdWx0XG5cbiAgZGlzcGF0Y2g6IChhcmdzKSAtPlxuICAgIGYgPSBAbG9va3VwIGFyZ3NcbiAgICBmIGFyZ3MuLi5cblxubG9va3VwID0gKHtffSwgYXJncykgLT4gXy5sb29rdXAgYXJnc1xuZGVmaW5lID0gKHtffSwgYXJncy4uLikgLT4gXy5kZWZpbmUgYXJncy4uLlxuY3JlYXRlID0gKG9wdGlvbnMpIC0+XG4gIGYgPSAoYXJncy4uLikgLT4gZi5fLmRpc3BhdGNoIGFyZ3NcbiAgZi5fID0gR2VuZXJpY0Z1bmN0aW9uLmNyZWF0ZSBvcHRpb25zXG4gIGZcblxuaXNHZW5lcmljID0gKGYpIC0+XG4gIChpc0Z1bmN0aW9uIGYpICYmIChmLl8/KSAmJiAoaXNLaW5kIEdlbmVyaWNGdW5jdGlvbiwgZi5fKVxuXG5nZW5lcmljID0gY3JlYXRlXG4gIG5hbWU6IFwiZ2VuZXJpY1wiXG4gIGRlc2NyaXB0aW9uOiBcIkNyZWF0ZSBvciBleHRlbmQgYSBnZW5lcmljIGZ1bmN0aW9uLlwiXG5cbmRlZmluZSBnZW5lcmljLCBjcmVhdGVcblxuZGVmaW5lIGdlbmVyaWMsIGlzT2JqZWN0LCBjcmVhdGVcblxuZGVmaW5lIGdlbmVyaWMsIGlzU3RyaW5nLCBpc09iamVjdCwgKG5hbWUsIGRlc2NyaXB0aW9uKSAtPlxuICBjcmVhdGUge2Rlc2NyaXB0aW9uLi4uLCBuYW1lfVxuXG5kZWZpbmUgZ2VuZXJpYywgaXNHZW5lcmljLCAoLT4gdHJ1ZSksIChmLCBheC4uLikgLT4gZGVmaW5lIGYsIGF4Li4uXG5cbkdlbmVyaWMgPSB7Y3JlYXRlLCBkZWZpbmUsIGxvb2t1cH1cblxuZXhwb3J0IHtHZW5lcmljLCBnZW5lcmljfVxuIl19
120
+ //# sourceURL=/@dashkite/joy/src/generic.coffee
121
+
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9AZGFzaGtpdGUvam95L3NyYy9nZW5lcmljLmNvZmZlZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBpc0tpbmRcbiAgaXNGdW5jdGlvblxuICBpc1N0cmluZ1xuICBpc09iamVjdFxufSBmcm9tIFwiLi90eXBlXCJcblxuY2xhc3MgR2VuZXJpY0Z1bmN0aW9uXG5cbiAgQGNyZWF0ZTogKG9wdGlvbnMgPSB7fSkgLT4gbmV3IEAgb3B0aW9uc1xuXG4gIGNvbnN0cnVjdG9yOiAoe0BuYW1lLCBAZGVzY3JpcHRpb24sIEBkZWZhdWx0fSkgLT5cbiAgICBAbmFtZSA/PSBcImFub255bW91cy1nZW5lcmljXCJcbiAgICBAZW50cmllcyA9IFtdXG4gICAgQGRlZmF1bHQgPz0gKGFyZ3MuLi4pID0+XG4gICAgICBlcnJvciA9IG5ldyBUeXBlRXJyb3IgXCIje0BuYW1lfTogaW52YWxpZCBhcmd1bWVudHMuXCJcbiAgICAgIGVycm9yLmFyZ3VtZW50cyA9IGFyZ3NcbiAgICAgIHRocm93IGVycm9yXG5cbiAgZGVmaW5lOiAodGVybXMuLi4sIGYpIC0+IEBlbnRyaWVzLnVuc2hpZnQgW3Rlcm1zLCBmXSA7IEBcblxuICBsb29rdXA6IChhcmdzKSAtPlxuXG4gICAgIyBnbyB0aHJvdWdoIGVhY2ggZGVmaW5pdGlvbiBpbiBvdXIgbG9va3VwICd0YWJsZSdcbiAgICBmb3IgW3Rlcm1zLCBmXSBpbiBAZW50cmllc1xuXG4gICAgICAjIHRoZXJlIG11c3QgYmUgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IHBlciB0ZXJtXG4gICAgICAjICh2YXJpYWRpYyB0ZXJtcyBjYW4gY29uc3VtZSBtdWx0aXBsZSBhcmd1bWVudHMsXG4gICAgICAjIHNvIHRoZSBjb252ZXJzZSBpcyBub3QgdHJ1ZSlcbiAgICAgIGNvbnRpbnVlIGlmIHRlcm1zLmxlbmd0aCA+IGFyZ3MubGVuZ3RoXG5cbiAgICAgICMgYWxsb3cgZm9yIHRoZSBudWxsYXJ5IGZ1bmN0aW9uXG4gICAgICByZXR1cm4gZiBpZiB0ZXJtcy5sZW5ndGggPT0gMCAmJiBhcmdzLmxlbmd0aCA9PSAwXG5cbiAgICAgICMgd2UgY2FuJ3QgaGF2ZSBhIG1hdGNoIGlmIHdlIGRvbid0IG1hdGNoIGFueSB0ZXJtc1xuICAgICAgbWF0Y2ggPSBmYWxzZVxuXG4gICAgICAjIGVhY2ggYXJndW1lbnQgbXVzdCBiZSBjb25zdW1lZFxuICAgICAgaSA9IDBcbiAgICAgIHdoaWxlIGkgPCBhcmdzLmxlbmd0aFxuXG4gICAgICAgICMgaWYgdGhlcmUncyBubyBjb3JyZXNwb25kaW5nIHRlcm0sIHdlIGhhdmUgbGVmdG92ZXJcbiAgICAgICAgIyBhcmd1bWVudHMgd2l0aCBubyB0ZXJtIHRvIGNvbnN1bWUgdGhlbSwgc28gbW92ZSBvblxuICAgICAgICBpZiAhKHRlcm0gPSB0ZXJtc1tpXSk/XG4gICAgICAgICAgbWF0Y2ggPSBmYWxzZVxuICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgIyBpZiB0aGUgdGVybSBtYXkgYmUgdmFyaWFkaWMgKGluZGljYXRlZCBieSB0YWtpbmcgMCBhcmd1bWVudHMpXG4gICAgICAgICMgYW5kIHRoaXMgaXMgdGhlIGxhc3QgYXZhaWxhYmxlIHRlcm1cbiAgICAgICAgIyB0cnkgdGhlIHRlcm0gd2l0aCB0aGUgcmVtYWluaW5nIGFyZ3VtZW50c1xuICAgICAgICBpZiAodGVybXMubGVuZ3RoID09IGkgKyAxKSAmJiB0ZXJtLmxlbmd0aCA9PSAwXG4gICAgICAgICAgbWF0Y2ggPSB0ZXJtIGFyZ3NbaS4uXS4uLlxuICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgIyBvdGhlcndpc2UsIHdlIGhhdmUgdGhlIGRlZmF1bHQgY2FzZSwgd2hlcmUgd2UgdHJ5IHRvIG1hdGNoXG4gICAgICAgICMgdGhlIG5leHQgYXJndW1lbnQgd2l0aCB0aGUgbmV4dCB0ZXJtXG4gICAgICAgIGJyZWFrIGlmICEobWF0Y2ggPSB0ZXJtIGFyZ3NbaSsrXSlcblxuICAgICAgIyBpZiB3ZSBlbmRlZCB1cCB3aXRoIGEgbWF0Y2gsIGp1c3QgcmV0dXJuIHRoZSBjb3JyZXNwb25kaW5nIGZuXG4gICAgICByZXR1cm4gZiBpZiBtYXRjaFxuXG4gICAgIyBpZiBleGl0IHRoZSBsb29wIHdpdGhvdXQgcmV0dXJuaW5nIGEgbWF0Y2gsIHJldHVybiB0aGUgZGVmYXVsdFxuICAgIEBkZWZhdWx0XG5cbiAgZGlzcGF0Y2g6IChhcmdzKSAtPlxuICAgIGYgPSBAbG9va3VwIGFyZ3NcbiAgICBmIGFyZ3MuLi5cblxubG9va3VwID0gKHtffSwgYXJncykgLT4gXy5sb29rdXAgYXJnc1xuZGVmaW5lID0gKHtffSwgYXJncy4uLikgLT4gXy5kZWZpbmUgYXJncy4uLlxuY3JlYXRlID0gKG9wdGlvbnMpIC0+XG4gIGYgPSAoYXJncy4uLikgLT4gZi5fLmRpc3BhdGNoIGFyZ3NcbiAgZi5fID0gR2VuZXJpY0Z1bmN0aW9uLmNyZWF0ZSBvcHRpb25zXG4gIGZcblxuaXNHZW5lcmljID0gKGYpIC0+XG4gIChpc0Z1bmN0aW9uIGYpICYmIChmLl8/KSAmJiAoaXNLaW5kIEdlbmVyaWNGdW5jdGlvbiwgZi5fKVxuXG5nZW5lcmljID0gY3JlYXRlXG4gIG5hbWU6IFwiZ2VuZXJpY1wiXG4gIGRlc2NyaXB0aW9uOiBcIkNyZWF0ZSBvciBleHRlbmQgYSBnZW5lcmljIGZ1bmN0aW9uLlwiXG5cbmRlZmluZSBnZW5lcmljLCBjcmVhdGVcblxuZGVmaW5lIGdlbmVyaWMsIGlzT2JqZWN0LCBjcmVhdGVcblxuZGVmaW5lIGdlbmVyaWMsIGlzU3RyaW5nLCBpc09iamVjdCwgKG5hbWUsIGRlc2NyaXB0aW9uKSAtPlxuICBjcmVhdGUge2Rlc2NyaXB0aW9uLi4uLCBuYW1lfVxuXG5kZWZpbmUgZ2VuZXJpYywgaXNHZW5lcmljLCAoLT4gdHJ1ZSksIChmLCBheC4uLikgLT4gZGVmaW5lIGYsIGF4Li4uXG5cbkdlbmVyaWMgPSB7Y3JlYXRlLCBkZWZpbmUsIGxvb2t1cH1cblxuZXhwb3J0IHtHZW5lcmljLCBnZW5lcmljfVxuIl0sIm5hbWVzIjpbIkdlbmVyaWMiLCJHZW5lcmljRnVuY3Rpb24iLCJjcmVhdGUiLCJkZWZpbmUiLCJnZW5lcmljIiwiaXNHZW5lcmljIiwibG9va3VwIiwic3BsaWNlIiwiaXNLaW5kIiwiaXNGdW5jdGlvbiIsImlzU3RyaW5nIiwiaXNPYmplY3QiLCJvcHRpb25zIiwiY29uc3RydWN0b3IiLCJuYW1lIiwibmFtZTEiLCJkZXNjcmlwdGlvbiIsImRlc2NyaXB0aW9uMSIsImRlZmF1bHQiLCJfZGVmYXVsdCIsImVudHJpZXMiLCJhcmdzIiwiZXJyb3IiLCJUeXBlRXJyb3IiLCJhcmd1bWVudHMiLCJ0ZXJtcyIsImYiLCJyZWYiLCJjYWxsIiwidW5zaGlmdCIsImkiLCJqIiwibGVuIiwibWF0Y2giLCJ0ZXJtIiwibGVuZ3RoIiwic2xpY2UiLCJkaXNwYXRjaCIsIl8iLCJheCJdLCJtYXBwaW5ncyI6IkFBQUEsSUFBQUEsU0FBQUMsaUJBQUFDLFFBQUFDLFFBQUFDLFNBQUFDLFdBQUFDLFFBQUFDLFNBQUEsRUFBQSxDQUFBQSxNQUFBO0FBQUEsU0FDRUMsTUFERixFQUVFQyxVQUZGLEVBR0VDLFFBSEYsRUFJRUMsUUFKRixRQUFBLFNBQUE7QUFPTVYsa0JBQU4sTUFBQUE7SUFFVyxPQUFSQyxPQUFTVSxVQUFVLENBQUEsQ0FBWCxFQUFBO2VBQWtCLElBQUksSUFBSixDQUFNQTtJQUF4QjtJQUVUQyxZQUFjLEVBQUVDLE1BQUFDLEtBQUYsRUFBU0MsYUFBQUMsWUFBVCxFQUF1QkMsU0FBQUMsUUFBQSxFQUF4QixDQUFBO1FBQUUsSUFBQyxDQUFBTCxJQUFBLEdBQUFDO1FBQU0sSUFBQyxDQUFBQyxXQUFBLEdBQUFDO1FBQWEsSUFBQyxDQUFBQyxPQUFBLEdBQUFDOztZQUNuQyxJQUFDLENBQUFMLElBQUEsR0FBUTs7UUFDVCxJQUFDLENBQUFNLE9BQUQsR0FBVyxFQUFBOztZQUNYLElBQUMsQ0FBQUYsT0FBQSxHQUFXLENBQUEsR0FBQ0c7Z0JBQ2pCLElBQUFDO2dCQUFNQSxRQUFRLElBQUlDLFVBQVUsQ0FBQSxFQUFHLElBQUMsQ0FBQVQs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
@@ -1,13 +1,16 @@
1
- export * from "./function.js";
2
- export * from "./generic.js";
3
- export * from "./array.js";
4
- export * from "./set.js";
5
- export * from "./iterable.js";
6
- export * from "./math.js";
7
- export * from "./metaclass.js";
8
- export * from "./object.js";
9
- export * from "./predicate.js";
10
- export * from "./text.js";
11
- export * from "./time.js";
12
- export * from "./type.js";
13
- export * from "./value.js";
1
+ export * from "./function";
2
+ export * from "./generic";
3
+ export * from "./array";
4
+ export * from "./set";
5
+ export * from "./iterable";
6
+ export * from "./math";
7
+ export * from "./metaclass";
8
+ export * from "./object";
9
+ export * from "./predicate";
10
+ export * from "./text";
11
+ export * from "./time";
12
+ export * from "./type";
13
+ export * from "./value"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9qb3kvc3JjL2luZGV4LmNvZmZlZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFBLENBQUE7O0FBQ0EsT0FBQSxDQUFBOztBQUNBLE9BQUEsQ0FBQTs7QUFDQSxPQUFBLENBQUE7O0FBQ0EsT0FBQSxDQUFBOztBQUNBLE9BQUEsQ0FBQTs7QUFDQSxPQUFBLENBQUE7O0FBQ0EsT0FBQSxDQUFBOztBQUNBLE9BQUEsQ0FBQTs7QUFFQSxPQUFBLENBQUE7O0FBQ0EsT0FBQSxDQUFBOztBQUNBLE9BQUEsQ0FBQTs7QUFDQSxPQUFBLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9mdW5jdGlvblwiXG5leHBvcnQgKiBmcm9tIFwiLi9nZW5lcmljXCJcbmV4cG9ydCAqIGZyb20gXCIuL2FycmF5XCJcbmV4cG9ydCAqIGZyb20gXCIuL3NldFwiXG5leHBvcnQgKiBmcm9tIFwiLi9pdGVyYWJsZVwiXG5leHBvcnQgKiBmcm9tIFwiLi9tYXRoXCJcbmV4cG9ydCAqIGZyb20gXCIuL21ldGFjbGFzc1wiXG5leHBvcnQgKiBmcm9tIFwiLi9vYmplY3RcIlxuZXhwb3J0ICogZnJvbSBcIi4vcHJlZGljYXRlXCJcbiMgZXhwb3J0ICogZnJvbSBcIi4vcHJvbWlzZVwiXG5leHBvcnQgKiBmcm9tIFwiLi90ZXh0XCJcbmV4cG9ydCAqIGZyb20gXCIuL3RpbWVcIlxuZXhwb3J0ICogZnJvbSBcIi4vdHlwZVwiXG5leHBvcnQgKiBmcm9tIFwiLi92YWx1ZVwiXG4iXX0=
14
+ //# sourceURL=/@dashkite/joy/src/index.coffee
15
+
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9AZGFzaGtpdGUvam95L3NyYy9pbmRleC5jb2ZmZWUiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vZnVuY3Rpb25cIlxuZXhwb3J0ICogZnJvbSBcIi4vZ2VuZXJpY1wiXG5leHBvcnQgKiBmcm9tIFwiLi9hcnJheVwiXG5leHBvcnQgKiBmcm9tIFwiLi9zZXRcIlxuZXhwb3J0ICogZnJvbSBcIi4vaXRlcmFibGVcIlxuZXhwb3J0ICogZnJvbSBcIi4vbWF0aFwiXG5leHBvcnQgKiBmcm9tIFwiLi9tZXRhY2xhc3NcIlxuZXhwb3J0ICogZnJvbSBcIi4vb2JqZWN0XCJcbmV4cG9ydCAqIGZyb20gXCIuL3ByZWRpY2F0ZVwiXG4jIGV4cG9ydCAqIGZyb20gXCIuL3Byb21pc2VcIlxuZXhwb3J0ICogZnJvbSBcIi4vdGV4dFwiXG5leHBvcnQgKiBmcm9tIFwiLi90aW1lXCJcbmV4cG9ydCAqIGZyb20gXCIuL3R5cGVcIlxuZXhwb3J0ICogZnJvbSBcIi4vdmFsdWVcIlxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQUEsYUFBQTtBQUNBLGNBQUEsWUFBQTtBQUNBLGNBQUEsVUFBQTtBQUNBLGNBQUEsUUFBQTtBQUNBLGNBQUEsYUFBQTtBQUNBLGNBQUEsU0FBQTtBQUNBLGNBQUEsY0FBQTtBQUNBLGNBQUEsV0FBQTtBQUNBLGNBQUEsY0FBQTtBQUVBLGNBQUEsU0FBQTtBQUNBLGNBQUEsU0FBQTtBQUNBLGNBQUEsU0FBQTtBQUNBLGNBQUEsVUFBQSJ9