<commit_before>= DataType-FU {<img src="https://travis-ci.org/nuxy/DataType-FU.svg?branch=master" alt="Build Status" />}[https://travis-ci.org/nuxy/DataType-FU]

One of the most annoying things I find about the JavaScript language is the lack of support for strict typing when declaring function variable arguments.  Because of this I’m forced to litter my code with conditions that contain +typeof+ and +instanceof+ to type check each argument.

This is my attempt to resolve this madness.

== Installation

This package can be easily installed using:

{Bower}[http://bower.io]

    $ bower install datatype-fu

{NPM}[https://www.npmjs.org]

    $ npm install datatype-fu

== Use Example

    var fu = require('datatype-fu').fu;   // Node required

    var doSomething = fu(
        ['Array', 'Number', 'Object', 'String'],
        function(arr, num, obj, str) {

            // do something with the values; no type check needed
        }
    );

    doSomething(
        ['bucket1', 'bucket2', 'bucket3'],
        1234567890,
        { key: 'value' },
        'Hello World'
    );

== Author

{<NAME>}[https://github.com/nuxy]<commit_msg>Added License and Warranty info<commit_after>= DataType-FU {<img src="https://travis-ci.org/nuxy/DataType-FU.svg?branch=master" alt="Build Status" />}[https://travis-ci.org/nuxy/DataType-FU]

One of the most annoying things I find about the JavaScript language is the lack of support for strict typing when declaring function variable arguments.  Because of this I’m forced to litter my code with conditions that contain +typeof+ and +instanceof+ to type check each argument.

This is my attempt to resolve this madness.

== Installation

This package can be easily installed using:

{Bower}[http://bower.io]

    $ bower install datatype-fu

{NPM}[https://www.npmjs.org]

    $ npm install datatype-fu

== Use Example

    var fu = require('datatype-fu').fu;   // Node required

    var doSomething = fu(
        ['Array', 'Number', 'Object', 'String'],
        function(arr, num, obj, str) {

            // do something with the values; no type check needed
        }
    );

    doSomething(
        ['bucket1', 'bucket2', 'bucket3'],
        1234567890,
        { key: 'value' },
        'Hello World'
    );

== License and Warranty

This package is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.

_DataType-FU_ is provided under the terms of the {MIT license}[http://www.opensource.org/licenses/mit-license.php]

== Author

{<NAME>}[https://github.com/nuxy]
{'fraction_non_alphanumeric': 0.11784897025171624, 'fraction_numerical': 0.009916094584286803, 'mean_word_length': 3.1968, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 8, 'lorem ipsum': 0, 'www.': 3, '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': '3768258', 'n_tokens_mistral': 799, 'n_tokens_neox': 762, 'n_words': 275}