Vulkan/vulkan/views/AbstractView.py

35 lines
857 B
Python

from abc import ABC, abstractmethod
from numpy import result_type
from vulkan.results.AbstractResult import AbstractResult
from discord.ext.commands import Context
from discord import Client, Message
class AbstractView(ABC):
def __init__(self, result: AbstractResult) -> None:
self.__result: AbstractResult = result
self.__context: Context = result.ctx
self.__message: Message = result.ctx.message
self.__bot: Client = result.ctx.bot
@property
def result(self) -> AbstractResult:
return self.__result
@property
def bot(self) -> Client:
return self.__result.ctx.bot
@property
def message(self) -> Message:
return self.__message
@property
def context(self) -> Context:
return self.__context
@abstractmethod
def run(self) -> None:
pass