<commit_before>###*
Checks whether an object is an array.

<code><pre>
Object.isArray([1, 2, 4])
# => true

Object.isArray({key: "value"})
# => false
</pre></code>

@name isArray
@methodOf Object

@param {Object} object The object to check for array-ness.
@type Boolean
@returns A boolean expressing whether the object is an instance of Array 
###
Object.isArray = (object)->
  Object::toString.call(object) == '[object Array]'

###*
Merges properties from objects into target without overiding.
First come, first served.

<code><pre>
  I =
    a: 1
    b: 2
    c: 3

  Object.reverseMerge I,
    c: 6
    d: 4   

  I # => {a: 1, b:2, c:3, d: 4}
</pre></code>

@name reverseMerge
@methodOf Object

@param {Object} target The object to merge the properties into.
@type Object
@returns target
###
Object.reverseMerge = (target, objects...) ->
  for object in objects
    for name of object
      unless target.hasOwnProperty(name)
        target[name] = object[name]

  return target

###*
Merges properties from sources into target with overiding.
Last in covers earlier properties.

<code><pre>
  I =
    a: 1
    b: 2
    c: 3

  Object.extend I,
    c: 6
    d: 4

  I

  # => {a: 1, b:2, c:6, d: 4}
</pre></code>

@name extend
@methodOf Object

@param {Object} target The object to merge the properties into.
@type Object
@returns target
###
Object.extend = (target, sources...) ->
  for source in sources
    for name of source
      target[name] = source[name]

  return target

###*
Helper method that tells you if something is an object.

<code><pre>
  object = {a: 1}

  Object.isObject(object)
  # => true
</pre></code>

@name isObject
@methodOf Object

@param {Object} object Maybe this guy is an object.
@returns {Boolean} true if this guy is an object.
###
Object.isObject = (object) ->
  Object.prototype.toString.call(object) == '[object Object]'

<commit_msg>object_extensions<commit_after>###*
Checks whether an object is an array.

<code><pre>
Object.isArray([1, 2, 4])
# => true

Object.isArray({key: "value"})
# => false
</pre></code>

@name isArray
@methodOf Object
@param {Object} object The object to check for array-ness.
@returns {Boolean} A boolean expressing whether the object is an instance of Array 
###
Object.isArray = (object)->
  Object::toString.call(object) == '[object Array]'

###*
Merges properties from objects into target without overiding.
First come, first served.

<code><pre>
  I =
    a: 1
    b: 2
    c: 3

  Object.reverseMerge I,
    c: 6
    d: 4   

  I # => {a: 1, b:2, c:3, d: 4}
</pre></code>

@name reverseMerge
@methodOf Object

@param {Object} target The object to merge the properties into.
@type Object
@returns target
###
Object.reverseMerge = (target, objects...) ->
  for object in objects
    for name of object
      unless target.hasOwnProperty(name)
        target[name] = object[name]

  return target

###*
Merges properties from sources into target with overiding.
Last in covers earlier properties.

<code><pre>
  I =
    a: 1
    b: 2
    c: 3

  Object.extend I,
    c: 6
    d: 4

  I

  # => {a: 1, b:2, c:6, d: 4}
</pre></code>

@name extend
@methodOf Object

@param {Object} target The object to merge the properties into.
@type Object
@returns target
###
Object.extend = (target, sources...) ->
  for source in sources
    for name of source
      target[name] = source[name]

  return target

###*
Helper method that tells you if something is an object.

<code><pre>
  object = {a: 1}

  Object.isObject(object)
  # => true
</pre></code>

@name isObject
@methodOf Object

@param {Object} object Maybe this guy is an object.
@returns {Boolean} true if this guy is an object.
###
Object.isObject = (object) ->
  Object.prototype.toString.call(object) == '[object Object]'


{'fraction_non_alphanumeric': 0.13409757398027192, 'fraction_numerical': 0.011730205278592375, 'mean_word_length': 3.3275663206459054, 'pattern_counts': {'":': 0, '<': 35, '<?xml version=': 0, '>': 53, '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': '5297564', 'n_tokens_mistral': 1279, 'n_tokens_neox': 1231, 'n_words': 459}