Global Metrics

path: .metrics.mi.mi_sei
old: 14.693989182631988
new: 41.02668307155135

path: .metrics.mi.mi_visual_studio
old: 25.52331254267134
new: 32.16543742189723

path: .metrics.mi.mi_original
old: 43.64486444796799
new: 55.00289799144427

path: .metrics.nargs.average
old: 0.25
new: 1.0

path: .metrics.cognitive.sum
old: 17.0
new: 1.0

path: .metrics.cognitive.average
old: 4.25
new: 1.0

path: .metrics.nexits.sum
old: 12.0
new: 15.0

path: .metrics.nexits.average
old: 3.0
new: 15.0

path: .metrics.halstead.level
old: 0.03758169934640523
new: 0.1607142857142857

path: .metrics.halstead.N1
old: 277.0
new: 74.0

path: .metrics.halstead.effort
old: 87773.80789120407
new: 4676.477634939947

path: .metrics.halstead.n1
old: 24.0
new: 10.0

path: .metrics.halstead.N2
old: 204.0
new: 56.0

path: .metrics.halstead.estimated_program_length
old: 710.206799974553
new: 280.35267028370896

path: .metrics.halstead.vocabulary
old: 116.0
new: 55.0

path: .metrics.halstead.difficulty
old: 26.60869565217391
new: 6.222222222222222

path: .metrics.halstead.volume
old: 3298.688858656362
new: 751.5767627582057

path: .metrics.halstead.n2
old: 92.0
new: 45.0

path: .metrics.halstead.purity_ratio
old: 1.4765214136685092
new: 2.1565590021823766

path: .metrics.halstead.length
old: 481.0
new: 130.0

path: .metrics.halstead.time
old: 4876.322660622448
new: 259.8043130522193

path: .metrics.halstead.bugs
old: 0.6583477744834666
new: 0.09321618390042707

path: .metrics.nom.total
old: 4.0
new: 1.0

path: .metrics.nom.functions
old: 4.0
new: 1.0

path: .metrics.loc.blank
old: 14.0
new: 19.0

path: .metrics.loc.sloc
old: 139.0
new: 119.0

path: .metrics.loc.ploc
old: 109.0
new: 69.0

path: .metrics.loc.lloc
old: 44.0
new: 33.0

path: .metrics.loc.cloc
old: 16.0
new: 31.0

path: .metrics.cyclomatic.average
old: 3.2857142857142856
new: 9.0

path: .metrics.cyclomatic.sum
old: 23.0
new: 18.0

Spaces Data

Minimal test - lines (51, 115)

path: .spaces[0].metrics.nexits.sum
old: 12.0
new: 15.0

path: .spaces[0].metrics.nexits.average
old: 3.0
new: 15.0

path: .spaces[0].metrics.nom.total
old: 4.0
new: 1.0

path: .spaces[0].metrics.nom.functions
old: 4.0
new: 1.0

path: .spaces[0].metrics.loc.cloc
old: 7.0
new: 23.0

path: .spaces[0].metrics.loc.blank
old: 12.0
new: 0.0

path: .spaces[0].metrics.loc.lloc
old: 44.0
new: 33.0

path: .spaces[0].metrics.loc.ploc
old: 97.0
new: 50.0

path: .spaces[0].metrics.loc.sloc
old: 116.0
new: 65.0

path: .spaces[0].metrics.cyclomatic.sum
old: 22.0
new: 17.0

path: .spaces[0].metrics.cyclomatic.average
old: 3.6666666666666665
new: 17.0

path: .spaces[0].metrics.nargs.average
old: 0.25
new: 1.0

path: .spaces[0].metrics.mi.mi_original
old: 47.00353352914064
new: 66.04218906087591

path: .spaces[0].metrics.mi.mi_sei
old: 12.923074829340395
new: 61.13542090149747

path: .spaces[0].metrics.mi.mi_visual_studio
old: 27.487446508269382
new: 38.62116319349469

path: .spaces[0].metrics.cognitive.sum
old: 17.0
new: 1.0

path: .spaces[0].metrics.cognitive.average
old: 4.25
new: 1.0

path: .spaces[0].metrics.halstead.N1
old: 277.0
new: 71.0

path: .spaces[0].metrics.halstead.level
old: 0.03565292096219931
new: 0.15348837209302324

path: .spaces[0].metrics.halstead.difficulty
old: 28.048192771084334
new: 6.515151515151516

path: .spaces[0].metrics.halstead.N2
old: 194.0
new: 43.0

path: .spaces[0].metrics.halstead.n1
old: 24.0
new: 10.0

path: .spaces[0].metrics.halstead.vocabulary
old: 107.0
new: 43.0

path: .spaces[0].metrics.halstead.bugs
old: 0.6647610224857744
new: 0.08441746621585895

path: .spaces[0].metrics.halstead.n2
old: 83.0
new: 33.0

path: .spaces[0].metrics.halstead.purity_ratio
old: 1.3570432543929989
new: 1.751616551646514

path: .spaces[0].metrics.halstead.time
old: 4947.749433055569
new: 223.901934575334

path: .spaces[0].metrics.halstead.estimated_program_length
old: 639.1673728191025
new: 199.6842868877026

path: .spaces[0].metrics.halstead.effort
old: 89059.48979500025
new: 4030.234822356013

path: .spaces[0].metrics.halstead.length
old: 471.0
new: 114.0

path: .spaces[0].metrics.halstead.volume
old: 3175.23095059494
new: 618.5941820360391

Code

inline nsresult nsresultForErrno(int aErr) {
  switch (aErr) {
    case 0:
      return NS_OK;
#ifdef EDQUOT
    case EDQUOT: /* Quota exceeded */
                 // FALLTHROUGH to return NS_ERROR_FILE_DISK_FULL
#endif
    case ENOSPC:
      return NS_ERROR_FILE_DISK_FULL;
#ifdef EISDIR
    case EISDIR: /*      Is a directory. */
      return NS_ERROR_FILE_IS_DIRECTORY;
#endif
    case ENAMETOOLONG:
      return NS_ERROR_FILE_NAME_TOO_LONG;
    case ENOEXEC: /*     Executable file format error. */
      return NS_ERROR_FILE_EXECUTION_FAILED;
    case ENOENT:
      return NS_ERROR_FILE_TARGET_DOES_NOT_EXIST;
    case ENOTDIR:
      return NS_ERROR_FILE_DESTINATION_NOT_DIR;
#ifdef ELOOP
    case ELOOP:
      return NS_ERROR_FILE_UNRESOLVABLE_SYMLINK;
#endif /* ELOOP */
#ifdef ENOLINK
    case ENOLINK:
      return NS_ERROR_FILE_UNRESOLVABLE_SYMLINK;
#endif /* ENOLINK */
    case EEXIST:
      return NS_ERROR_FILE_ALREADY_EXISTS;
#ifdef EPERM
    case EPERM:
#endif /* EPERM */
    case EACCES:
      return NS_ERROR_FILE_ACCESS_DENIED;
#ifdef EROFS
    case EROFS: /*     Read-only file system. */
      return NS_ERROR_FILE_READ_ONLY;
#endif
      /*
       * On AIX 4.3, ENOTEMPTY is defined as EEXIST,
       * so there can't be cases for both without
       * preprocessing.
       */
#if ENOTEMPTY != EEXIST
    case ENOTEMPTY:
      return NS_ERROR_FILE_DIR_NOT_EMPTY;
#endif /* ENOTEMPTY != EEXIST */
    /* Note that nsIFile.createUnique() returns
       NS_ERROR_FILE_TOO_BIG when it cannot create a temporary
       file with a unique filename.
       See https://developer.mozilla.org/en-US/docs/Table_Of_Errors
       Other usages of NS_ERROR_FILE_TOO_BIG in the source tree
       are in line with the POSIX semantics of EFBIG.
       So this is a reasonably good approximation.
    */
    case EFBIG: /*     File too large. */
      return NS_ERROR_FILE_TOO_BIG;

    default:
      return NS_ERROR_FAILURE;
  }
}