# This file auto generated from Data\common\transforms\und_FONIPA-fa.xml
# on Sun 3 Dec 10:05:00 am GMT
use strict;
use version;
our $VERSION = version->declare('v0.34.4');
use v5.10.1;
use mro 'c3';
use utf8;
use if $^V ge v5.12.0, feature => 'unicode_strings';
use Types::Standard qw( Str Int HashRef ArrayRef CodeRef RegexpRef );
use Moo;
BEGIN {
die "Transliteration requires Perl 5.18 or above"
unless $^V ge v5.18.0;
}
no warnings 'experimental::regex_sets';
has 'transforms' => (
is => 'ro',
isa => ArrayRef,
init_arg => undef,
default => sub { [
qr/(?^um:\G.)/,
{
type => 'transform',
data => [
{
from => q(Any),
to => q(NFD),
},
],
},
{
type => 'conversion',
data => [
{
before => q(),
after => q(),
replace => q([ʰʱʼ̰̃̋́̄̀̏̌̂˥˦˧˨˩ꜜꜛ↗↘̯͜͡]),
result => q(),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ʲ),
result => q(j),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ᵐ),
result => q(m),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ⁿ),
result => q(n),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ᵑ),
result => q(ŋ),
revisit => 0,
},
],
},
{
type => 'transform',
data => [
{
from => q(Any),
to => q(NFC),
},
],
},
{
type => 'conversion',
data => [
{
before => q(),
after => q(),
replace => q([y \N{U+268} \N{U+289} ɯ u ʏ \N{U+26A.308} \N{U+28A.308} \N{U+26F.33D} \N{U+28A} ø ɤ o \N{U+F8.31E} \N{U+264.31E} \N{U+6F.31E} ɔ w \N{U+77.325} ʍ ʷ](?:[j]|[iɪe\N{U+65.31E}])(?:[e\N{U+65.31E}]|[ɘɵə\N{U+275.31E}])),
result => q(uia),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(yʉ),
result => q(iu),
revisit => 0,
},
],
},
{
type => 'transform',
data => [
{
from => q(Any),
to => q(NULL),
},
],
},
{
type => 'conversion',
data => [
{
before => q([^ \p{L} \p{M} \p{N}]),
after => q(),
replace => q([ɘ ɵ ə \N{U+275.31E}]ː?),
result => q(ای),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ɘ ɵ ə \N{U+275.31E}]ː),
result => q(ی),
revisit => 0,
},
{
before => q(),
after => q((?:(?!(?:[\p{L}\p{M}\p{N}]|[\.]))(?s:.))),
replace => q((?:[ɘɵə\N{U+275.31E}]|[e\N{U+65.31E}])),
result => q(ه),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ɘ ɵ ə \N{U+275.31E}]),
result => q(),
revisit => 0,
},
{
before => q([^ \p{L} \p{M} \p{N}]),
after => q(),
replace => q([i ɪ e \N{U+65.31E}]ː?),
result => q(ای),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([i ɪ e \N{U+65.31E}]ː?j?),
result => q(ی),
revisit => 0,
},
{
before => q([^ \p{L} \p{M} \p{N}]),
after => q(),
replace => q([y \N{U+268} \N{U+289} ɯ u ʏ \N{U+26A.308} \N{U+28A.308} \N{U+26F.33D} \N{U+28A} ø ɤ o \N{U+F8.31E} \N{U+264.31E} \N{U+6F.31E} ɔ w \N{U+77.325} ʍ ʷ]ː?),
result => q(او),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([y \N{U+268} \N{U+289} ɯ u ʏ \N{U+26A.308} \N{U+28A.308} \N{U+26F.33D} \N{U+28A} ø ɤ o \N{U+F8.31E} \N{U+264.31E} \N{U+6F.31E} ɔ w \N{U+77.325} ʍ ʷ]ː?),
result => q(و),
revisit => 0,
},
{
before => q([^ \p{L} \p{M} \p{N}]),
after => q(),
replace => q([ɛ œ ɜ æ ɶ]ː?),
result => q(ا),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ɛ œ ɜ æ ɶ]ː?),
result => q(ا),
revisit => 0,
},
{
before => q([^ \p{L} \p{M} \p{N}]),
after => q(),
replace => q([ʌ a ɑ ɒ ɐ ɞ \N{U+E4} \N{U+252.308}]ː?),
result => q(آ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ʌ a ɑ ɒ ɐ ɞ \N{U+E4} \N{U+252.308}]ː?),
result => q(ا),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ː),
result => q(ّ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+74.361.283}ʧ]),
result => q(چ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ɡgɠk][ʘ ɋ ǀ ʇ ǃ ʗ ǂ ʄ ǁ ʖ]),
result => q(کچ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([nɲ]?[ʘ ɋ ǀ ʇ ǃ ʗ ǂ ʄ ǁ ʖ]),
result => q(نچ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+6D.325}mɱ]),
result => q(م),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+6E.33C.30A}\N{U+6E.33C}\N{U+6E.325}n\N{U+273.30A}ɳ\N{U+272.30A}\N{U+272.325}ɲ]),
result => q(ن),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+14B.30A}ŋ\N{U+274.325}ɴ]k),
result => q(نک),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+14B.30A}ŋ\N{U+274.325}ɴ][ɡg]?),
result => q(نگ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([p\N{U+70.32A}]),
result => q(پ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([b\N{U+62.32A}ɓ]),
result => q(ب),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+64.33C}dɗᶑ]),
result => q(د),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+74.33C}t]),
result => q(ت),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ʈ]),
result => q(ط),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ɖ]),
result => q(ض),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(c),
result => q(چ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ɟ),
result => q(دج),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(k),
result => q(ک),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ɡgɠ]),
result => q(گ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([qɢʡʛ]),
result => q(ق),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ʔ),
result => q(),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(s),
result => q(س),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(z),
result => q(ز),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ʃʂɕʄ]),
result => q(ش),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ʒʐʑ]),
result => q(ژ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ɸf]),
result => q(ف),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([βv]),
result => q(و),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+3B8.33C}θ\N{U+3B8.331}]),
result => q(ث),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+F0.33C}ð\N{U+F0.320}]),
result => q(ذ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ç),
result => q(ش),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ʝ[i ɪ e \N{U+65.31E}]?ː?),
result => q(ی),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([xχ]),
result => q(خ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ɣʁ]),
result => q(غ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ħ),
result => q(ح),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ʕ),
result => q(ع),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([hɦ\N{U+294.31E}]),
result => q(ه),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ʋ),
result => q(و),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ʙ),
result => q(بر),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(r̝),
result => q(رژ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+279.325}\N{U+279}\N{U+27B.30A}\N{U+27B}\N{U+27E.325}ɾ\N{U+27D.30A}ɽ\N{U+72.33C}\N{U+72.325}r]),
result => q(ر),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+280.325}ʀ]),
result => q(غ),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ʜ),
result => q(ح),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ʢ),
result => q(ع),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(j[i ɪ e \N{U+65.31E}]?ː?),
result => q(ی),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ɬ),
result => q(شل),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ɮ),
result => q(ژل),
revisit => 0,
},
{
before => q(),
after => q((?:(?!(?:[iɪe\N{U+65.31E}]|[jʝ]))(?s:.))),
replace => q([\N{U+28E.325}ʎ]),
result => q(لی),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([\N{U+6C.33C}\N{U+6C.325}l\N{U+26D.30A}ɭ\N{U+28E.325}ʎ]),
result => q(ل),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q([ʟ\N{U+29F.320}]),
result => q(غ),
revisit => 0,
},
],
},
{
type => 'transform',
data => [
{
from => q(Any),
to => q(NULL),
},
],
},
{
type => 'conversion',
data => [
{
before => q(),
after => q(),
replace => q(\.),
result => q(),
revisit => 0,
},
{
before => q(),
after => q(),
replace => q(ووو+),
result => q(وو),
revisit => 0,
},
]
},
] },
);
no Moo;
1;
# vim: tabstop=4