File: test7.py

package info (click to toggle)
hfst 3.16.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 14,532 kB
  • sloc: cpp: 101,875; sh: 6,717; python: 5,225; yacc: 4,985; lex: 2,900; makefile: 2,017; xml: 6
file content (23 lines) | stat: -rw-r--r-- 764 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import libhfst

fsm = libhfst.HfstBasicTransducer()
fsm.add_state(1)
fsm.set_final_weight(1, 2.0)
fsm.add_transition(0, 1, "foo", libhfst.EPSILON)
if not libhfst.HfstTransducer(fsm).compare(libhfst.regex('foo:0::2.0')):
    raise RuntimeError('')
    
fsm = libhfst.HfstBasicTransducer()
fsm.add_state(1)
fsm.set_final_weight(1, -0.5)
fsm.add_transition(0, 1, "foo", libhfst.UNKNOWN)
fsm.add_transition(0, 1, "foo", "foo")
if not libhfst.HfstTransducer(fsm).compare(libhfst.regex('foo:?::-0.5')):
    raise RuntimeError('')

fsm = libhfst.HfstBasicTransducer()
fsm.add_state(1)
fsm.set_final_weight(1, 1.5)
fsm.add_transition(0, 1, libhfst.IDENTITY, libhfst.IDENTITY)
if not libhfst.HfstTransducer(fsm).compare(libhfst.regex('?::1.5')):
    raise RuntimeError('')