MCPcopy Create free account
hub / github.com/Flagsmith/flagsmith / _get_segment_feature_states

Function _get_segment_feature_states

api/util/mappers/engine.py:531–556  ·  view source on GitHub ↗
(
    segments: Iterable["Segment"],
    environment_id: int,
    latest_environment_feature_version_uuids: Iterable[UUID],
)

Source from the content-addressed store, hash-verified

529
530
531def _get_segment_feature_states(
532 segments: Iterable["Segment"],
533 environment_id: int,
534 latest_environment_feature_version_uuids: Iterable[UUID],
535) -> Dict[int, List["FeatureState"]]:
536 feature_states_by_segment_id = {} # type: ignore[var-annotated]
537
538 for segment in segments:
539 segment_feature_states = feature_states_by_segment_id.setdefault(segment.pk, [])
540
541 for feature_segment in segment.feature_segments.all():
542 if feature_segment.environment_id != environment_id:
543 continue
544
545 if (
546 latest_environment_feature_version_uuids
547 and feature_segment.environment_feature_version_id # type: ignore[operator]
548 not in latest_environment_feature_version_uuids
549 ):
550 continue
551
552 segment_feature_states += _get_prioritised_feature_states(
553 feature_segment.feature_states.all()
554 )
555
556 return feature_states_by_segment_id

Callers 1

Calls 2

allMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…