diff options
Diffstat (limited to 'pint/delegates')
-rw-r--r-- | pint/delegates/txt_defparser/context.py | 7 | ||||
-rw-r--r-- | pint/delegates/txt_defparser/defparser.py | 7 |
2 files changed, 9 insertions, 5 deletions
diff --git a/pint/delegates/txt_defparser/context.py b/pint/delegates/txt_defparser/context.py index 6be5171..5ede7b4 100644 --- a/pint/delegates/txt_defparser/context.py +++ b/pint/delegates/txt_defparser/context.py @@ -19,6 +19,7 @@ from __future__ import annotations import numbers import re import typing as ty +from typing import Optional, Union from dataclasses import dataclass from ..._vendor import flexparser as fp @@ -27,12 +28,12 @@ from ..base_defparser import ParserConfig, PintParsedStatement from . import block, common, plain # TODO check syntax -T = ty.TypeVar("T", bound="ForwardRelation | BidirectionalRelation") +T = ty.TypeVar("T", bound="Union[ForwardRelation, BidirectionalRelation]") def _from_string_and_context_sep( cls: type[T], s: str, config: ParserConfig, separator: str -) -> T | None: +) -> Optional[T]: if separator not in s: return None if ":" not in s: @@ -199,7 +200,7 @@ class ContextDefinition( return self.opening.defaults @property - def relations(self) -> tuple[BidirectionalRelation | ForwardRelation, ...]: + def relations(self) -> tuple[Union[BidirectionalRelation, ForwardRelation], ...]: return tuple( r for r in self.body diff --git a/pint/delegates/txt_defparser/defparser.py b/pint/delegates/txt_defparser/defparser.py index 16f5a94..a5ccb08 100644 --- a/pint/delegates/txt_defparser/defparser.py +++ b/pint/delegates/txt_defparser/defparser.py @@ -2,6 +2,7 @@ from __future__ import annotations import pathlib import typing as ty +from typing import Optional, Union from ..._vendor import flexcache as fc from ..._vendor import flexparser as fp @@ -130,7 +131,9 @@ class DefParser: else: yield stmt - def parse_file(self, filename: pathlib.Path | str, cfg: ParserConfig | None = None): + def parse_file( + self, filename: Union[pathlib.Path, str], cfg: Optional[ParserConfig] = None + ): return fp.parse( filename, _PintParser, @@ -138,7 +141,7 @@ class DefParser: diskcache=self._diskcache, ) - def parse_string(self, content: str, cfg: ParserConfig | None = None): + def parse_string(self, content: str, cfg: Optional[ParserConfig] = None): return fp.parse_bytes( content.encode("utf-8"), _PintParser, |