Skip to content

PrologReader

eaxelson edited this page Aug 31, 2017 · 11 revisions

class PrologReader

A class for reading input in prolog text format and converting it into transducer(s).

An example that reads prolog input from file 'testfile.prolog' and creates the corresponding transducers and prints them. If the input cannot be parsed, a message showing the invalid line in prolog input is printed and reading is stopped.

with open('testfile.prolog', 'r') as f:
    try:
        r = hfst.PrologReader(f)
        for tr in r:
            print(tr)
    except hfst.exceptions.NotValidPrologFormatException as e:
        print(e.what())

init (self, f)

Create a PrologReader that reads input from file f.

  • f A python file.

read (self)

Read next transducer.

Read next transducer description in prolog format and return a corresponding transducer.

Throws: hfst.exceptions.NotValidPrologFormatException, hfst.exceptions.EndOfStreamException


iter (self)

An iterator to the reader.

Needed for 'for ... in' statement.

for transducer in prolog_reader:
    print(transducer)

next (self)

Return next element (for python version 2).

Needed for 'for ... in' statement.

for transducer in prolog_reader:
    print(transducer)

Throws: StopIteration


__next__ (self)

Return next element (for python version 3).

Needed for 'for ... in' statement.

for transducer in prolog_reader:
    print(transducer)

Throws: StopIteration