<commit_before>'use strict';

/**
 * # Constructor
 *
 * Provided as a convenient wrapper around Fast functions.
 *
 * ```js
 * var arr = fast([1,2,3,4,5,6]);
 *
 * var result = arr.filter(function (item) {
 *   return item % 2 === 0;
 * });
 *
 * result instanceof Fast; // true
 * result.length; // 3
 * ```
 *
 *
 * @param {Array} value The value to wrap.
 */
function Fast (value) {
  if (!(this instanceof Fast)) {
    return new Fast(value);
  }
  this.value = value || [];
}

module.exports = exports = Fast;

Fast.array = require('./array');
Fast['function'] = Fast.fn = require('./function');
Fast.object = require('./object');
Fast.string = require('./string');

Fast.clone = require('./clone');

Fast.apply = require('./function/apply');
Fast.bind = require('./function/bind');
Fast.partial = require('./function/partial');
Fast.partialConstructor = require('./function/partialConstructor');
Fast['try'] = Fast.attempt = require( './function/try' );

Fast.assign = require('./object/assign');
Fast.cloneObject = require('./object/clone');

Fast.map = require('./map');
Fast.filter = require('./filter');
Fast.forEach = require('./forEach');
Fast.reduce = require('./reduce');
Fast.reduceRight = require('./reduceRight');


Fast.cloneArray = require('./array/clone');

Fast.concat = require('./array/concat');
Fast.some = require('./array/some');
Fast.every = require('./array/every');
Fast.indexOf = require('./array/indexOf');
Fast.lastIndexOf = require('./array/lastIndexOf');

Fast.intern = require('./string/intern');


/**
 * # Concat
 *
 * Concatenate multiple arrays.
 *
 * @param  {Array|mixed} item, ... The item(s) to concatenate.<commit_msg>add deprecation warnings [ci skip]<commit_after>'use strict';

/**
 * # Constructor
 *
 * Provided as a convenient wrapper around Fast functions.
 *
 * ```js
 * var arr = fast([1,2,3,4,5,6]);
 *
 * var result = arr.filter(function (item) {
 *   return item % 2 === 0;
 * });
 *
 * result instanceof Fast; // true
 * result.length; // 3
 * ```
 *
 *
 * @param {Array} value The value to wrap.
 */
function Fast (value) {
  if (!(this instanceof Fast)) {
    return new Fast(value);
  }
  this.value = value || [];
}

module.exports = exports = Fast;

Fast.array = require('./array');
Fast['function'] = Fast.fn = require('./function');
Fast.object = require('./object');
Fast.string = require('./string');

Fast.clone = require('./clone');

Fast.apply = require('./function/apply');
Fast.bind = require('./function/bind');
Fast.partial = require('./function/partial');
Fast.partialConstructor = require('./function/partialConstructor');
Fast['try'] = Fast.attempt = require( './function/try' );

Fast.assign = require('./object/assign');
Fast.cloneObject = require('./object/clone'); // @deprecated use fast.object.clone()

Fast.map = require('./map');
Fast.filter = require('./filter');
Fast.forEach = require('./forEach');
Fast.reduce = require('./reduce');
Fast.reduceRight = require('./reduceRight');


Fast.cloneArray = require('./array/clone'); // @deprecated use fast.array.clone()

Fast.concat = require('./array/concat');
Fast.some = require('./array/some');
Fast.every = require('./array/every');
Fast.indexOf = require('./array/indexOf');
Fast.lastIndexOf = require('./array/lastIndexOf');

Fast.intern = require('./string/intern');


/**
 * # Concat
 *
 * Concatenate multiple arrays.
 *
 * @param  {Array|mixed} item, ... The item(s) to concatenate.
{'fraction_non_alphanumeric': 0.21378504672897197, 'fraction_numerical': 0.005257009345794392, 'mean_word_length': 3.913916786226686, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4116267', 'n_tokens_mistral': 1027, 'n_tokens_neox': 1015, 'n_words': 235}