aboutsummaryrefslogtreecommitdiff
path: root/src/mlia/core/advice_generation.py
diff options
context:
space:
mode:
authorDmitrii Agibov <dmitrii.agibov@arm.com>2022-09-08 14:24:39 +0100
committerDmitrii Agibov <dmitrii.agibov@arm.com>2022-09-09 17:21:48 +0100
commitf5b293d0927506c2a979a091bf0d07ecc78fa181 (patch)
tree4de585b7cb6ed34da8237063752270189a730a41 /src/mlia/core/advice_generation.py
parentcde0c6ee140bd108849bff40467d8f18ffc332ef (diff)
downloadmlia-f5b293d0927506c2a979a091bf0d07ecc78fa181.tar.gz
MLIA-386 Simplify typing in the source code
- Enable deferred annotations evaluation - Use builtin types for type hints whenever possible - Use | syntax for union types - Rename mlia.core._typing into mlia.core.typing Change-Id: I3f6ffc02fa069c589bdd9e8bddbccd504285427a
Diffstat (limited to 'src/mlia/core/advice_generation.py')
-rw-r--r--src/mlia/core/advice_generation.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/mlia/core/advice_generation.py b/src/mlia/core/advice_generation.py
index 76cc1f2..86285fe 100644
--- a/src/mlia/core/advice_generation.py
+++ b/src/mlia/core/advice_generation.py
@@ -1,14 +1,14 @@
# SPDX-FileCopyrightText: Copyright 2022, Arm Limited and/or its affiliates.
# SPDX-License-Identifier: Apache-2.0
"""Module for advice generation."""
+from __future__ import annotations
+
from abc import ABC
from abc import abstractmethod
from dataclasses import dataclass
from functools import wraps
from typing import Any
from typing import Callable
-from typing import List
-from typing import Union
from mlia.core.common import AdviceCategory
from mlia.core.common import DataItem
@@ -20,7 +20,7 @@ from mlia.core.mixins import ContextMixin
class Advice:
"""Base class for the advice."""
- messages: List[str]
+ messages: list[str]
@dataclass
@@ -56,7 +56,7 @@ class AdviceProducer(ABC):
"""
@abstractmethod
- def get_advice(self) -> Union[Advice, List[Advice]]:
+ def get_advice(self) -> Advice | list[Advice]:
"""Get produced advice."""
@@ -76,13 +76,13 @@ class FactBasedAdviceProducer(ContextAwareAdviceProducer):
def __init__(self) -> None:
"""Init advice producer."""
- self.advice: List[Advice] = []
+ self.advice: list[Advice] = []
- def get_advice(self) -> Union[Advice, List[Advice]]:
+ def get_advice(self) -> Advice | list[Advice]:
"""Get produced advice."""
return self.advice
- def add_advice(self, messages: List[str]) -> None:
+ def add_advice(self, messages: list[str]) -> None:
"""Add advice."""
self.advice.append(Advice(messages))