| line |
!l |
l&&!r |
l&&r |
condition |
|
99
|
39 |
0 |
0 |
builtin::blessed($feature) and $feature->isa("WebService::GrowthBook::Feature") |
|
338
|
69 |
0 |
0 |
$sticky_bucket_service and not $experiment->disableStickyBucketing |
|
362
|
62 |
1 |
2 |
$experiment->namespace and not in_namespace($hash_value, $experiment->namespace) |
|
397
|
64 |
1 |
1 |
$experiment->condition and not eval_condition($self->attributes, $experiment->condition) |
|
422
|
65 |
0 |
0 |
$experiment->groups and @{$experiment->groups;} |
|
528
|
53 |
0 |
0 |
$sticky_bucket_service and not $experiment->disable_sticky_bucketing |
|
540
|
0 |
0 |
0 |
$doc and $data->{'changed'} |
|
795
|
161 |
11 |
0 |
!$val || $val eq '' and $fallback_attr |
|
|
172 |
0 |
0 |
!$val || $val eq '' and $fallback_attr and $self->{'sticky_bucket_service'} |
| line |
l |
!l |
condition |
|
423
|
0 |
0 |
$groups || {} |
|
456
|
65 |
0 |
$experiment->hash_version // 1 |
|
541
|
0 |
0 |
$sticky_bucket_assignment_docs //= {} |
|
575
|
0 |
0 |
$sticky_bucket_assignment_docs->{$key}{'assignments'} // {} |
|
618
|
4 |
4 |
$filter->{'attribute'} // "id" |
|
623
|
8 |
0 |
$filter->{'seed'} // "" |
|
|
0 |
8 |
$filter->{'hashVersion'} // 2 |
|
719
|
61 |
21 |
$args{'variation_id'} // -1 |
|
720
|
53 |
29 |
$args{'hash_used'} // 0 |
|
723
|
53 |
29 |
$args{'sticky_bucket_used'} // 0 |
|
761
|
7 |
0 |
$hash_version || 1 |
|
785
|
172 |
0 |
$attr ||= "id" |
|
789
|
161 |
4 |
$attributes->{$attr} || '' |
|
791
|
0 |
0 |
$user->{$attr} || '' |
|
797
|
0 |
0 |
$attributes->{$fallback_attr} || '' |
|
799
|
0 |
0 |
$user->{$fallback_attr} || '' |
| line |
l |
!l&&r |
!l&&!r |
condition |
|
170
|
1 |
15 |
0 |
$rule->seed || $feature_name |
|
196
|
4 |
8 |
0 |
$rule->key || $feature_name |
|
253
|
82 |
0 |
0 |
not $prev or $prev->{'result'}->in_experiment != $result->in_experiment |
|
|
82 |
0 |
0 |
not $prev or $prev->{'result'}->in_experiment != $result->in_experiment or $prev->{'result'}->variation_id != $result->variation_id |
|
319
|
0 |
1 |
74 |
$experiment->status eq "draft" or not $experiment->active |
|
407
|
0 |
0 |
0 |
$prereq_res eq "gate" or $prereq_res eq "fail" |
|
456
|
4 |
61 |
0 |
$experiment->seed // $experiment->key |
|
469
|
7 |
58 |
0 |
$experiment->ranges || get_bucket_ranges(scalar @{$experiment->variations;}, defined $c ? $c : 1, $experiment->weights) |
|
657
|
0 |
0 |
0 |
$merged{$k} //= $sticky_bucket_assignment_docs->{$key}{'assignments'}{$k} |
|
725
|
22 |
1 |
59 |
$variation_id < 0 or $variation_id > @{$experiment->variations;} - 1 |
|
751
|
5 |
3 |
8 |
defined $coverage or defined $range |
|
795
|
11 |
0 |
161 |
!$val || $val eq '' |
|
802
|
0 |
0 |
0 |
not $val or $val ne "" |