HFST - Helsinki Finite-State Transducer Technology - C++ API  version 3.9.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Functions
HfstTransducer.h File Reference

Declarations of HFST API functions and datatypes. More...

#include "FormatSpecifiers.h"
#include "HfstDataTypes.h"
#include "HfstSymbolDefs.h"
#include "implementations/HfstTransitionGraph.h"
#include "parsers/LexcCompiler.h"
#include "implementations/SfstTransducer.h"
#include "implementations/TropicalWeightTransducer.h"
#include "implementations/LogWeightTransducer.h"
#include "implementations/FomaTransducer.h"
#include "implementations/HfstOlTransducer.h"
#include "HfstTokenizer.h"
#include "implementations/ConvertTransducerFormat.h"
#include "HfstExceptionDefs.h"
#include "HfstInputStream.h"
#include "HfstOutputStream.h"
#include <string>
#include <cassert>
#include <iostream>
#include <vector>
#include <map>
#include <set>
#include "hfstdll.h"
#include "hfst_apply_schemas.h"

Go to the source code of this file.

Classes

class  HfstTransducer
 A synchronous finite-state transducer. More...
 
class  HfstTransitionGraph< C >
 A simple transition graph format that consists of states and transitions between those states. More...
 

Namespaces

 hfst
 A namespace for HFST functions and datatypes.
 
 hfst::implementations
 A namespace for all code that forms a bridge between backend libraries and HFST.
 
 hfst::rules
 A namespace for functions that create two-level, replace, restriction and coercion rule transducers.
 
 hfst::xeroxRules
 A namespace for HFST xeroxRules functions and data types.
 

Functions

HfstTransducer bracketedReplace (const Rule &rule, bool optional)
 Unconditional replace, in multiple contexts first: (.* T<a:b>T .*) - [( .* L1 T<a:b>T R1 .*) u (.* L2 T<a:b>T R2 .*)...], where .* = [I:I (+ {tmpMarker (T), <,>} in alphabet) | <a:b>]* then: remove tmpMarker from transducer and alphabet, and do negation: .* - result from upper operations. More...
 
HfstTransducer coercion (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that requires that one of the mappings defined by mapping must occur in each context in contexts. Symbols outside of the matching substrings are mapped to any symbol allowed by alphabet. More...
 
HfstTransducer deep_coercion (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that specifies that a string from the output language of the transducer mapping always has to be mapped to one of its input strings (according to transducer mappings) if it appears in any of the contexts in contexts. Symbols outside of the matching substrings are mapped to any symbol allowed by alphabet. More...
 
HfstTransducer deep_restriction (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that specifies that a string from the output language of the transducer mapping may only be mapped to one of its input strings (according to transducer mappings) if it appears in any of the contexts in contexts. Symbols outside of the matching substrings are mapped to any symbol allowed by alphabet. More...
 
HfstTransducer deep_restriction_and_coercion (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that is equivalent to the intersection of deep_restriction and deep_coercion. More...
 
HfstTransducer left_replace_down (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 Inversion of the replace_up and the result needs to be composed on the upper side of the input language. However, matching is done on the output side of mapping. More...
 
HfstTransducer left_replace_down_karttunen (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 Inversion of the replace_up and the result needs to be composed on the upper side of the input language. However, matching is done on the output side of mapping. More...
 
HfstTransducer left_replace_left (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 Inversion of the replace_up and the result needs to be composed on the upper side of the input language. However, left context matching is done on the input side of mapping and right context on the output side of mapping. More...
 
HfstTransducer left_replace_right (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 Inversion of the replace_up and the result needs to be composed on the upper side of the input language. However, left context matching is done on the output side of mapping and right context on the input side of mapping. More...
 
HfstTransducer left_replace_up (HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 Inversion of the replace_up and the result needs to be composed on the upper side of the input language. More...
 
HfstTransducer left_replace_up (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 Inversion of the replace_up and the result needs to be composed on the upper side of the input language. More...
 
std::ostream & operator<< (std::ostream &out, const HfstTransducer &t)
 Write transducer t in AT&T format to ostream out. More...
 
HfstTransducer replace_down (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 The same as replace_up, but matching is done on the output side of mapping. More...
 
HfstTransducer replace_down (HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 The same as replace_down(HfstTransducerPair&, HfstTransducer&, bool, StringPairSet&) but mapping is performed in every context. More...
 
HfstTransducer replace_left (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 The same as replace_up, but left context matching is done on the input side of mapping and right context on the output side of mapping. More...
 
HfstTransducer replace_right (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 The same as replace_up, but left context matching is done on the output side of mapping and right context on the input side of mapping. More...
 
HfstTransducer replace_up (HfstTransducerPair &context, HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 A transducer that performs an upward mapping mapping in the context context when the alphabet is alphabet. optional defines whether the mapping is optional. More...
 
HfstTransducer replace_up (HfstTransducer &mapping, bool optional, StringPairSet &alphabet)
 The same as replace_up but mapping is performed in every context. More...
 
HfstTransducer restriction (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that allows any (substring) mapping defined by mapping only if it occurs in any of the contexts in contexts. Symbols outside of the matching substrings are mapped to any symbol allowed by alphabet. More...
 
HfstTransducer restriction_and_coercion (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that is equivalent to the intersection of restriction and coercion and requires that the mappings defined by mapping occur always and only in the given contexts in contexts. Symbols outside of the matching substrings are mapped to any symbol allowed by alphabet. More...
 
HfstTransducer surface_coercion (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that specifies that a string from the input language of the transducer mapping always has to the mapped to one of its output strings according to transducer mapping if it appears in any of the contexts in contexts. Symbols outside of the matching substrings are mapped to any symbol allowed by alphabet. More...
 
HfstTransducer surface_restriction (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that specifies that a string from the input language of the transducer mapping may only be mapped to one of its output strings (according to transducer mapping) if it appears in any of the contexts in contexts. Symbols outside of the matching substrings are mapped to any symbol allowed by alphabet. More...
 
HfstTransducer surface_restriction_and_coercion (HfstTransducerPairVector &contexts, HfstTransducer &mapping, StringPairSet &alphabet)
 A transducer that is equivalent to the intersection of surface_restriction and surface_coercion. More...
 
HfstTransducer two_level_if (HfstTransducerPair &context, StringPairSet &mappings, StringPairSet &alphabet)
 A transducer that obligatorily performs the mappings defined by mappings in the context context when the alphabet is alphabet. More...
 
HfstTransducer two_level_if_and_only_if (HfstTransducerPair &context, StringPairSet &mappings, StringPairSet &alphabet)
 A transducer that always performs the mappings defined by mappings in the context context and only in that context, when the alphabet is alphabet. More...
 
HfstTransducer two_level_only_if (HfstTransducerPair &context, StringPairSet &mappings, StringPairSet &alphabet)
 A transducer that allows the mappings defined by mappings only in the context context, when the alphabet is alphabet. More...
 

Detailed Description

Declarations of HFST API functions and datatypes.

This file must be included to a program that uses the HFST API.