Global Metrics

path: .metrics.nargs.average
old: 0.8333333333333334
new: 3.0

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

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

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

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

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

path: .metrics.nom.closures
old: 2.0
new: 0.0

path: .metrics.cognitive.average
old: 1.3333333333333333
new: 0.0

path: .metrics.cognitive.sum
old: 8.0
new: 0.0

path: .metrics.mi.mi_sei
old: 34.27060747259293
new: 59.61713975886081

path: .metrics.mi.mi_visual_studio
old: 34.03322622278962
new: 42.24250595268885

path: .metrics.mi.mi_original
old: 58.19681684097026
new: 72.23468517909794

path: .metrics.loc.sloc
old: 81.0
new: 51.0

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

path: .metrics.loc.ploc
old: 62.0
new: 38.0

path: .metrics.loc.blank
old: 10.0
new: 4.0

path: .metrics.halstead.N1
old: 165.0
new: 63.0

path: .metrics.halstead.length
old: 266.0
new: 112.0

path: .metrics.halstead.bugs
old: 0.32344862686717735
new: 0.08731751390208892

path: .metrics.halstead.vocabulary
old: 80.0
new: 40.0

path: .metrics.halstead.level
old: 0.055634134842055635
new: 0.1405895691609977

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

path: .metrics.halstead.n1
old: 21.0
new: 9.0

path: .metrics.halstead.difficulty
old: 17.97457627118644
new: 7.112903225806452

path: .metrics.halstead.effort
old: 30226.638340187463
new: 4239.688265527043

path: .metrics.halstead.time
old: 1679.2576855659704
new: 235.5382369737246

path: .metrics.halstead.N2
old: 101.0
new: 49.0

path: .metrics.halstead.volume
old: 1681.6328732400384
new: 596.0559466273846

path: .metrics.halstead.purity_ratio
old: 1.6515586683861
new: 1.6259768806694104

path: .metrics.halstead.estimated_program_length
old: 439.3146057907026
new: 182.10941063497395

path: .metrics.cyclomatic.average
old: 2.1666666666666665
new: 1.0

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

Spaces Data

Minimal test - lines (17, 20)

path: .spaces[0].spaces[0].metrics.loc.ploc
old: 30.0
new: 4.0

path: .spaces[0].spaces[0].metrics.loc.sloc
old: 37.0
new: 4.0

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

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

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

path: .spaces[0].spaces[0].metrics.mi.mi_original
old: 75.89867759391058
new: 134.15441294714626

path: .spaces[0].spaces[0].metrics.mi.mi_sei
old: 55.65491572873739
new: 118.14851385841868

path: .spaces[0].spaces[0].metrics.mi.mi_visual_studio
old: 44.3851915753863
new: 78.45287306850658

path: .spaces[0].spaces[0].metrics.nargs.sum
old: 2.0
new: 0.0

path: .spaces[0].spaces[0].metrics.nargs.average
old: 0.6666666666666666
new: null

path: .spaces[0].spaces[0].metrics.nom.closures
old: 2.0
new: 0.0

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

path: .spaces[0].spaces[0].metrics.nom.total
old: 3.0
new: 0.0

path: .spaces[0].spaces[0].metrics.nexits.average
old: 1.6666666666666667
new: null

path: .spaces[0].spaces[0].metrics.nexits.sum
old: 5.0
new: 0.0

path: .spaces[0].spaces[0].metrics.cognitive.sum
old: 5.0
new: 0.0

path: .spaces[0].spaces[0].metrics.cognitive.average
old: 1.6666666666666667
new: null

path: .spaces[0].spaces[0].metrics.halstead.estimated_program_length
old: 234.29070837742125
new: 6.754887502163468

path: .spaces[0].spaces[0].metrics.halstead.effort
old: 16811.409050445098
new: 13.931568569324174

path: .spaces[0].spaces[0].metrics.halstead.length
old: 162.0
new: 6.0

path: .spaces[0].spaces[0].metrics.halstead.time
old: 933.967169469172
new: 0.7739760316291208

path: .spaces[0].spaces[0].metrics.halstead.N2
old: 60.0
new: 3.0

path: .spaces[0].spaces[0].metrics.halstead.bugs
old: 0.21875004727730407
new: 0.0019299471801733172

path: .spaces[0].spaces[0].metrics.halstead.purity_ratio
old: 1.4462389406013658
new: 1.1258145836939113

path: .spaces[0].spaces[0].metrics.halstead.N1
old: 102.0
new: 3.0

path: .spaces[0].spaces[0].metrics.halstead.difficulty
old: 18.387096774193548
new: 1.0

path: .spaces[0].spaces[0].metrics.halstead.n1
old: 19.0
new: 2.0

path: .spaces[0].spaces[0].metrics.halstead.level
old: 0.054385964912280704
new: 1.0

path: .spaces[0].spaces[0].metrics.halstead.volume
old: 914.3047027435052
new: 13.931568569324174

path: .spaces[0].spaces[0].metrics.halstead.vocabulary
old: 50.0
new: 5.0

path: .spaces[0].spaces[0].metrics.halstead.n2
old: 31.0
new: 3.0

path: .spaces[0].spaces[0].metrics.cyclomatic.average
old: 5.0
new: 1.0

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

Code

namespace layers {
class APZEventState;
class IAPZCTreeManager;
}  // namespace layers

Minimal test - lines (16, 49)

path: .spaces[0].metrics.mi.mi_visual_studio
old: 35.61158176632545
new: 46.60648161333631

path: .spaces[0].metrics.mi.mi_original
old: 60.895804820416515
new: 79.69708355880508

path: .spaces[0].metrics.mi.mi_sei
old: 29.13724948365276
new: 62.19589861011875

path: .spaces[0].metrics.halstead.volume
old: 1648.164860202759
new: 524.6169884132792

path: .spaces[0].metrics.halstead.N2
old: 98.0
new: 41.0

path: .spaces[0].metrics.halstead.time
old: 1682.50162812365
new: 224.055172134838

path: .spaces[0].metrics.halstead.n1
old: 21.0
new: 9.0

path: .spaces[0].metrics.halstead.length
old: 263.0
new: 104.0

path: .spaces[0].metrics.halstead.n2
old: 56.0
new: 24.0

path: .spaces[0].metrics.halstead.N1
old: 165.0
new: 63.0

path: .spaces[0].metrics.halstead.estimated_program_length
old: 417.45054151357976
new: 138.56842503028855

path: .spaces[0].metrics.halstead.bugs
old: 0.3238650454813696
new: 0.08445597846729465

path: .spaces[0].metrics.halstead.purity_ratio
old: 1.587264416401444
new: 1.332388702214313

path: .spaces[0].metrics.halstead.effort
old: 30285.029306225697
new: 4032.993098427083

path: .spaces[0].metrics.halstead.vocabulary
old: 77.0
new: 33.0

path: .spaces[0].metrics.halstead.difficulty
old: 18.375
new: 7.6875

path: .spaces[0].metrics.halstead.level
old: 0.05442176870748299
new: 0.13008130081300814

path: .spaces[0].metrics.cognitive.average
old: 1.3333333333333333
new: 0.0

path: .spaces[0].metrics.cognitive.sum
old: 8.0
new: 0.0

path: .spaces[0].metrics.nom.closures
old: 2.0
new: 0.0

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

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

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

path: .spaces[0].metrics.loc.blank
old: 9.0
new: 2.0

path: .spaces[0].metrics.loc.ploc
old: 58.0
new: 29.0

path: .spaces[0].metrics.loc.sloc
old: 70.0
new: 34.0

path: .spaces[0].metrics.nargs.sum
old: 5.0
new: 3.0

path: .spaces[0].metrics.nargs.average
old: 0.8333333333333334
new: 3.0

path: .spaces[0].metrics.cyclomatic.average
old: 2.4
new: 1.0

path: .spaces[0].metrics.cyclomatic.sum
old: 12.0
new: 7.0

path: .spaces[0].metrics.nexits.average
old: 1.0
new: 0.0

path: .spaces[0].metrics.nexits.sum
old: 6.0
new: 0.0

Code

namespace mozilla {
namespace layers {
class APZEventState;
class IAPZCTreeManager;
}  // namespace layers
namespace widget {

class AndroidContentController final
    : public mozilla::layers::ChromeProcessController {
 public:
  AndroidContentController(nsWindow* aWindow,
                           mozilla::layers::APZEventState* aAPZEventState,
                           mozilla::layers::IAPZCTreeManager* aAPZCTreeManager)
      : mozilla::layers::ChromeProcessController(aWindow, aAPZEventState,
                                                 aAPZCTreeManager),
        mAndroidWindow(aWindow) {}

  // ChromeProcessController methods
  virtual void Destroy() override;
  void UpdateOverscrollVelocity(const ScrollableLayerGuid& aGuid,
                                const float aX, const float aY,
                                const bool aIsRootContent) override;
  void UpdateOverscrollOffset(const ScrollableLayerGuid& aGuid, const float aX,
                              const float aY,
                              const bool aIsRootContent) override;
  void NotifyAPZStateChange(const ScrollableLayerGuid& aGuid,
                            APZStateChange aChange, int aArg) override;

 private:
  nsWindow* mAndroidWindow;
};

}  // namespace widget
}  // namespace mozilla

Minimal test - lines (21, 48)

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

path: .spaces[0].spaces[1].metrics.halstead.level
old: 0.18803418803418803
new: 0.13213213213213212

path: .spaces[0].spaces[1].metrics.halstead.purity_ratio
old: 1.9023735090854592
new: 1.319133548156264

path: .spaces[0].spaces[1].metrics.halstead.volume
old: 151.26748332105768
new: 475.60284579714

path: .spaces[0].spaces[1].metrics.halstead.bugs
old: 0.028832651778453993
new: 0.07828936063806968

path: .spaces[0].spaces[1].metrics.halstead.effort
old: 804.4679794801705
new: 3599.4488102374457

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

path: .spaces[0].spaces[1].metrics.halstead.estimated_program_length
old: 66.58307281799108
new: 126.63682062300134

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

path: .spaces[0].spaces[1].metrics.halstead.N2
old: 13.0
new: 37.0

path: .spaces[0].spaces[1].metrics.halstead.length
old: 35.0
new: 96.0

path: .spaces[0].spaces[1].metrics.halstead.difficulty
old: 5.318181818181818
new: 7.568181818181818

path: .spaces[0].spaces[1].metrics.halstead.n2
old: 11.0
new: 22.0

path: .spaces[0].spaces[1].metrics.halstead.time
old: 44.69266552667614
new: 199.96937834652476

path: .spaces[0].spaces[1].metrics.nexits.average
old: 1.0
new: 0.0

path: .spaces[0].spaces[1].metrics.nexits.sum
old: 1.0
new: 0.0

path: .spaces[0].spaces[1].metrics.mi.mi_original
old: 115.64443824983816
new: 84.27245456352135

path: .spaces[0].spaces[1].metrics.mi.mi_visual_studio
old: 67.62832646189366
new: 49.282137171649914

path: .spaces[0].spaces[1].metrics.mi.mi_sei
old: 91.24062543682322
new: 60.6143339264442

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

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

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

path: .spaces[0].spaces[1].metrics.loc.sloc
old: 6.0
new: 28.0

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

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

path: .spaces[0].spaces[1].metrics.loc.ploc
old: 6.0
new: 23.0

Code

namespace widget {

class AndroidContentController final
    : public mozilla::layers::ChromeProcessController {
 public:
  AndroidContentController(nsWindow* aWindow,
                           mozilla::layers::APZEventState* aAPZEventState,
                           mozilla::layers::IAPZCTreeManager* aAPZCTreeManager)
      : mozilla::layers::ChromeProcessController(aWindow, aAPZEventState,
                                                 aAPZCTreeManager),
        mAndroidWindow(aWindow) {}

  // ChromeProcessController methods
  virtual void Destroy() override;
  void UpdateOverscrollVelocity(const ScrollableLayerGuid& aGuid,
                                const float aX, const float aY,
                                const bool aIsRootContent) override;
  void UpdateOverscrollOffset(const ScrollableLayerGuid& aGuid, const float aX,
                              const float aY,
                              const bool aIsRootContent) override;
  void NotifyAPZStateChange(const ScrollableLayerGuid& aGuid,
                            APZStateChange aChange, int aArg) override;

 private:
  nsWindow* mAndroidWindow;
};

}  // namespace widget