@@ -23,15 +23,13 @@ def get_evaluation_result(evaluation_context)
2323 flags = evaluate_features ( evaluation_context , segment_overrides )
2424 {
2525 flags : flags ,
26- segments : segments ,
26+ segments : segments
2727 }
2828 end
2929
3030 # Returns { segments: EvaluationResultSegments; segmentOverrides: Record<string, SegmentOverride>; }
3131 def evaluate_segments ( evaluation_context )
32- if evaluation_context [ :identity ] . nil? || evaluation_context [ :segments ] . nil?
33- return [ ] , { }
34- end
32+ return [ ] , { } if evaluation_context [ :identity ] . nil? || evaluation_context [ :segments ] . nil?
3533
3634 identity_segments = get_identity_segments_from_context ( evaluation_context )
3735
@@ -40,16 +38,14 @@ def evaluate_segments(evaluation_context)
4038 name : segment [ :name ]
4139 }
4240
43- if segment [ :metadata ]
44- result [ :metadata ] = segment [ :metadata ] . dup
45- end
41+ result [ :metadata ] = segment [ :metadata ] . dup if segment [ :metadata ]
4642
4743 result
4844 end
4945
5046 segment_overrides = process_segment_overrides ( identity_segments )
5147
52- return segments , segment_overrides
48+ [ segments , segment_overrides ]
5349 end
5450
5551 # Returns Record<string: override.name, SegmentOverride>
@@ -62,12 +58,12 @@ def process_segment_overrides(identity_segments)
6258 overrides_list = segment [ :overrides ] . is_a? ( Array ) ? segment [ :overrides ] : [ ]
6359
6460 overrides_list . each do |override |
65- if should_apply_override ( override , segment_overrides )
66- segment_overrides [ override [ :name ] ] = {
67- feature : override ,
68- segment_name : segment [ :name ]
69- }
70- end
61+ next unless should_apply_override ( override , segment_overrides )
62+
63+ segment_overrides [ override [ :name ] ] = {
64+ feature : override ,
65+ segment_name : segment [ :name ]
66+ }
7167 end
7268 end
7369
@@ -102,7 +98,7 @@ def evaluate_features(evaluation_context, segment_overrides)
10298
10399 # Set reason
104100 flag_result [ :reason ] = evaluated [ :reason ] ||
105- get_targeting_match_reason ( { type : 'SEGMENT' , override : segment_override } )
101+ get_targeting_match_reason ( { type : 'SEGMENT' , override : segment_override } )
106102
107103 flags [ final_feature [ :name ] . to_sym ] = flag_result
108104 end
@@ -112,9 +108,7 @@ def evaluate_features(evaluation_context, segment_overrides)
112108
113109 # Returns {value: any; reason?: string}
114110 def evaluate_feature_value ( feature , identity_key = nil )
115- if feature [ :variants ] &.any? && identity_key
116- return get_multivariate_feature_value ( feature , identity_key )
117- end
111+ return get_multivariate_feature_value ( feature , identity_key ) if feature [ :variants ] &.any? && identity_key
118112
119113 { value : feature [ :value ] , reason : nil }
120114 end
0 commit comments