Mini Shell
# SPDX-License-Identifier: LGPL-2.1-or-later
# Copyright (c) 2021 Red Hat, Inc.
from .general import PolicySyntaxError
class MalformedLineError(PolicySyntaxError):
def __init__(self, line):
super().__init__(f'malformed line `{line}`')
class MixedDifferentialNonDifferentialError(PolicySyntaxError):
def __init__(self, rhs):
super().__init__('cannot initialize list and modify it at once '
f'(`{rhs}`)')
class IntPropertyNonIntValueError(PolicySyntaxError):
def __init__(self, int_property_name):
# wording follows previous versions
super().__init__(f'Bad value of policy property `{int_property_name}`:'
' value must be an integer')
class NonIntPropertyIntValueError(PolicySyntaxError):
def __init__(self, alg_class):
# wording follows previous versions
super().__init__(f'Bad value of policy property `{alg_class}`:'
' value must not be an integer')
class BadEnumValueError(PolicySyntaxError):
def __init__(self, enum_name, value, acceptable_values):
super().__init__(f'Bad value of policy property `{enum_name}`:'
f' {value}; must be one of {acceptable_values}')
def count_equals_signs(line):
if line.count('=') != 1:
raise MalformedLineError(line)
def empty_lhs(lhs, line):
if not lhs:
raise MalformedLineError(line)
Zerion Mini Shell 1.0