<commit_before>var fs           = require('fs'),
    path         = require('path'),
    decorate     = require('./utils').decorate,
    constants    = require('./utils').constants,
    isObject     = require('./utils').isObject,
    platformPath = require('./bindings').platformPath;


module.exports = {
  AppSettings: AppSettings,
  WindowSettings: WindowSettings,
  IconGroup: IconGroup
};

function AppSettings(o){
  for (var k in Object(o)) {
    this[k] = o[k];
  }
}

AppSettings.create = function createAppSettings(o){
  return new AppSettings(o);
};

constants(AppSettings, {
  LOGLEVEL_VERBOSE     : -1,
  LOGLEVEL_INFO        :  0,
  LOGLEVEL_WARNING     :  1,
  LOGLEVEL_ERROR       :  2,<commit_msg>starting to add some stuff for handling the cache<commit_after>var fs           = require('fs'),
    path         = require('path'),
    decorate     = require('./utils').decorate,
    constants    = require('./utils').constants,
    isObject     = require('./utils').isObject,
    platformPath = require('./bindings').platformPath;


module.exports = {
  AppSettings: AppSettings,
  WindowSettings: WindowSettings,
  IconGroup: IconGroup
};

var user = {
  win32:  function(){ return { home: process.env.USERPROFILE, name: process.env.USERNAME } },
  linux:  function(){ return { home: process.env.HOME,        name: process.env.LOGNAME  } },
  darwin: function(){ return { home: process.env.HOME,        name: process.env.USER     } }
}[process.platform]();



function AppSettings(o){
  for (var k in Object(o)) {
    this[k] = o[k];
  }
}

AppSettings.create = function createAppSettings(o){
  return new AppSettings(o);
};

constants(AppSettings, {
  LOGLEVEL_VERBOSE     : -1,
  LOGLEVEL_INFO        :  0,
  LOGLEVEL_WARNING     :  1,
  LOGLEVEL_ERROR       :  2,
{'fraction_non_alphanumeric': 0.14085297418630752, 'fraction_numerical': 0.005611672278338945, 'mean_word_length': 2.988814317673378, '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': '7081003', 'n_tokens_mistral': 560, 'n_tokens_neox': 558, 'n_words': 119}