class PermissionParser extends Parser<T> {

    protected void checkMalformed(T type, Permission permission) {
        String name = permission.value();
        if (!matcher.reset(name).matches()) {
            environment.warn(type, format(name, "may be malformed"));
        }
        
        for (var child : permission.children()) {
            if (!matcher.reset(child).matches()) {
                environment.warn(type, format(child, "may be malformed"));
            }
        }
    }

    public  PermissionParser(Environment<T> environment);

}