WIP - add extractor, generate snippet_data
This commit is contained in:
32
node_modules/unist-util-select/lib/collector.js
generated
vendored
Normal file
32
node_modules/unist-util-select/lib/collector.js
generated
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
'use strict';
|
||||
|
||||
|
||||
// @example
|
||||
// var collect = Collector();
|
||||
// collect('foo');
|
||||
// collect(['foo', 'bar', 'baz']);
|
||||
// collect.result
|
||||
// //=> ['foo', 'bar', 'baz']
|
||||
//
|
||||
module.exports = function Collector () {
|
||||
var result = [];
|
||||
|
||||
// Append elements to array, filtering out duplicates.
|
||||
function collect (source) {
|
||||
if (Array.isArray(source)) {
|
||||
source.forEach(collectOne);
|
||||
}
|
||||
else {
|
||||
collectOne(source);
|
||||
}
|
||||
|
||||
function collectOne (element) {
|
||||
if (result.indexOf(element) < 0) {
|
||||
result.push(element);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
collect.result = result;
|
||||
return collect;
|
||||
};
|
||||
Reference in New Issue
Block a user