Source code for py_abac.policy.conditions.logic.any_of

"""
    Logical OR conditions
"""

from marshmallow import post_load

from .base import LogicCondition, LogicConditionSchema


[docs]class AnyOf(LogicCondition): """ Condition for any of sub-rules are satisfied """
[docs] def is_satisfied(self, ctx) -> bool: return any(value.is_satisfied(ctx) for value in self.values)
[docs]class AnyOfSchema(LogicConditionSchema): """ JSON schema for any of logical condition """
[docs] @post_load def post_load(self, data, **_): # pylint: disable=missing-docstring,no-self-use return AnyOf(**data)