Newer
Older
NewLang / log.py
# SPDX-License-Identifier: MIT
# Copyright 2021 Jookia <contact@jookia.org>

LEXER = 0
PARSER = 1

NORMAL = 0 # messages always shown
DEBUG = 1 # high-level information about what's happening
TRACE = 2 # trace output

def log(module, level, text):
    if module == LEXER:
        module_name = "LEXER"
    elif module == PARSER:
        module_name = "PARSER"
    else:
        module_name = "UNKNOWN"

    if level == NORMAL:
        level_name = "NORMAL"
    elif level == DEBUG:
        level_name = "DEBUG"
    elif level == TRACE:
        level_name = "TRACE"
    else:
        level_name = "UNKNOWN"

    print("%s %s: %s" % (level_name, module_name, text))