# Upstream repository: <https://github.com/efficios/normand>.
__author__ = "Philippe Proulx"
-__version__ = "0.4.0"
+__version__ = "0.5.0"
__all__ = [
"ByteOrder",
"parse",
"ParseError",
"ParseResult",
"TextLoc",
- "VarsT",
+ "SymbolsT",
"__author__",
"__version__",
]
# Variable/label dictionary type.
-VarsT = Dict[str, int]
+SymbolsT = Dict[str, int]
# Python name pattern.
class _Parser:
# Builds a parser to parse the Normand input `normand`, parsing
# immediately.
- def __init__(self, normand: str, variables: VarsT, labels: VarsT):
+ def __init__(self, normand: str, variables: SymbolsT, labels: SymbolsT):
self._normand = normand
self._at = 0
self._line_no = 1
def _create(
cls,
data: bytearray,
- variables: VarsT,
- labels: VarsT,
+ variables: SymbolsT,
+ labels: SymbolsT,
offset: int,
bo: Optional[ByteOrder],
):
def _init(
self,
data: bytearray,
- variables: VarsT,
- labels: VarsT,
+ variables: SymbolsT,
+ labels: SymbolsT,
offset: int,
bo: Optional[ByteOrder],
):
# Generator state.
class _GenState:
def __init__(
- self, variables: VarsT, labels: VarsT, offset: int, bo: Optional[ByteOrder]
+ self,
+ variables: SymbolsT,
+ labels: SymbolsT,
+ offset: int,
+ bo: Optional[ByteOrder],
):
self.variables = variables.copy()
self.labels = labels.copy()
def __init__(
self,
group: _Group,
- variables: VarsT,
- labels: VarsT,
+ variables: SymbolsT,
+ labels: SymbolsT,
offset: int,
bo: Optional[ByteOrder],
):
# Raises `ParseError` on any parsing error.
def parse(
normand: str,
- init_variables: Optional[VarsT] = None,
- init_labels: Optional[VarsT] = None,
+ init_variables: Optional[SymbolsT] = None,
+ init_labels: Optional[SymbolsT] = None,
init_offset: int = 0,
init_byte_order: Optional[ByteOrder] = None,
):