# coding: utf8
"""
Модуль предоставляет оператор, как семантическую сущность.
"""

from модОператорПлюс import тОператорПлюс
from модОператорМинус import тОператорМинус

class тОператор:
	def __init__(сам, пОп:str):
		сам.__пОп : str = пОп
		сам.__оп = None # тип нужно оператора
		сам.__Оператор_Проверить()

	def __Оператор_Проверить(сам):
		"""
		Проверяет род оператора, вычисляет запрещённые
		литеры в операторах
		"""
		if сам.__пОп == "+":
			сам.__оп = тОператорПлюс(сам.__пОп)
		elif сам.__пОп == "-":
			сам.__оп = тОператорМинус(сам.__пОп)
		elif сам.__пОп == "*":
			сам.__оп = тОпУмнож(сам.__пОп)
		elif сам.__пОп == "/":
			сам.__оп = тОпДелить(сам.__пОп)

	def Вычислить(сам, парам1, парам2=None):
		return сам.__оп.Вычислить(парам1, парам2)


if __name__ == "__main__":
	опер = тОператор("+")
	print("Результат 1+2=", опер.Вычислить(1,2))
	опер = тОператор("-")
	print("Результат 6-7=", опер.Вычислить(6,7))
