Global Metrics

path: .metrics.nargs.average
old: 3.090909090909091
new: 0.375

path: .metrics.nargs.sum
old: 34.0
new: 3.0

path: .metrics.halstead.volume
old: 14097.309915312191
new: 835.2930376515064

path: .metrics.halstead.n1
old: 11.0
new: 13.0

path: .metrics.halstead.purity_ratio
old: 0.3476735039603787
new: 1.318207855933512

path: .metrics.halstead.vocabulary
old: 113.0
new: 44.0

path: .metrics.halstead.level
old: 0.017645532393391575
new: 0.06911928651059086

path: .metrics.halstead.N1
old: 1016.0
new: 84.0

path: .metrics.halstead.length
old: 2067.0
new: 153.0

path: .metrics.halstead.effort
old: 798916.6663280601
new: 12084.804109248407

path: .metrics.halstead.bugs
old: 2.869985699236299
new: 0.17553827326194085

path: .metrics.halstead.N2
old: 1051.0
new: 69.0

path: .metrics.halstead.estimated_program_length
old: 718.6411326861028
new: 201.68580195782732

path: .metrics.halstead.n2
old: 102.0
new: 31.0

path: .metrics.halstead.time
old: 44384.259240447784
new: 671.3780060693559

path: .metrics.halstead.difficulty
old: 56.67156862745098
new: 14.46774193548387

path: .metrics.nom.total
old: 11.0
new: 8.0

path: .metrics.nom.functions
old: 11.0
new: 8.0

path: .metrics.cyclomatic.sum
old: 13.0
new: 12.0

path: .metrics.mi.mi_sei
old: -15.794774036562742
new: 44.03496864885534

path: .metrics.mi.mi_visual_studio
old: 16.091556907322005
new: 36.53244165837362

path: .metrics.mi.mi_original
old: 27.51656231152063
new: 62.470475235818895

path: .metrics.nexits.average
old: 0.18181818181818185
new: 0.0

path: .metrics.nexits.sum
old: 2.0
new: 0.0

path: .metrics.loc.blank
old: 36.0
new: 18.0

path: .metrics.loc.cloc
old: 17.0
new: 12.0

path: .metrics.loc.sloc
old: 272.0
new: 79.0

path: .metrics.loc.ploc
old: 219.0
new: 49.0

path: .metrics.loc.lloc
old: 125.0
new: 0.0

Spaces Data

Minimal test - lines (64, 77)

path: .spaces[2].metrics.cyclomatic.sum
old: 1.0
new: 4.0

path: .spaces[2].metrics.nom.functions
old: 1.0
new: 3.0

path: .spaces[2].metrics.nom.total
old: 1.0
new: 3.0

path: .spaces[2].metrics.mi.mi_original
old: 91.08195509053698
new: 100.4478235427728

path: .spaces[2].metrics.mi.mi_sei
old: 74.15225066677914
new: 69.62200433885306

path: .spaces[2].metrics.mi.mi_visual_studio
old: 53.26430122253624
new: 58.741417276475325

path: .spaces[2].metrics.loc.blank
old: 1.0
new: 2.0

path: .spaces[2].metrics.loc.cloc
old: 1.0
new: 0.0

path: .spaces[2].metrics.loc.sloc
old: 17.0
new: 14.0

path: .spaces[2].metrics.loc.ploc
old: 15.0
new: 12.0

path: .spaces[2].metrics.loc.lloc
old: 6.0
new: 0.0

path: .spaces[2].metrics.nargs.average
old: 3.0
new: 0.3333333333333333

path: .spaces[2].metrics.nargs.sum
old: 3.0
new: 1.0

path: .spaces[2].metrics.halstead.length
old: 134.0
new: 43.0

path: .spaces[2].metrics.halstead.estimated_program_length
old: 129.69058447171096
new: 52.529325012980806

path: .spaces[2].metrics.halstead.vocabulary
old: 31.0
new: 17.0

path: .spaces[2].metrics.halstead.level
old: 0.10084033613445378
new: 0.09876543209876544

path: .spaces[2].metrics.halstead.n2
old: 24.0
new: 8.0

path: .spaces[2].metrics.halstead.N2
old: 68.0
new: 18.0

path: .spaces[2].metrics.halstead.time
old: 365.7389553955052
new: 98.86550747274258

path: .spaces[2].metrics.halstead.difficulty
old: 9.916666666666666
new: 10.125

path: .spaces[2].metrics.halstead.N1
old: 66.0
new: 25.0

path: .spaces[2].metrics.halstead.volume
old: 663.8623055918413
new: 175.76090217376458

path: .spaces[2].metrics.halstead.n1
old: 7.0
new: 9.0

path: .spaces[2].metrics.halstead.bugs
old: 0.11708678884343508
new: 0.048950479306899185

path: .spaces[2].metrics.halstead.effort
old: 6583.301197119093
new: 1779.5791345093664

path: .spaces[2].metrics.halstead.purity_ratio
old: 0.9678401826247088
new: 1.2216122096042048

Code

class nsArrayCC final : public nsArrayBase {
  friend class nsArrayBase;

 public:
  NS_DECL_CYCLE_COLLECTING_ISUPPORTS
  NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS(nsArrayCC, nsIMutableArray)

 private:
  nsArrayCC() : nsArrayBase() {}
  nsArrayCC(const nsArrayCC& aOther);
  explicit nsArrayCC(const nsCOMArray_base& aBaseArray)
      : nsArrayBase(aBaseArray) {}
  ~nsArrayCC() = default;
};

Minimal test - lines (25, 48)

path: .spaces[0].metrics.cyclomatic.sum
old: 1.0
new: 3.0

path: .spaces[0].metrics.loc.lloc
old: 25.0
new: 0.0

path: .spaces[0].metrics.loc.ploc
old: 32.0
new: 16.0

path: .spaces[0].metrics.loc.sloc
old: 36.0
new: 24.0

path: .spaces[0].metrics.loc.blank
old: 4.0
new: 3.0

path: .spaces[0].metrics.loc.cloc
old: 0.0
new: 5.0

path: .spaces[0].metrics.halstead.vocabulary
old: 44.0
new: 31.0

path: .spaces[0].metrics.halstead.estimated_program_length
old: 210.1173000519232
new: 123.1643663617958

path: .spaces[0].metrics.halstead.n2
old: 36.0
new: 18.0

path: .spaces[0].metrics.halstead.n1
old: 8.0
new: 13.0

path: .spaces[0].metrics.halstead.N1
old: 179.0
new: 34.0

path: .spaces[0].metrics.halstead.N2
old: 183.0
new: 27.0

path: .spaces[0].metrics.halstead.difficulty
old: 20.333333333333332
new: 9.75

path: .spaces[0].metrics.halstead.length
old: 362.0
new: 61.0

path: .spaces[0].metrics.halstead.purity_ratio
old: 0.5804345305301747
new: 2.0190879731441935

path: .spaces[0].metrics.halstead.bugs
old: 0.3910705687137392
new: 0.0685094561735798

path: .spaces[0].metrics.halstead.effort
old: 40185.0563342496
new: 2946.5082556025936

path: .spaces[0].metrics.halstead.volume
old: 1976.3142459467017
new: 302.20597493359935

path: .spaces[0].metrics.halstead.time
old: 2232.5031296805337
new: 163.69490308903298

path: .spaces[0].metrics.halstead.level
old: 0.049180327868852465
new: 0.10256410256410256

path: .spaces[0].metrics.mi.mi_visual_studio
old: 42.83874323540486
new: 52.12149829161079

path: .spaces[0].metrics.mi.mi_sei
old: 30.08451241180623
new: 85.67063489660995

path: .spaces[0].metrics.mi.mi_original
old: 73.25425093254232
new: 89.12776207865446

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

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

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

Code

class nsArrayBase : public nsIMutableArray {
 public:
  NS_DECL_NSIARRAY
  NS_DECL_NSIARRAYEXTENSIONS
  NS_DECL_NSIMUTABLEARRAY

  /* Both of these factory functions create a cycle-collectable array
     on the main thread and a non-cycle-collectable array on other
     threads.  */
  static already_AddRefed Create();
  /* Only for the benefit of the XPCOM module system, use Create()
     instead.  */
  static nsresult XPCOMConstructor(nsISupports* aOuter, const nsIID& aIID,
                                   void** aResult);

 protected:
  nsArrayBase() = default;
  nsArrayBase(const nsArrayBase& aOther);
  explicit nsArrayBase(const nsCOMArray_base& aBaseArray)
      : mArray(aBaseArray) {}
  virtual ~nsArrayBase();

  nsCOMArray_base mArray;
};

Minimal test - lines (50, 62)

path: .spaces[1].metrics.mi.mi_sei
old: 76.06659767182808
new: 72.62034504294756

path: .spaces[1].metrics.mi.mi_visual_studio
old: 53.82276426620785
new: 59.9567923673532

path: .spaces[1].metrics.mi.mi_original
old: 92.03692689521542
new: 102.52611494817398

path: .spaces[1].metrics.cyclomatic.sum
old: 1.0
new: 4.0

path: .spaces[1].metrics.nom.total
old: 1.0
new: 3.0

path: .spaces[1].metrics.nom.functions
old: 1.0
new: 3.0

path: .spaces[1].metrics.halstead.N2
old: 72.0
new: 16.0

path: .spaces[1].metrics.halstead.length
old: 136.0
new: 38.0

path: .spaces[1].metrics.halstead.bugs
old: 0.12557140033080014
new: 0.040864224883014326

path: .spaces[1].metrics.halstead.effort
old: 7311.693673595441
new: 1357.3654183599883

path: .spaces[1].metrics.halstead.level
old: 0.09126984126984126
new: 0.109375

path: .spaces[1].metrics.halstead.difficulty
old: 10.956521739130435
new: 9.142857142857142

path: .spaces[1].metrics.halstead.volume
old: 667.3371210027585
new: 148.46184263312372

path: .spaces[1].metrics.halstead.vocabulary
old: 30.0
new: 15.0

path: .spaces[1].metrics.halstead.purity_ratio
old: 0.9095103635567244
new: 1.1487232751158745

path: .spaces[1].metrics.halstead.N1
old: 64.0
new: 22.0

path: .spaces[1].metrics.halstead.time
old: 406.2052040886357
new: 75.40918990888824

path: .spaces[1].metrics.halstead.n1
old: 7.0
new: 8.0

path: .spaces[1].metrics.halstead.estimated_program_length
old: 123.69340944371451
new: 43.65148445440323

path: .spaces[1].metrics.halstead.n2
old: 23.0
new: 7.0

path: .spaces[1].metrics.nargs.sum
old: 2.0
new: 1.0

path: .spaces[1].metrics.nargs.average
old: 2.0
new: 0.3333333333333333

path: .spaces[1].metrics.loc.cloc
old: 1.0
new: 0.0

path: .spaces[1].metrics.loc.ploc
old: 14.0
new: 11.0

path: .spaces[1].metrics.loc.lloc
old: 6.0
new: 0.0

path: .spaces[1].metrics.loc.blank
old: 1.0
new: 2.0

path: .spaces[1].metrics.loc.sloc
old: 16.0
new: 13.0

Code

class nsArray final : public nsArrayBase {
  friend class nsArrayBase;

 public:
  NS_DECL_ISUPPORTS

 private:
  nsArray() : nsArrayBase() {}
  nsArray(const nsArray& aOther);
  explicit nsArray(const nsCOMArray_base& aBaseArray)
      : nsArrayBase(aBaseArray) {}
  ~nsArray() = default;
};