

def parse_cache_control_header(value, on_update=None, cls=None):
    "Parse a cache control header.  The RFC differs between response and\n    request cache control, this method does not.  It's your responsibility\n    to not use the wrong control statements.\n\n    .. versionadded:: 0.5\n       The `cls` was added.  If not specified an immutable\n       :class:`~werkzeug.datastructures.RequestCacheControl` is returned.\n\n    :param value: a cache control header to be parsed.\n    :param on_update: an optional callable that is called every time a value\n                      on the :class:`~werkzeug.datastructures.CacheControl`\n                      object is changed.\n    :param cls: the class for the returned object.  By default\n                :class:`~werkzeug.datastructures.RequestCacheControl` is used.\n    :return: a `cls` object.\n    "
    if (cls is None):
        cls = RequestCacheControl
    if (not value):
        return cls(None, on_update)
    return cls(parse_dict_header(value), on_update)

dataset/ETHPy150Open Eforcers/gae-flask-todo/lib/werkzeug/http.py parse_cache_control_header/original