scanner.py
def enumerate_file_with_locations(filename: str, f: t.TextIO)\
-> t.Iterator[t.Tuple[Location, str]]:
    """Iterate over the `Locations` within the given file, yielding pairs
    consisting of the `Location` and the character at that location."""
    for line_number, line in enumerate(f, start=1):
        for col, c in enumerate(line):
            yield Location(filename, line_number, line[:-1], col), c
Iterate over the `Locations` within the given file, yielding pairs
    consisting of the `Location` and the character at that location.
Iterate over the `Locations` within the given file, yielding pairs
consisting of the `Location` and the character at that location.
Iterate over the ` Locations ` within the given file yielding pairs consisting of the ` Location ` and the character at that location .
def enumerate_file_with_locations(filename: str, f: t.TextIO)\
-> t.Iterator[t.Tuple[Location, str]]:
    for line_number, line in enumerate(f, start=1):
        for col, c in enumerate(line):
            yield Location(filename, line_number, line[:-1], col), c
def enumerate_file_with_locations ( filename : str , f : t . TextIO ) -> t . Iterator [ t . Tuple [ Location , str ] ] : for line_number , line in enumerate ( f , start = 1 ) : for col , c in enumerate ( line ) : yield Location ( filename , line_number , line [ : - 1 ] , col ) , c
Iterate over the `Locations` within the given file, yielding pairs
consisting of the `Location` and the character at that location.
Iterate over the ` Locations ` within the given file yielding pairs consisting of the ` Location ` and the character at that location .
"""Iterate over the `Locations` within the given file, yielding pairs
    consisting of the `Location` and the character at that location."""
filename
str
f
t.TextIO