Codebase list loguru / 3ba79c46-f6a6-42df-92ee-f02fcd019b44/main loguru / _filters.py
3ba79c46-f6a6-42df-92ee-f02fcd019b44/main

Tree @3ba79c46-f6a6-42df-92ee-f02fcd019b44/main (Download .tar.gz)

_filters.py @3ba79c46-f6a6-42df-92ee-f02fcd019b44/mainraw · history · blame

def filter_none(record):
    return record["name"] is not None


def filter_by_name(record, parent, length):
    name = record["name"]
    if name is None:
        return False
    return (name + ".")[:length] == parent


def filter_by_level(record, level_per_module):
    name = record["name"]

    level = 0

    if name in level_per_module:
        level = level_per_module[name]
    elif name is not None:
        lookup = ""
        if "" in level_per_module:
            level = level_per_module[""]
        for n in name.split("."):
            lookup += n
            if lookup in level_per_module:
                level = level_per_module[lookup]
            lookup += "."

    if level is False:
        return False

    return record["level"].no >= level