Global Metrics

path: .metrics.nargs.sum
old: 2.0
new: 15.0

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

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

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

path: .metrics.nom.total
old: 2.0
new: 27.0

path: .metrics.loc.cloc
old: 7.0
new: 49.0

path: .metrics.loc.lloc
old: 5.0
new: 231.0

path: .metrics.loc.sloc
old: 57.0
new: 3.0

path: .metrics.loc.ploc
old: 42.0
new: 555.0

path: .metrics.loc.blank
old: 8.0
new: 0.0

path: .metrics.halstead.purity_ratio
old: 2.1982670583548054
new: 0.8876099972624572

path: .metrics.halstead.level
old: 0.0921875
new: 0.014474482887425876

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

path: .metrics.halstead.volume
old: 1164.7890951227296
new: 25923.115350279917

path: .metrics.halstead.length
old: 187.0
new: 3078.0

path: .metrics.halstead.bugs
old: 0.18082657266893057
new: 4.915882593842979

path: .metrics.halstead.vocabulary
old: 75.0
new: 343.0

path: .metrics.halstead.estimated_program_length
old: 411.07593991234864
new: 2732.063571573843

path: .metrics.halstead.N2
old: 80.0
new: 1298.0

path: .metrics.halstead.N1
old: 107.0
new: 1780.0

path: .metrics.halstead.difficulty
old: 10.847457627118644
new: 69.08709677419355

path: .metrics.halstead.effort
old: 12635.000353873676
new: 1790952.778893371

path: .metrics.halstead.n1
old: 16.0
new: 33.0

path: .metrics.halstead.time
old: 701.9444641040932
new: 99497.37660518728

path: .metrics.mi.mi_original
old: 67.6390338210954
new: 67.69545118559685

path: .metrics.mi.mi_sei
old: 48.221664364538
new: 35.311802361811

path: .metrics.mi.mi_visual_studio
old: 39.55499053865229
new: 39.58798314947184

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

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

path: .metrics.cyclomatic.average
old: 1.6666666666666667
new: 12.909090909090908

path: .metrics.cyclomatic.sum
old: 5.0
new: 142.0

path: .metrics.cognitive.sum
old: 3.0
new: 179.0

path: .metrics.cognitive.average
old: 1.5
new: 6.62962962962963

Spaces Data

Minimal test - lines (317, 354)

path: .spaces[1].metrics.halstead.effort
old: 6955.2655789159335
new: 24011.36264005953

path: .spaces[1].metrics.halstead.estimated_program_length
old: 192.38196255841365
new: 315.51765025522434

path: .spaces[1].metrics.halstead.length
old: 103.0
new: 172.0

path: .spaces[1].metrics.halstead.vocabulary
old: 43.0
new: 63.0

path: .spaces[1].metrics.halstead.N2
old: 42.0
new: 71.0

path: .spaces[1].metrics.halstead.difficulty
old: 12.444444444444445
new: 23.355263157894736

path: .spaces[1].metrics.halstead.level
old: 0.08035714285714285
new: 0.04281690140845071

path: .spaces[1].metrics.halstead.time
old: 386.40364327310743
new: 1333.9645911144185

path: .spaces[1].metrics.halstead.n1
old: 16.0
new: 25.0

path: .spaces[1].metrics.halstead.n2
old: 27.0
new: 38.0

path: .spaces[1].metrics.halstead.volume
old: 558.9052697343161
new: 1028.0921468419856

path: .spaces[1].metrics.halstead.bugs
old: 0.12145662914669922
new: 0.2774320407742385

path: .spaces[1].metrics.halstead.N1
old: 61.0
new: 101.0

path: .spaces[1].metrics.halstead.purity_ratio
old: 1.8677860442564431
new: 1.8344049433443277

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

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

path: .spaces[1].metrics.nom.closures
old: 0.0
new: 1.0

path: .spaces[1].metrics.loc.sloc
old: 27.0
new: 38.0

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

path: .spaces[1].metrics.loc.lloc
old: 4.0
new: 16.0

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

path: .spaces[1].metrics.cognitive.average
old: 3.0
new: 11.0

path: .spaces[1].metrics.cognitive.sum
old: 3.0
new: 22.0

path: .spaces[1].metrics.cyclomatic.average
old: 3.0
new: 12.0

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

path: .spaces[1].metrics.mi.mi_visual_studio
old: 49.13587531974992
new: 42.83433438690814

path: .spaces[1].metrics.mi.mi_sei
old: 45.82323063375679
new: 57.83558383369295

path: .spaces[1].metrics.mi.mi_original
old: 84.02234679677235
new: 73.24671180161292

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

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

Code

nsClipboard::GetNativeClipboardData(nsITransferable* aTransferable, int32_t aWhichClipboard) {
  NS_OBJC_BEGIN_TRY_BLOCK_RETURN;

  if ((aWhichClipboard != kGlobalClipboard && aWhichClipboard != kFindClipboard) || !aTransferable)
    return NS_ERROR_FAILURE;

  NSPasteboard* cocoaPasteboard;
  if (aWhichClipboard == kFindClipboard) {
    cocoaPasteboard = [NSPasteboard pasteboardWithName:NSFindPboard];
  } else {
    cocoaPasteboard = [NSPasteboard generalPasteboard];
  }
  if (!cocoaPasteboard) return NS_ERROR_FAILURE;

  // get flavor list that includes all acceptable flavors (including ones obtained through
  // conversion)
  nsTArray flavors;
  nsresult rv = aTransferable->FlavorsTransferableCanImport(flavors);
  if (NS_FAILED(rv)) return NS_ERROR_FAILURE;

  // If we were the last ones to put something on the pasteboard, then just use the cached
  // transferable. Otherwise clear it because it isn't relevant any more.
  if (mCachedClipboard == aWhichClipboard && mChangeCount == [cocoaPasteboard changeCount]) {
    if (mTransferable) {
      for (uint32_t i = 0; i < flavors.Length(); i++) {
        nsCString& flavorStr = flavors[i];

        nsCOMPtr dataSupports;
        rv = mTransferable->GetTransferData(flavorStr.get(), getter_AddRefs(dataSupports));
        if (NS_SUCCEEDED(rv)) {
          aTransferable->SetTransferData(flavorStr.get(), dataSupports);
          return NS_OK;  // maybe try to fill in more types? Is there a point?
        }
      }
    }
  } else {
    EmptyClipboard(aWhichClipboard);
  }

Minimal test - lines (95, 95)

path: .spaces[0].metrics.halstead.time
old: 98.66084141876198
new: 4.754887502163468

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

path: .spaces[0].metrics.halstead.difficulty
old: 4.8
new: 3.0

path: .spaces[0].metrics.halstead.N1
old: 38.0
new: 6.0

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

path: .spaces[0].metrics.halstead.vocabulary
old: 39.0
new: 9.0

path: .spaces[0].metrics.halstead.bugs
old: 0.0488828995445354
new: 0.006473720020679235

path: .spaces[0].metrics.halstead.effort
old: 1775.8951455377155
new: 85.58797503894243

path: .spaces[0].metrics.halstead.estimated_program_length
old: 175.7360428812364
new: 20.264662506490403

path: .spaces[0].metrics.halstead.length
old: 70.0
new: 9.0

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

path: .spaces[0].metrics.halstead.volume
old: 369.9781553203574
new: 28.52932501298081

path: .spaces[0].metrics.halstead.level
old: 0.20833333333333337
new: 0.3333333333333333

path: .spaces[0].metrics.halstead.purity_ratio
old: 2.510514898303377
new: 2.2516291673878226

path: .spaces[0].metrics.loc.sloc
old: 19.0
new: 1.0

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

path: .spaces[0].metrics.loc.ploc
old: 15.0
new: 1.0

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

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

path: .spaces[0].metrics.mi.mi_sei
old: 90.213553016361
new: 145.63125671373976

path: .spaces[0].metrics.mi.mi_original
old: 92.3201799235563
new: 153.34515096830847

path: .spaces[0].metrics.mi.mi_visual_studio
old: 53.988409312021226
new: 89.67552688205174

Code

void nsClipboard::ClearSelectionCache() { sSelectionCache = nullptr; }