pytex/PyTeX/format/formatter.py

29 lines
822 B
Python
Raw Normal View History

2022-02-05 18:16:35 +01:00
from typing import List, Optional, Dict, Tuple
from pathlib import Path
class Formatter:
"""
A formatter is bound to a specific input file with some
building configuration.
"""
def format(self, build_dir: Path) -> Optional[List[Tuple[str, Dict]]]:
"""
:param build_dir: Directory where output files are written to
:return: When configuration files are needed for a future
build of the output files, a list of the file names and their
needed configurations. Else None.
"""
pass
@property
def output_files(self) -> List[str]:
"""
:return: List of files that will be built when the formatter is invoked
"""
pass
2022-02-05 19:05:50 +01:00
def set_input_file(self, locate_config=True) -> None:
raise NotImplementedError