Skip to content
Snippets Groups Projects
Unverified Commit 57e4786e authored by Richard van der Hoff's avatar Richard van der Hoff Committed by GitHub
Browse files

Create singletons for `StateFilter.{all,none}()` (#11836)

No point recreating these for each call, since they are frozen
parent fd651397
No related branches found
No related tags found
No related merge requests found
Minor performance improvement in room state lookup.
......@@ -74,21 +74,21 @@ class StateFilter:
@staticmethod
def all() -> "StateFilter":
"""Creates a filter that fetches everything.
"""Returns a filter that fetches everything.
Returns:
The new state filter.
The state filter.
"""
return StateFilter(types=frozendict(), include_others=True)
return _ALL_STATE_FILTER
@staticmethod
def none() -> "StateFilter":
"""Creates a filter that fetches nothing.
"""Returns a filter that fetches nothing.
Returns:
The new state filter.
"""
return StateFilter(types=frozendict(), include_others=False)
return _NONE_STATE_FILTER
@staticmethod
def from_types(types: Iterable[Tuple[str, Optional[str]]]) -> "StateFilter":
......@@ -527,6 +527,10 @@ class StateFilter:
)
_ALL_STATE_FILTER = StateFilter(types=frozendict(), include_others=True)
_NONE_STATE_FILTER = StateFilter(types=frozendict(), include_others=False)
class StateGroupStorage:
"""High level interface to fetching state for event."""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment