#!/usr/bin/env python3
import re
import sys
from pathlib import Path

sys.path.insert(0, str(Path(__file__).resolve().parents[1]))

from harness import LintWarning, file_check

VALUE_CONST_RE = re.compile(r"const (int[a-z0-9_]*|bool)\b\s*[a-z]")
POINTER_CONST_RE = re.compile(r"\*\s*const(?!\s?\*)")


def check(path, text):
    for i, line in enumerate(text.split("\n"), 1):
        if VALUE_CONST_RE.search(line):
            yield LintWarning(path, "useless const", line=i)
        if POINTER_CONST_RE.search(line):
            yield LintWarning(path, "useless const", line=i)


file_check(check)
