PNG  IHDRX cHRMz&u0`:pQ<bKGD pHYsodtIME MeqIDATxw]Wug^Qd˶ 6`!N:!@xI~)%7%@Bh&`lnjVF29gΨ4E$|>cɚ{gk= %,a KX%,a KX%,a KX%,a KX%,a KX%,a KX%, b` ǟzeאfp]<!SJmɤY޲ڿ,%c ~ع9VH.!Ͳz&QynֺTkRR.BLHi٪:l;@(!MԴ=žI,:o&N'Kù\vRmJ雵֫AWic H@" !: Cé||]k-Ha oݜ:y F())u]aG7*JV@J415p=sZH!=!DRʯvɱh~V\}v/GKY$n]"X"}t@ xS76^[bw4dsce)2dU0 CkMa-U5tvLƀ~mlMwfGE/-]7XAƟ`׮g ewxwC4\[~7@O-Q( a*XGƒ{ ՟}$_y3tĐƤatgvێi|K=uVyrŲlLӪuܿzwk$m87k( `múcE)"@rK( z4$D; 2kW=Xb$V[Ru819קR~qloѱDyįݎ*mxw]y5e4K@ЃI0A D@"BDk_)N\8͜9dz"fK0zɿvM /.:2O{ Nb=M=7>??Zuo32 DLD@D| &+֎C #B8ַ`bOb $D#ͮҪtx]%`ES`Ru[=¾!@Od37LJ0!OIR4m]GZRJu$‡c=%~s@6SKy?CeIh:[vR@Lh | (BhAMy=݃  G"'wzn޺~8ԽSh ~T*A:xR[ܹ?X[uKL_=fDȊ؂p0}7=D$Ekq!/t.*2ʼnDbŞ}DijYaȲ(""6HA;:LzxQ‘(SQQ}*PL*fc\s `/d'QXW, e`#kPGZuŞuO{{wm[&NBTiiI0bukcA9<4@SӊH*؎4U/'2U5.(9JuDfrޱtycU%j(:RUbArLֺN)udA':uGQN"-"Is.*+k@ `Ojs@yU/ H:l;@yyTn}_yw!VkRJ4P)~y#)r,D =ě"Q]ci'%HI4ZL0"MJy 8A{ aN<8D"1#IJi >XjX֔#@>-{vN!8tRݻ^)N_╗FJEk]CT՟ YP:_|H1@ CBk]yKYp|og?*dGvzنzӴzjֺNkC~AbZƷ`.H)=!QͷVTT(| u78y֮}|[8-Vjp%2JPk[}ԉaH8Wpqhwr:vWª<}l77_~{s۴V+RCģ%WRZ\AqHifɤL36: #F:p]Bq/z{0CU6ݳEv_^k7'>sq*+kH%a`0ԣisqにtү04gVgW΂iJiS'3w.w}l6MC2uԯ|>JF5`fV5m`Y**Db1FKNttu]4ccsQNnex/87+}xaUW9y>ͯ骵G{䩓Գ3+vU}~jJ.NFRD7<aJDB1#ҳgSb,+CS?/ VG J?|?,2#M9}B)MiE+G`-wo߫V`fio(}S^4e~V4bHOYb"b#E)dda:'?}׮4繏`{7Z"uny-?ǹ;0MKx{:_pÚmFמ:F " .LFQLG)Q8qN q¯¯3wOvxDb\. BKD9_NN &L:4D{mm o^tֽ:q!ƥ}K+<"m78N< ywsard5+вz~mnG)=}lYݧNj'QJS{S :UYS-952?&O-:W}(!6Mk4+>A>j+i|<<|;ر^߉=HE|V#F)Emm#}/"y GII웻Jі94+v뾧xu~5C95~ūH>c@덉pʃ1/4-A2G%7>m;–Y,cyyaln" ?ƻ!ʪ<{~h~i y.zZB̃/,雋SiC/JFMmBH&&FAbϓO^tubbb_hZ{_QZ-sύodFgO(6]TJA˯#`۶ɟ( %$&+V'~hiYy>922 Wp74Zkq+Ovn錄c>8~GqܲcWꂎz@"1A.}T)uiW4="jJ2W7mU/N0gcqܗOO}?9/wìXžΏ0 >֩(V^Rh32!Hj5`;O28؇2#ݕf3 ?sJd8NJ@7O0 b־?lldщ̡&|9C.8RTWwxWy46ah嘦mh٤&l zCy!PY?: CJyв]dm4ǜҐR޻RլhX{FƯanшQI@x' ao(kUUuxW_Ñ줮[w8 FRJ(8˼)_mQ _!RJhm=!cVmm ?sFOnll6Qk}alY}; "baӌ~M0w,Ggw2W:G/k2%R,_=u`WU R.9T"v,<\Ik޽/2110Ӿxc0gyC&Ny޽JҢrV6N ``یeA16"J³+Rj*;BϜkZPJaÍ<Jyw:NP8/D$ 011z֊Ⱳ3ι֘k1V_"h!JPIΣ'ɜ* aEAd:ݺ>y<}Lp&PlRfTb1]o .2EW\ͮ]38؋rTJsǏP@芎sF\> P^+dYJLbJ C-xϐn> ι$nj,;Ǖa FU *择|h ~izť3ᤓ`K'-f tL7JK+vf2)V'-sFuB4i+m+@My=O҈0"|Yxoj,3]:cо3 $#uŘ%Y"y죯LebqtҢVzq¼X)~>4L׶m~[1_k?kxֺQ`\ |ٛY4Ѯr!)N9{56(iNq}O()Em]=F&u?$HypWUeB\k]JɩSع9 Zqg4ZĊo oMcjZBU]B\TUd34ݝ~:7ڶSUsB0Z3srx 7`:5xcx !qZA!;%͚7&P H<WL!džOb5kF)xor^aujƍ7 Ǡ8/p^(L>ὴ-B,{ۇWzֺ^k]3\EE@7>lYBȝR.oHnXO/}sB|.i@ɥDB4tcm,@ӣgdtJ!lH$_vN166L__'Z)y&kH;:,Y7=J 9cG) V\hjiE;gya~%ks_nC~Er er)muuMg2;֫R)Md) ,¶ 2-wr#F7<-BBn~_(o=KO㭇[Xv eN_SMgSҐ BS헃D%g_N:/pe -wkG*9yYSZS.9cREL !k}<4_Xs#FmҶ:7R$i,fi!~' # !6/S6y@kZkZcX)%5V4P]VGYq%H1!;e1MV<!ϐHO021Dp= HMs~~a)ަu7G^];git!Frl]H/L$=AeUvZE4P\.,xi {-~p?2b#amXAHq)MWǾI_r`S Hz&|{ +ʖ_= (YS(_g0a03M`I&'9vl?MM+m~}*xT۲(fY*V4x@29s{DaY"toGNTO+xCAO~4Ϳ;p`Ѫ:>Ҵ7K 3}+0 387x\)a"/E>qpWB=1 ¨"MP(\xp߫́A3+J] n[ʼnӼaTbZUWb={~2ooKױӰp(CS\S筐R*JغV&&"FA}J>G֐p1ٸbk7 ŘH$JoN <8s^yk_[;gy-;߉DV{c B yce% aJhDȶ 2IdйIB/^n0tNtџdcKj4϶v~- CBcgqx9= PJ) dMsjpYB] GD4RDWX +h{y`,3ꊕ$`zj*N^TP4L:Iz9~6s) Ga:?y*J~?OrMwP\](21sZUD ?ܟQ5Q%ggW6QdO+\@ ̪X'GxN @'4=ˋ+*VwN ne_|(/BDfj5(Dq<*tNt1х!MV.C0 32b#?n0pzj#!38}޴o1KovCJ`8ŗ_"]] rDUy޲@ Ȗ-;xџ'^Y`zEd?0„ DAL18IS]VGq\4o !swV7ˣι%4FѮ~}6)OgS[~Q vcYbL!wG3 7띸*E Pql8=jT\꘿I(z<[6OrR8ºC~ډ]=rNl[g|v TMTղb-o}OrP^Q]<98S¤!k)G(Vkwyqyr޽Nv`N/e p/~NAOk \I:G6]4+K;j$R:Mi #*[AȚT,ʰ,;N{HZTGMoּy) ]%dHء9Պ䠬|<45,\=[bƟ8QXeB3- &dҩ^{>/86bXmZ]]yޚN[(WAHL$YAgDKp=5GHjU&99v簪C0vygln*P)9^͞}lMuiH!̍#DoRBn9l@ xA/_v=ȺT{7Yt2N"4!YN`ae >Q<XMydEB`VU}u]嫇.%e^ánE87Mu\t`cP=AD/G)sI"@MP;)]%fH9'FNsj1pVhY&9=0pfuJ&gޤx+k:!r˭wkl03׼Ku C &ѓYt{.O.zҏ z}/tf_wEp2gvX)GN#I ݭ߽v/ .& и(ZF{e"=V!{zW`, ]+LGz"(UJp|j( #V4, 8B 0 9OkRrlɱl94)'VH9=9W|>PS['G(*I1==C<5"Pg+x'K5EMd؞Af8lG ?D FtoB[je?{k3zQ vZ;%Ɠ,]E>KZ+T/ EJxOZ1i #T<@ I}q9/t'zi(EMqw`mYkU6;[t4DPeckeM;H}_g pMww}k6#H㶏+b8雡Sxp)&C $@'b,fPߑt$RbJ'vznuS ~8='72_`{q纶|Q)Xk}cPz9p7O:'|G~8wx(a 0QCko|0ASD>Ip=4Q, d|F8RcU"/KM opKle M3#i0c%<7׿p&pZq[TR"BpqauIp$ 8~Ĩ!8Սx\ւdT>>Z40ks7 z2IQ}ItԀ<-%S⍤};zIb$I 5K}Q͙D8UguWE$Jh )cu4N tZl+[]M4k8֦Zeq֮M7uIqG 1==tLtR,ƜSrHYt&QP윯Lg' I,3@P'}'R˪e/%-Auv·ñ\> vDJzlӾNv5:|K/Jb6KI9)Zh*ZAi`?S {aiVDԲuy5W7pWeQJk֤#5&V<̺@/GH?^τZL|IJNvI:'P=Ϛt"¨=cud S Q.Ki0 !cJy;LJR;G{BJy޺[^8fK6)=yʊ+(k|&xQ2`L?Ȓ2@Mf 0C`6-%pKpm')c$׻K5[J*U[/#hH!6acB JA _|uMvDyk y)6OPYjœ50VT K}cǻP[ $:]4MEA.y)|B)cf-A?(e|lɉ#P9V)[9t.EiQPDѠ3ϴ;E:+Օ t ȥ~|_N2,ZJLt4! %ա]u {+=p.GhNcŞQI?Nd'yeh n7zi1DB)1S | S#ًZs2|Ɛy$F SxeX{7Vl.Src3E℃Q>b6G ўYCmtկ~=K0f(=LrAS GN'ɹ9<\!a`)֕y[uՍ[09` 9 +57ts6}b4{oqd+J5fa/,97J#6yν99mRWxJyѡyu_TJc`~W>l^q#Ts#2"nD1%fS)FU w{ܯ R{ ˎ󅃏џDsZSQS;LV;7 Od1&1n$ N /.q3~eNɪ]E#oM~}v֯FڦwyZ=<<>Xo稯lfMFV6p02|*=tV!c~]fa5Y^Q_WN|Vs 0ҘދU97OI'N2'8N֭fgg-}V%y]U4 峧p*91#9U kCac_AFңĪy뚇Y_AiuYyTTYЗ-(!JFLt›17uTozc. S;7A&&<ԋ5y;Ro+:' *eYJkWR[@F %SHWP 72k4 qLd'J "zB6{AC0ƁA6U.'F3:Ȅ(9ΜL;D]m8ڥ9}dU "v!;*13Rg^fJyShyy5auA?ɩGHRjo^]׽S)Fm\toy 4WQS@mE#%5ʈfFYDX ~D5Ϡ9tE9So_aU4?Ѽm%&c{n>.KW1Tlb}:j uGi(JgcYj0qn+>) %\!4{LaJso d||u//P_y7iRJ߬nHOy) l+@$($VFIQ9%EeKʈU. ia&FY̒mZ=)+qqoQn >L!qCiDB;Y<%} OgBxB!ØuG)WG9y(Ą{_yesuZmZZey'Wg#C~1Cev@0D $a@˲(.._GimA:uyw֬%;@!JkQVM_Ow:P.s\)ot- ˹"`B,e CRtaEUP<0'}r3[>?G8xU~Nqu;Wm8\RIkբ^5@k+5(By'L&'gBJ3ݶ!/㮻w҅ yqPWUg<e"Qy*167΃sJ\oz]T*UQ<\FԎ`HaNmڜ6DysCask8wP8y9``GJ9lF\G g's Nn͵MLN֪u$| /|7=]O)6s !ĴAKh]q_ap $HH'\1jB^s\|- W1:=6lJBqjY^LsPk""`]w)󭃈,(HC ?䔨Y$Sʣ{4Z+0NvQkhol6C.婧/u]FwiVjZka&%6\F*Ny#8O,22+|Db~d ~Çwc N:FuuCe&oZ(l;@ee-+Wn`44AMK➝2BRՈt7g*1gph9N) *"TF*R(#'88pm=}X]u[i7bEc|\~EMn}P瘊J)K.0i1M6=7'_\kaZ(Th{K*GJyytw"IO-PWJk)..axӝ47"89Cc7ĐBiZx 7m!fy|ϿF9CbȩV 9V-՛^pV̌ɄS#Bv4-@]Vxt-Z, &ֺ*diؠ2^VXbs֔Ìl.jQ]Y[47gj=幽ex)A0ip׳ W2[ᎇhuE^~q흙L} #-b۸oFJ_QP3r6jr+"nfzRJTUqoaۍ /$d8Mx'ݓ= OՃ| )$2mcM*cЙj}f };n YG w0Ia!1Q.oYfr]DyISaP}"dIӗթO67jqR ҊƐƈaɤGG|h;t]䗖oSv|iZqX)oalv;۩meEJ\!8=$4QU4Xo&VEĊ YS^E#d,yX_> ۘ-e\ "Wa6uLĜZi`aD9.% w~mB(02G[6y.773a7 /=o7D)$Z 66 $bY^\CuP. (x'"J60׿Y:Oi;F{w佩b+\Yi`TDWa~|VH)8q/=9!g߆2Y)?ND)%?Ǐ`k/sn:;O299yB=a[Ng 3˲N}vLNy;*?x?~L&=xyӴ~}q{qE*IQ^^ͧvü{Huu=R|>JyUlZV, B~/YF!Y\u_ݼF{_C)LD]m {H 0ihhadd nUkf3oٺCvE\)QJi+֥@tDJkB$1!Đr0XQ|q?d2) Ӣ_}qv-< FŊ߫%roppVBwü~JidY4:}L6M7f٬F "?71<2#?Jyy4뷢<_a7_=Q E=S1И/9{+93֮E{ǂw{))?maÆm(uLE#lïZ  ~d];+]h j?!|$F}*"4(v'8s<ŏUkm7^7no1w2ؗ}TrͿEk>p'8OB7d7R(A 9.*Mi^ͳ; eeUwS+C)uO@ =Sy]` }l8^ZzRXj[^iUɺ$tj))<sbDJfg=Pk_{xaKo1:-uyG0M ԃ\0Lvuy'ȱc2Ji AdyVgVh!{]/&}}ċJ#%d !+87<;qN޼Nفl|1N:8ya  8}k¾+-$4FiZYÔXk*I&'@iI99)HSh4+2G:tGhS^繿 Kتm0 вDk}֚+QT4;sC}rՅE,8CX-e~>G&'9xpW,%Fh,Ry56Y–hW-(v_,? ; qrBk4-V7HQ;ˇ^Gv1JVV%,ik;D_W!))+BoS4QsTM;gt+ndS-~:11Sgv!0qRVh!"Ȋ(̦Yl.]PQWgٳE'`%W1{ndΗBk|Ž7ʒR~,lnoa&:ü$ 3<a[CBݮwt"o\ePJ=Hz"_c^Z.#ˆ*x z̝grY]tdkP*:97YľXyBkD4N.C_[;F9`8& !AMO c `@BA& Ost\-\NX+Xp < !bj3C&QL+*&kAQ=04}cC!9~820G'PC9xa!w&bo_1 Sw"ܱ V )Yl3+ס2KoXOx]"`^WOy :3GO0g;%Yv㐫(R/r (s } u B &FeYZh0y> =2<Ϟc/ -u= c&׭,.0"g"7 6T!vl#sc>{u/Oh Bᾈ)۴74]x7 gMӒ"d]U)}" v4co[ ɡs 5Gg=XR14?5A}D "b{0$L .\4y{_fe:kVS\\O]c^W52LSBDM! C3Dhr̦RtArx4&agaN3Cf<Ԉp4~ B'"1@.b_/xQ} _߃҉/gٓ2Qkqp0շpZ2fԫYz< 4L.Cyυι1t@鎫Fe sYfsF}^ V}N<_`p)alٶ "(XEAVZ<)2},:Ir*#m_YӼ R%a||EƼIJ,,+f"96r/}0jE/)s)cjW#w'Sʯ5<66lj$a~3Kʛy 2:cZ:Yh))+a߭K::N,Q F'qB]={.]h85C9cr=}*rk?vwV렵ٸW Rs%}rNAkDv|uFLBkWY YkX מ|)1!$#3%y?pF<@<Rr0}: }\J [5FRxY<9"SQdE(Q*Qʻ)q1E0B_O24[U'],lOb ]~WjHޏTQ5Syu wq)xnw8~)c 쫬gٲߠ H% k5dƝk> kEj,0% b"vi2Wس_CuK)K{n|>t{P1򨾜j>'kEkƗBg*H%'_aY6Bn!TL&ɌOb{c`'d^{t\i^[uɐ[}q0lM˕G:‚4kb祔c^:?bpg… +37stH:0}en6x˟%/<]BL&* 5&fK9Mq)/iyqtA%kUe[ڛKN]Ě^,"`/ s[EQQm?|XJ߅92m]G.E΃ח U*Cn.j_)Tѧj̿30ڇ!A0=͜ar I3$C^-9#|pk!)?7.x9 @OO;WƝZBFU keZ75F6Tc6"ZȚs2y/1 ʵ:u4xa`C>6Rb/Yм)^=+~uRd`/|_8xbB0?Ft||Z\##|K 0>>zxv8۴吅q 8ĥ)"6>~\8:qM}#͚'ĉ#p\׶ l#bA?)|g g9|8jP(cr,BwV (WliVxxᡁ@0Okn;ɥh$_ckCgriv}>=wGzβ KkBɛ[˪ !J)h&k2%07δt}!d<9;I&0wV/ v 0<H}L&8ob%Hi|޶o&h1L|u֦y~󛱢8fٲUsւ)0oiFx2}X[zVYr_;N(w]_4B@OanC?gĦx>мgx>ΛToZoOMp>40>V Oy V9iq!4 LN,ˢu{jsz]|"R޻&'ƚ{53ўFu(<٪9:΋]B;)B>1::8;~)Yt|0(pw2N%&X,URBK)3\zz&}ax4;ǟ(tLNg{N|Ǽ\G#C9g$^\}p?556]/RP.90 k,U8/u776s ʪ_01چ|\N 0VV*3H鴃J7iI!wG_^ypl}r*jɤSR 5QN@ iZ#1ٰy;_\3\BQQ x:WJv츟ٯ$"@6 S#qe딇(/P( Dy~TOϻ<4:-+F`0||;Xl-"uw$Цi󼕝mKʩorz"mϺ$F:~E'ҐvD\y?Rr8_He@ e~O,T.(ފR*cY^m|cVR[8 JҡSm!ΆԨb)RHG{?MpqrmN>߶Y)\p,d#xۆWY*,l6]v0h15M˙MS8+EdI='LBJIH7_9{Caз*Lq,dt >+~ّeʏ?xԕ4bBAŚjﵫ!'\Ը$WNvKO}ӽmSşذqsOy?\[,d@'73'j%kOe`1.g2"e =YIzS2|zŐƄa\U,dP;jhhhaxǶ?КZ՚.q SE+XrbOu%\GتX(H,N^~]JyEZQKceTQ]VGYqnah;y$cQahT&QPZ*iZ8UQQM.qo/T\7X"u?Mttl2Xq(IoW{R^ ux*SYJ! 4S.Jy~ BROS[V|žKNɛP(L6V^|cR7i7nZW1Fd@ Ara{詑|(T*dN]Ko?s=@ |_EvF]׍kR)eBJc" MUUbY6`~V޴dJKß&~'d3i WWWWWW
Current Directory: /opt/alt/alt-nodejs22/root/usr/share/doc/alt-nodejs22-libicu-doc
Viewing File: /opt/alt/alt-nodejs22/root/usr/share/doc/alt-nodejs22-libicu-doc/classPluralRules.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.9.1"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>ICU 77.1: icu::PluralRules Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/searchdata.js"></script> <script type="text/javascript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">ICU 77.1 &#160;<span id="projectnumber">77.1</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.9.1 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */ var searchBox = new SearchBox("searchBox", "search",false,'Search','.html'); /* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */</script> <div id="main-nav"></div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> </div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceicu.html">icu</a></li><li class="navelem"><a class="el" href="classicu_1_1PluralRules.html">PluralRules</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> &#124; <a href="#pub-static-methods">Static Public Member Functions</a> &#124; <a href="#friends">Friends</a> </div> <div class="headertitle"> <div class="title">icu::PluralRules Class Reference</div> </div> </div><!--header--> <div class="contents"> <p>Defines rules for mapping non-negative numeric values onto a small set of keywords. <a href="classicu_1_1PluralRules.html#details">More...</a></p> <p><code>#include &lt;<a class="el" href="plurrule_8h_source.html">plurrule.h</a>&gt;</code></p> <div class="dynheader"> Inheritance diagram for icu::PluralRules:</div> <div class="dyncontent"> <div class="center"> <img src="classicu_1_1PluralRules.png" usemap="#icu::PluralRules_map" alt=""/> <map id="icu::PluralRules_map" name="icu::PluralRules_map"> <area href="classicu_1_1UObject.html" title="UObject is the common ICU &quot;boilerplate&quot; class." alt="icu::UObject" shape="rect" coords="0,56,99,80"/> <area href="classicu_1_1UMemory.html" title="UMemory is the common ICU base class." alt="icu::UMemory" shape="rect" coords="0,0,99,24"/> </map> </div></div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:a52405d678e0c1c8120f95b15e96842fb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a52405d678e0c1c8120f95b15e96842fb">PluralRules</a> (<a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:a52405d678e0c1c8120f95b15e96842fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <a href="classicu_1_1PluralRules.html#a52405d678e0c1c8120f95b15e96842fb">More...</a><br /></td></tr> <tr class="separator:a52405d678e0c1c8120f95b15e96842fb"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a63d6658aa865e1a118a0d07f4ce8da76"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a63d6658aa865e1a118a0d07f4ce8da76">PluralRules</a> (const <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;other)</td></tr> <tr class="memdesc:a63d6658aa865e1a118a0d07f4ce8da76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <a href="classicu_1_1PluralRules.html#a63d6658aa865e1a118a0d07f4ce8da76">More...</a><br /></td></tr> <tr class="separator:a63d6658aa865e1a118a0d07f4ce8da76"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a7b3290ba522285fbb1ff6382b7d2ac95"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a7b3290ba522285fbb1ff6382b7d2ac95">~PluralRules</a> ()</td></tr> <tr class="memdesc:a7b3290ba522285fbb1ff6382b7d2ac95"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="classicu_1_1PluralRules.html#a7b3290ba522285fbb1ff6382b7d2ac95">More...</a><br /></td></tr> <tr class="separator:a7b3290ba522285fbb1ff6382b7d2ac95"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a7e0a1025ba0e1e8b0be9ea3d6f3bfd94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a7e0a1025ba0e1e8b0be9ea3d6f3bfd94">clone</a> () const</td></tr> <tr class="memdesc:a7e0a1025ba0e1e8b0be9ea3d6f3bfd94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clone. <a href="classicu_1_1PluralRules.html#a7e0a1025ba0e1e8b0be9ea3d6f3bfd94">More...</a><br /></td></tr> <tr class="separator:a7e0a1025ba0e1e8b0be9ea3d6f3bfd94"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a131ad396652cc2cd03308547f242ea5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a131ad396652cc2cd03308547f242ea5e">operator=</a> (const <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;)</td></tr> <tr class="memdesc:a131ad396652cc2cd03308547f242ea5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator. <a href="classicu_1_1PluralRules.html#a131ad396652cc2cd03308547f242ea5e">More...</a><br /></td></tr> <tr class="separator:a131ad396652cc2cd03308547f242ea5e"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:aa580f6f012d4167e7ac32c6fe273b00c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#aa580f6f012d4167e7ac32c6fe273b00c">select</a> (int32_t number) const</td></tr> <tr class="memdesc:aa580f6f012d4167e7ac32c6fe273b00c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given an integer, returns the keyword of the first rule that applies to the number. <a href="classicu_1_1PluralRules.html#aa580f6f012d4167e7ac32c6fe273b00c">More...</a><br /></td></tr> <tr class="separator:aa580f6f012d4167e7ac32c6fe273b00c"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a838daac203377d5a61474fbc25529b3d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a838daac203377d5a61474fbc25529b3d">select</a> (double number) const</td></tr> <tr class="memdesc:a838daac203377d5a61474fbc25529b3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given a floating-point number, returns the keyword of the first rule that applies to the number. <a href="classicu_1_1PluralRules.html#a838daac203377d5a61474fbc25529b3d">More...</a><br /></td></tr> <tr class="separator:a838daac203377d5a61474fbc25529b3d"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a1e3b5db553ade93319e7ba98503283c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a1e3b5db553ade93319e7ba98503283c3">select</a> (const <a class="el" href="classicu_1_1number_1_1FormattedNumber.html">number::FormattedNumber</a> &amp;number, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const</td></tr> <tr class="memdesc:a1e3b5db553ade93319e7ba98503283c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given a formatted number, returns the keyword of the first rule that applies to the number. <a href="classicu_1_1PluralRules.html#a1e3b5db553ade93319e7ba98503283c3">More...</a><br /></td></tr> <tr class="separator:a1e3b5db553ade93319e7ba98503283c3"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a2c0abd3c600c72c3ddd932f308450412"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a2c0abd3c600c72c3ddd932f308450412">select</a> (const <a class="el" href="classicu_1_1number_1_1FormattedNumberRange.html">number::FormattedNumberRange</a> &amp;range, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const</td></tr> <tr class="memdesc:a2c0abd3c600c72c3ddd932f308450412"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given a formatted number range, returns the overall plural form of the range. <a href="classicu_1_1PluralRules.html#a2c0abd3c600c72c3ddd932f308450412">More...</a><br /></td></tr> <tr class="separator:a2c0abd3c600c72c3ddd932f308450412"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:aca3e2ff95381edb13563217ea373aeeb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#aca3e2ff95381edb13563217ea373aeeb">select</a> (const IFixedDecimal &amp;number) const</td></tr> <tr class="separator:aca3e2ff95381edb13563217ea373aeeb"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a724020b697ed12c5a0952002686ba4bc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a724020b697ed12c5a0952002686ba4bc">select</a> (const number::impl::UFormattedNumberRangeData *urange, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const</td></tr> <tr class="separator:a724020b697ed12c5a0952002686ba4bc"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a1bca6dcd52b4ea7084d9c68a06028c56"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1StringEnumeration.html">StringEnumeration</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a1bca6dcd52b4ea7084d9c68a06028c56">getKeywords</a> (<a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const</td></tr> <tr class="memdesc:a1bca6dcd52b4ea7084d9c68a06028c56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a list of all rule keywords used in this <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> object. <a href="classicu_1_1PluralRules.html#a1bca6dcd52b4ea7084d9c68a06028c56">More...</a><br /></td></tr> <tr class="separator:a1bca6dcd52b4ea7084d9c68a06028c56"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a6f73a4b7a787b93832c8c19cf66e8d5a"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a6f73a4b7a787b93832c8c19cf66e8d5a">getUniqueKeywordValue</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;keyword)</td></tr> <tr class="memdesc:a6f73a4b7a787b93832c8c19cf66e8d5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deprecated Function, does not return useful results. <a href="classicu_1_1PluralRules.html#a6f73a4b7a787b93832c8c19cf66e8d5a">More...</a><br /></td></tr> <tr class="separator:a6f73a4b7a787b93832c8c19cf66e8d5a"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:ac880a9ac428c7dbfcd52ec0c8a11c4ab"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#ac880a9ac428c7dbfcd52ec0c8a11c4ab">getAllKeywordValues</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;keyword, double *dest, int32_t destCapacity, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:ac880a9ac428c7dbfcd52ec0c8a11c4ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deprecated Function, does not produce useful results. <a href="classicu_1_1PluralRules.html#ac880a9ac428c7dbfcd52ec0c8a11c4ab">More...</a><br /></td></tr> <tr class="separator:ac880a9ac428c7dbfcd52ec0c8a11c4ab"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:ab20320b1f7ddc48f900712a9a88948a7"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#ab20320b1f7ddc48f900712a9a88948a7">getSamples</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;keyword, double *dest, int32_t destCapacity, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:ab20320b1f7ddc48f900712a9a88948a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns sample values for which <a class="el" href="classicu_1_1PluralRules.html#aa580f6f012d4167e7ac32c6fe273b00c" title="Given an integer, returns the keyword of the first rule that applies to the number.">select()</a> would return the keyword. <a href="classicu_1_1PluralRules.html#ab20320b1f7ddc48f900712a9a88948a7">More...</a><br /></td></tr> <tr class="separator:ab20320b1f7ddc48f900712a9a88948a7"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:ab97296809532852ed88b975319482ed9"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#ab97296809532852ed88b975319482ed9">getSamples</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;keyword, DecimalQuantity *dest, int32_t destCapacity, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:ab97296809532852ed88b975319482ed9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal-only function that returns DecimalQuantitys instead of doubles. <a href="classicu_1_1PluralRules.html#ab97296809532852ed88b975319482ed9">More...</a><br /></td></tr> <tr class="separator:ab97296809532852ed88b975319482ed9"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a4cddc6eef6354bb39fb2e9ebefc6157a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a4cddc6eef6354bb39fb2e9ebefc6157a">isKeyword</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;keyword) const</td></tr> <tr class="memdesc:a4cddc6eef6354bb39fb2e9ebefc6157a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the given keyword is defined in this <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> object. <a href="classicu_1_1PluralRules.html#a4cddc6eef6354bb39fb2e9ebefc6157a">More...</a><br /></td></tr> <tr class="separator:a4cddc6eef6354bb39fb2e9ebefc6157a"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a870a1b30d44337df274037efbceec6a6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a870a1b30d44337df274037efbceec6a6">getKeywordOther</a> () const</td></tr> <tr class="memdesc:a870a1b30d44337df274037efbceec6a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns keyword for default plural form. <a href="classicu_1_1PluralRules.html#a870a1b30d44337df274037efbceec6a6">More...</a><br /></td></tr> <tr class="separator:a870a1b30d44337df274037efbceec6a6"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a9b45c746e7d9ca64fc9dbcd994701eb4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a9b45c746e7d9ca64fc9dbcd994701eb4">getRules</a> () const</td></tr> <tr class="separator:a9b45c746e7d9ca64fc9dbcd994701eb4"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:aca902facb0d1ea29a1a1f8aa060c2661"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#aca902facb0d1ea29a1a1f8aa060c2661">operator==</a> (const <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;other) const</td></tr> <tr class="memdesc:aca902facb0d1ea29a1a1f8aa060c2661"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares the equality of two <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> objects. <a href="classicu_1_1PluralRules.html#aca902facb0d1ea29a1a1f8aa060c2661">More...</a><br /></td></tr> <tr class="separator:aca902facb0d1ea29a1a1f8aa060c2661"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:aba513b1d554580dafc7f9bafc559b4c5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#aba513b1d554580dafc7f9bafc559b4c5">operator!=</a> (const <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;other) const</td></tr> <tr class="memdesc:aba513b1d554580dafc7f9bafc559b4c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares the inequality of two <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> objects. <a href="classicu_1_1PluralRules.html#aba513b1d554580dafc7f9bafc559b4c5">More...</a><br /></td></tr> <tr class="separator:aba513b1d554580dafc7f9bafc559b4c5"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a2ebba248ab85e8711955097ef03e65a8"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a2ebba248ab85e8711955097ef03e65a8">getDynamicClassID</a> () const override</td></tr> <tr class="memdesc:a2ebba248ab85e8711955097ef03e65a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">ICU "poor man's RTTI", returns a UClassID for the actual class. <a href="classicu_1_1PluralRules.html#a2ebba248ab85e8711955097ef03e65a8">More...</a><br /></td></tr> <tr class="separator:a2ebba248ab85e8711955097ef03e65a8"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="inherit_header pub_methods_classicu_1_1UObject"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classicu_1_1UObject')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classicu_1_1UObject.html">icu::UObject</a></td></tr> <tr class="memitem:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1UObject.html#af10026497704f510d3d1f2eff50acb18">~UObject</a> ()</td></tr> <tr class="memdesc:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="classicu_1_1UObject.html#af10026497704f510d3d1f2eff50acb18">More...</a><br /></td></tr> <tr class="separator:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><td class="memSeparator" colspan="2">&#160;</td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a> Static Public Member Functions</h2></td></tr> <tr class="memitem:a441a6a1769272dca17e4af3c43fffcb2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a441a6a1769272dca17e4af3c43fffcb2">createRules</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;description, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:a441a6a1769272dca17e4af3c43fffcb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> from a description if it is parsable, otherwise returns nullptr. <a href="classicu_1_1PluralRules.html#a441a6a1769272dca17e4af3c43fffcb2">More...</a><br /></td></tr> <tr class="separator:a441a6a1769272dca17e4af3c43fffcb2"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a4859a720d5a9a68bc34e98c51ef485b8"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a4859a720d5a9a68bc34e98c51ef485b8">createDefaultRules</a> (<a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:a4859a720d5a9a68bc34e98c51ef485b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">The default rules that accept any number. <a href="classicu_1_1PluralRules.html#a4859a720d5a9a68bc34e98c51ef485b8">More...</a><br /></td></tr> <tr class="separator:a4859a720d5a9a68bc34e98c51ef485b8"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a2eea7bd79c325a93386b86356c4c0847"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a2eea7bd79c325a93386b86356c4c0847">forLocale</a> (const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;locale, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:a2eea7bd79c325a93386b86356c4c0847"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the predefined cardinal-number <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> for a given locale. <a href="classicu_1_1PluralRules.html#a2eea7bd79c325a93386b86356c4c0847">More...</a><br /></td></tr> <tr class="separator:a2eea7bd79c325a93386b86356c4c0847"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:aa2339320cb3578b7734da68502d59e30"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#aa2339320cb3578b7734da68502d59e30">forLocale</a> (const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;locale, <a class="el" href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a> type, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:aa2339320cb3578b7734da68502d59e30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the predefined <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> for a given locale and the plural type. <a href="classicu_1_1PluralRules.html#aa2339320cb3578b7734da68502d59e30">More...</a><br /></td></tr> <tr class="separator:aa2339320cb3578b7734da68502d59e30"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a2f46bf2cc839e8faf97e7a29dec528df"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classicu_1_1StringEnumeration.html">StringEnumeration</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a2f46bf2cc839e8faf97e7a29dec528df">getAvailableLocales</a> (<a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:a2f46bf2cc839e8faf97e7a29dec528df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a <a class="el" href="classicu_1_1StringEnumeration.html" title="Base class for &#39;pure&#39; C++ implementations of uenum api.">StringEnumeration</a> over the locales for which there is plurals data. <a href="classicu_1_1PluralRules.html#a2f46bf2cc839e8faf97e7a29dec528df">More...</a><br /></td></tr> <tr class="separator:a2f46bf2cc839e8faf97e7a29dec528df"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a367e63364bb0785089e6adb6dd02d2ff"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a367e63364bb0785089e6adb6dd02d2ff">internalForLocale</a> (const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;locale, <a class="el" href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a> type, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:a367e63364bb0785089e6adb6dd02d2ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">For ICU use only. <a href="classicu_1_1PluralRules.html#a367e63364bb0785089e6adb6dd02d2ff">More...</a><br /></td></tr> <tr class="separator:a367e63364bb0785089e6adb6dd02d2ff"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:a9caef6e34123c38e9b3667d20d0fb7ac"><td class="memItemLeft" align="right" valign="top">static const SharedPluralRules *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#a9caef6e34123c38e9b3667d20d0fb7ac">createSharedInstance</a> (const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;locale, <a class="el" href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a> type, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr> <tr class="memdesc:a9caef6e34123c38e9b3667d20d0fb7ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">For ICU use only. <a href="classicu_1_1PluralRules.html#a9caef6e34123c38e9b3667d20d0fb7ac">More...</a><br /></td></tr> <tr class="separator:a9caef6e34123c38e9b3667d20d0fb7ac"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="memitem:afc05ac2536e88cf357ac94c84fca3976"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1PluralRules.html#afc05ac2536e88cf357ac94c84fca3976">getStaticClassID</a> ()</td></tr> <tr class="memdesc:afc05ac2536e88cf357ac94c84fca3976"><td class="mdescLeft">&#160;</td><td class="mdescRight">ICU "poor man's RTTI", returns a UClassID for this class. <a href="classicu_1_1PluralRules.html#afc05ac2536e88cf357ac94c84fca3976">More...</a><br /></td></tr> <tr class="separator:afc05ac2536e88cf357ac94c84fca3976"><td class="memSeparator" colspan="2">&#160;</td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a> Friends</h2></td></tr> <tr class="memitem:a92891fa2064833da14ca335f2f82a9b0"><td class="memItemLeft" align="right" valign="top"><a id="a92891fa2064833da14ca335f2f82a9b0"></a> class&#160;</td><td class="memItemRight" valign="bottom"><b>PluralRuleParser</b></td></tr> <tr class="separator:a92891fa2064833da14ca335f2f82a9b0"><td class="memSeparator" colspan="2">&#160;</td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Defines rules for mapping non-negative numeric values onto a small set of keywords. </p> <p>Rules are constructed from a text description, consisting of a series of keywords and conditions. The <a class="el" href="classicu_1_1PluralRules.html#aa580f6f012d4167e7ac32c6fe273b00c">select</a> method examines each condition in order and returns the keyword for the first condition that matches the number. If none match, default rule(other) is returned.</p> <p>For more information, details, and tips for writing rules, see the LDML spec, Part 3.5 Language Plural Rules: <a href="https://www.unicode.org/reports/tr35/tr35-numbers.html#Language_Plural_Rules">https://www.unicode.org/reports/tr35/tr35-numbers.html#Language_Plural_Rules</a></p> <p>Examples:</p><pre> "one: n is 1; few: n in 2..4"</pre><p> This defines two rules, for 'one' and 'few'. The condition for 'one' is "n is 1" which means that the number must be equal to 1 for this condition to pass. The condition for 'few' is "n in 2..4" which means that the number must be between 2 and 4 inclusive for this condition to pass. All other numbers are assigned the keyword "other" by the default rule. </p> <pre> "zero: n is 0; one: n is 1; zero: n mod 100 in 1..19"</pre><p> This illustrates that the same keyword can be defined multiple times. Each rule is examined in order, and the first keyword whose condition passes is the one returned. Also notes that a modulus is applied to n in the last rule. Thus its condition holds for 119, 219, 319... </p> <pre> "one: n is 1; few: n mod 10 in 2..4 and n mod 100 not in 12..14"</pre><p> This illustrates conjunction and negation. The condition for 'few' has two parts, both of which must be met: "n mod 10 in 2..4" and "n mod 100 not in 12..14". The first part applies a modulus to n before the test as in the previous example. The second part applies a different modulus and also uses negation, thus it matches all numbers <em>not</em> in 12, 13, 14, 112, 113, 114, 212, 213, 214... </p> <p>Syntax:</p><pre> <div class="fragment"><div class="line">rules = rule (<span class="charliteral">&#39;;&#39;</span> rule)*</div> <div class="line">rule = keyword <span class="charliteral">&#39;:&#39;</span> condition</div> <div class="line">keyword = &lt;identifier&gt;</div> <div class="line">condition = and_condition (<span class="stringliteral">&#39;or&#39;</span> and_condition)*</div> <div class="line">and_condition = relation (<span class="stringliteral">&#39;and&#39;</span> relation)*</div> <div class="line">relation = is_relation | in_relation | within_relation | <span class="charliteral">&#39;n&#39;</span> &lt;EOL&gt;</div> <div class="line">is_relation = expr <span class="stringliteral">&#39;is&#39;</span> (<span class="stringliteral">&#39;not&#39;</span>)? value</div> <div class="line">in_relation = expr (<span class="stringliteral">&#39;not&#39;</span>)? <span class="stringliteral">&#39;in&#39;</span> range_list</div> <div class="line">within_relation = expr (<span class="stringliteral">&#39;not&#39;</span>)? <span class="stringliteral">&#39;within&#39;</span> range</div> <div class="line">expr = (<span class="charliteral">&#39;n&#39;</span> | <span class="charliteral">&#39;i&#39;</span> | <span class="charliteral">&#39;f&#39;</span> | <span class="charliteral">&#39;v&#39;</span> | <span class="charliteral">&#39;j&#39;</span>) (<span class="stringliteral">&#39;mod&#39;</span> value)?</div> <div class="line">range_list = (range | value) (<span class="charliteral">&#39;,&#39;</span> range_list)*</div> <div class="line">value = digit+ (<span class="charliteral">&#39;.&#39;</span> digit+)?</div> <div class="line">digit = 0|1|2|3|4|5|6|7|8|9</div> <div class="line">range = value<span class="stringliteral">&#39;..&#39;</span>value</div> </div><!-- fragment --> </pre><p>&lt;/p</p><blockquote class="doxtable"> <p></p> </blockquote> <p>The i, f, and v values are defined as follows: </p> <ul> <li> i to be the integer digits. </li> <li> f to be the visible fractional digits, as an integer. </li> <li> v to be the number of visible fraction digits. </li> <li> j is defined to only match integers. That is j is 3 fails if v != 0 (eg for 3.1 or 3.0). </li> </ul> <p>Examples are in the following table: </p> <table border="1" style="border-collapse:collapse"> <tr> <th>n </th><th>i </th><th>f </th><th>v </th></tr> <tr> <td>1.0 </td><td>1 </td><td align="right">0 </td><td>1 </td></tr> <tr> <td>1.00 </td><td>1 </td><td align="right">0 </td><td>2 </td></tr> <tr> <td>1.3 </td><td>1 </td><td align="right">3 </td><td>1 </td></tr> <tr> <td>1.03 </td><td>1 </td><td align="right">3 </td><td>2 </td></tr> <tr> <td>1.23 </td><td>1 </td><td align="right">23 </td><td>2 </td></tr> </table> <p>The difference between 'in' and 'within' is that 'in' only includes integers in the specified range, while 'within' includes all values. Using 'within' with a range_list consisting entirely of values is the same as using 'in' (it's not an error). </p> <p>An "identifier" is a sequence of characters that do not have the Unicode Pattern_Syntax or Pattern_White_Space properties. </p> <p>The difference between 'in' and 'within' is that 'in' only includes integers in the specified range, while 'within' includes all values. Using 'within' with a range_list consisting entirely of values is the same as using 'in' (it's not an error). </p> <p>Keywords could be defined by users or from ICU locale data. There are 6 predefined values in ICU - 'zero', 'one', 'two', 'few', 'many' and 'other'. Callers need to check the value of keyword returned by <a class="el" href="classicu_1_1PluralRules.html#aa580f6f012d4167e7ac32c6fe273b00c">select</a> method. </p> <p>Examples:</p><pre> <a class="el" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> keyword = pl-&gt;select(number); if (keyword== <a class="el" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>("one") { ... } else if ( ... ) </pre><p> <b>Note:</b><br /> </p> <p>ICU defines plural rules for many locales based on CLDR <em>Language Plural Rules</em>. For these predefined rules, see CLDR page at <a href="https://unicode-org.github.io/cldr-staging/charts/latest/supplemental/language_plural_rules.html">https://unicode-org.github.io/cldr-staging/charts/latest/supplemental/language_plural_rules.html</a> </p> <p class="definition">Definition at line <a class="el" href="plurrule_8h_source.html#l00212">212</a> of file <a class="el" href="plurrule_8h_source.html">plurrule.h</a>.</p> </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2> <a id="a52405d678e0c1c8120f95b15e96842fb"></a> <h2 class="memtitle"><span class="permalink"><a href="#a52405d678e0c1c8120f95b15e96842fb">&#9670;&nbsp;</a></span>PluralRules() <span class="overload">[1/2]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">icu::PluralRules::PluralRules </td> <td>(</td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Constructor. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">status</td><td>Output param set to success/failure code on exit, which must not indicate a failure before the function call.</td></tr> </table> </dd> </dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005171">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="a63d6658aa865e1a118a0d07f4ce8da76"></a> <h2 class="memtitle"><span class="permalink"><a href="#a63d6658aa865e1a118a0d07f4ce8da76">&#9670;&nbsp;</a></span>PluralRules() <span class="overload">[2/2]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">icu::PluralRules::PluralRules </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;&#160;</td> <td class="paramname"><em>other</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Copy constructor. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005172">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="a7b3290ba522285fbb1ff6382b7d2ac95"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7b3290ba522285fbb1ff6382b7d2ac95">&#9670;&nbsp;</a></span>~PluralRules()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual icu::PluralRules::~PluralRules </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Destructor. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005173">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a id="a7e0a1025ba0e1e8b0be9ea3d6f3bfd94"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7e0a1025ba0e1e8b0be9ea3d6f3bfd94">&#9670;&nbsp;</a></span>clone()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1PluralRules.html">PluralRules</a>* icu::PluralRules::clone </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Clone. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005174">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="a4859a720d5a9a68bc34e98c51ef485b8"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4859a720d5a9a68bc34e98c51ef485b8">&#9670;&nbsp;</a></span>createDefaultRules()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a>* icu::PluralRules::createDefaultRules </td> <td>(</td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>The default rules that accept any number. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">status</td><td>Output param set to success/failure code on exit, which must not indicate a failure before the function call. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>new <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> pointer. nullptr if there is an error. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005177">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="a441a6a1769272dca17e4af3c43fffcb2"></a> <h2 class="memtitle"><span class="permalink"><a href="#a441a6a1769272dca17e4af3c43fffcb2">&#9670;&nbsp;</a></span>createRules()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a>* icu::PluralRules::createRules </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td> <td class="paramname"><em>description</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Creates a <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> from a description if it is parsable, otherwise returns nullptr. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">description</td><td>rule description </td></tr> <tr><td class="paramname">status</td><td>Output param set to success/failure code on exit, which must not indicate a failure before the function call. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>new <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> pointer. nullptr if there is an error. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005176">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="a9caef6e34123c38e9b3667d20d0fb7ac"></a> <h2 class="memtitle"><span class="permalink"><a href="#a9caef6e34123c38e9b3667d20d0fb7ac">&#9670;&nbsp;</a></span>createSharedInstance()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static const SharedPluralRules* icu::PluralRules::createSharedInstance </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;&#160;</td> <td class="paramname"><em>locale</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a>&#160;</td> <td class="paramname"><em>type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>For ICU use only. </p> <p>Returns handle to the shared, cached <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> instance. Caller must call removeRef() on returned value once it is done with the shared instance. </p><dl class="internal"><dt><b><a class="el" href="internal.html#_internal000808">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. </dd></dl> </div> </div> <a id="a2eea7bd79c325a93386b86356c4c0847"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2eea7bd79c325a93386b86356c4c0847">&#9670;&nbsp;</a></span>forLocale() <span class="overload">[1/2]</span></h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a>* icu::PluralRules::forLocale </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;&#160;</td> <td class="paramname"><em>locale</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Provides access to the predefined cardinal-number <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> for a given locale. </p> <p>Same as forLocale(locale, UPLURAL_TYPE_CARDINAL, status).</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">locale</td><td>The locale for which a <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> object is returned. </td></tr> <tr><td class="paramname">status</td><td>Output param set to success/failure code on exit, which must not indicate a failure before the function call. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The predefined <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> object pointer for this locale. If there's no predefined rules for this locale, the rules for the closest parent in the locale hierarchy that has one will be returned. The final fallback always returns the default 'other' rules. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005178">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="aa2339320cb3578b7734da68502d59e30"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa2339320cb3578b7734da68502d59e30">&#9670;&nbsp;</a></span>forLocale() <span class="overload">[2/2]</span></h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a>* icu::PluralRules::forLocale </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;&#160;</td> <td class="paramname"><em>locale</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a>&#160;</td> <td class="paramname"><em>type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Provides access to the predefined <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> for a given locale and the plural type. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">locale</td><td>The locale for which a <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> object is returned. </td></tr> <tr><td class="paramname">type</td><td>The plural type (e.g., cardinal or ordinal). </td></tr> <tr><td class="paramname">status</td><td>Output param set to success/failure code on exit, which must not indicate a failure before the function call. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The predefined <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> object pointer for this locale. If there's no predefined rules for this locale, the rules for the closest parent in the locale hierarchy that has one will be returned. The final fallback always returns the default 'other' rules. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005179">Stable:</a></b></dt><dd>ICU 50 </dd></dl> </div> </div> <a id="ac880a9ac428c7dbfcd52ec0c8a11c4ab"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac880a9ac428c7dbfcd52ec0c8a11c4ab">&#9670;&nbsp;</a></span>getAllKeywordValues()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int32_t icu::PluralRules::getAllKeywordValues </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td> <td class="paramname"><em>keyword</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double *&#160;</td> <td class="paramname"><em>dest</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int32_t&#160;</td> <td class="paramname"><em>destCapacity</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Deprecated Function, does not produce useful results. </p> <p>Originally intended to return all the values for which <a class="el" href="classicu_1_1PluralRules.html#aa580f6f012d4167e7ac32c6fe273b00c" title="Given an integer, returns the keyword of the first rule that applies to the number.">select()</a> would return the keyword. If the keyword is unknown, returns no values, but this is not an error. If the number of values is unlimited, returns no values and -1 as the count.</p> <p>The number of returned values is typically small.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">keyword</td><td>The keyword. </td></tr> <tr><td class="paramname">dest</td><td>Array into which to put the returned values. May be nullptr if destCapacity is 0. </td></tr> <tr><td class="paramname">destCapacity</td><td>The capacity of the array, must be at least 0. </td></tr> <tr><td class="paramname">status</td><td>The error code. Deprecated function, always sets U_UNSUPPORTED_ERROR. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The count of values available, or -1. This count can be larger than destCapacity, but no more than destCapacity values will be written. </dd></dl> <dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000680">Deprecated:</a></b></dt><dd>ICU 55 </dd></dl> </div> </div> <a id="a2f46bf2cc839e8faf97e7a29dec528df"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2f46bf2cc839e8faf97e7a29dec528df">&#9670;&nbsp;</a></span>getAvailableLocales()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classicu_1_1StringEnumeration.html">StringEnumeration</a>* icu::PluralRules::getAvailableLocales </td> <td>(</td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Return a <a class="el" href="classicu_1_1StringEnumeration.html" title="Base class for &#39;pure&#39; C++ implementations of uenum api.">StringEnumeration</a> over the locales for which there is plurals data. </p> <dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="classicu_1_1StringEnumeration.html" title="Base class for &#39;pure&#39; C++ implementations of uenum api.">StringEnumeration</a> over the locales available. </dd></dl> <dl class="internal"><dt><b><a class="el" href="internal.html#_internal000806">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. </dd></dl> </div> </div> <a id="a2ebba248ab85e8711955097ef03e65a8"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2ebba248ab85e8711955097ef03e65a8">&#9670;&nbsp;</a></span>getDynamicClassID()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> icu::PluralRules::getDynamicClassID </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>ICU "poor man's RTTI", returns a UClassID for the actual class. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005191">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> <p>Reimplemented from <a class="el" href="classicu_1_1UObject.html#aca1169c4978c52ce2b76eda104e9a214">icu::UObject</a>.</p> </div> </div> <a id="a870a1b30d44337df274037efbceec6a6"></a> <h2 class="memtitle"><span class="permalink"><a href="#a870a1b30d44337df274037efbceec6a6">&#9670;&nbsp;</a></span>getKeywordOther()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::PluralRules::getKeywordOther </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Returns keyword for default plural form. </p> <dl class="section return"><dt>Returns</dt><dd>keyword for default plural form. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005187">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="a1bca6dcd52b4ea7084d9c68a06028c56"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1bca6dcd52b4ea7084d9c68a06028c56">&#9670;&nbsp;</a></span>getKeywords()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1StringEnumeration.html">StringEnumeration</a>* icu::PluralRules::getKeywords </td> <td>(</td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Returns a list of all rule keywords used in this <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> object. </p> <p>The rule 'other' is always present by default.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">status</td><td>Output param set to success/failure code on exit, which must not indicate a failure before the function call. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classicu_1_1StringEnumeration.html" title="Base class for &#39;pure&#39; C++ implementations of uenum api.">StringEnumeration</a> with the keywords. The caller must delete the object. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005184">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="a9b45c746e7d9ca64fc9dbcd994701eb4"></a> <h2 class="memtitle"><span class="permalink"><a href="#a9b45c746e7d9ca64fc9dbcd994701eb4">&#9670;&nbsp;</a></span>getRules()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::PluralRules::getRules </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <dl class="internal"><dt><b><a class="el" href="internal.html#_internal000812">Internal:</a></b></dt><dd>Do not use.</dd></dl> <p>This API is for internal use only. </p> </div> </div> <a id="ab97296809532852ed88b975319482ed9"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab97296809532852ed88b975319482ed9">&#9670;&nbsp;</a></span>getSamples() <span class="overload">[1/2]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int32_t icu::PluralRules::getSamples </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td> <td class="paramname"><em>keyword</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">DecimalQuantity *&#160;</td> <td class="paramname"><em>dest</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int32_t&#160;</td> <td class="paramname"><em>destCapacity</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Internal-only function that returns DecimalQuantitys instead of doubles. </p> <p>Returns sample values for which <a class="el" href="classicu_1_1PluralRules.html#aa580f6f012d4167e7ac32c6fe273b00c" title="Given an integer, returns the keyword of the first rule that applies to the number.">select()</a> would return the keyword. If the keyword is unknown, returns no values, but this is not an error.</p> <p>The number of returned values is typically small.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">keyword</td><td>The keyword. </td></tr> <tr><td class="paramname">dest</td><td>Array into which to put the returned values. May be nullptr if destCapacity is 0. </td></tr> <tr><td class="paramname">destCapacity</td><td>The capacity of the array, must be at least 0. </td></tr> <tr><td class="paramname">status</td><td>The error code. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The count of values written. If more than destCapacity samples are available, then only destCapacity are written, and destCapacity is returned as the count, rather than setting a U_BUFFER_OVERFLOW_ERROR. (The actual number of keyword values could be unlimited.) </dd></dl> <dl class="internal"><dt><b><a class="el" href="internal.html#_internal000811">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. </dd></dl> </div> </div> <a id="ab20320b1f7ddc48f900712a9a88948a7"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab20320b1f7ddc48f900712a9a88948a7">&#9670;&nbsp;</a></span>getSamples() <span class="overload">[2/2]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int32_t icu::PluralRules::getSamples </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td> <td class="paramname"><em>keyword</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double *&#160;</td> <td class="paramname"><em>dest</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int32_t&#160;</td> <td class="paramname"><em>destCapacity</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Returns sample values for which <a class="el" href="classicu_1_1PluralRules.html#aa580f6f012d4167e7ac32c6fe273b00c" title="Given an integer, returns the keyword of the first rule that applies to the number.">select()</a> would return the keyword. </p> <p>If the keyword is unknown, returns no values, but this is not an error.</p> <p>The number of returned values is typically small.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">keyword</td><td>The keyword. </td></tr> <tr><td class="paramname">dest</td><td>Array into which to put the returned values. May be nullptr if destCapacity is 0. </td></tr> <tr><td class="paramname">destCapacity</td><td>The capacity of the array, must be at least 0. </td></tr> <tr><td class="paramname">status</td><td>The error code. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The count of values written. If more than destCapacity samples are available, then only destCapacity are written, and destCapacity is returned as the count, rather than setting a U_BUFFER_OVERFLOW_ERROR. (The actual number of keyword values could be unlimited.) </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005185">Stable:</a></b></dt><dd>ICU 4.8 </dd></dl> </div> </div> <a id="afc05ac2536e88cf357ac94c84fca3976"></a> <h2 class="memtitle"><span class="permalink"><a href="#afc05ac2536e88cf357ac94c84fca3976">&#9670;&nbsp;</a></span>getStaticClassID()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> icu::PluralRules::getStaticClassID </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>ICU "poor man's RTTI", returns a UClassID for this class. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005190">Stable:</a></b></dt><dd>ICU 4.0</dd></dl> </div> </div> <a id="a6f73a4b7a787b93832c8c19cf66e8d5a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a6f73a4b7a787b93832c8c19cf66e8d5a">&#9670;&nbsp;</a></span>getUniqueKeywordValue()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double icu::PluralRules::getUniqueKeywordValue </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td> <td class="paramname"><em>keyword</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Deprecated Function, does not return useful results. </p> <p>Originally intended to return a unique value for this keyword if it exists, else the constant UPLRULES_NO_UNIQUE_VALUE.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">keyword</td><td>The keyword. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Stub deprecated function returns UPLRULES_NO_UNIQUE_VALUE always. </dd></dl> <dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000679">Deprecated:</a></b></dt><dd>ICU 55 </dd></dl> </div> </div> <a id="a367e63364bb0785089e6adb6dd02d2ff"></a> <h2 class="memtitle"><span class="permalink"><a href="#a367e63364bb0785089e6adb6dd02d2ff">&#9670;&nbsp;</a></span>internalForLocale()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a>* icu::PluralRules::internalForLocale </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;&#160;</td> <td class="paramname"><em>locale</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a>&#160;</td> <td class="paramname"><em>type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>For ICU use only. </p> <p>creates a SharedPluralRules object </p><dl class="internal"><dt><b><a class="el" href="internal.html#_internal000807">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. </dd></dl> </div> </div> <a id="a4cddc6eef6354bb39fb2e9ebefc6157a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4cddc6eef6354bb39fb2e9ebefc6157a">&#9670;&nbsp;</a></span>isKeyword()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> icu::PluralRules::isKeyword </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td> <td class="paramname"><em>keyword</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Returns true if the given keyword is defined in this <code><a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a></code> object. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">keyword</td><td>the input keyword. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>true if the input keyword is defined. Otherwise, return false. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005186">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="aba513b1d554580dafc7f9bafc559b4c5"></a> <h2 class="memtitle"><span class="permalink"><a href="#aba513b1d554580dafc7f9bafc559b4c5">&#9670;&nbsp;</a></span>operator!=()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool icu::PluralRules::operator!= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;&#160;</td> <td class="paramname"><em>other</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Compares the inequality of two <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> objects. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">other</td><td>The <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> object to be compared with. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>true if the given <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> is not the same as this <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a>; false otherwise. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005189">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="plurrule_8h_source.html#l00547">547</a> of file <a class="el" href="plurrule_8h_source.html">plurrule.h</a>.</p> <p class="reference">References <a class="el" href="namespaceicu.html#a1c2f6ca43e636f38d1a3291eb851e9f0">icu::operator==()</a>.</p> </div> </div> <a id="a131ad396652cc2cd03308547f242ea5e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a131ad396652cc2cd03308547f242ea5e">&#9670;&nbsp;</a></span>operator=()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1PluralRules.html">PluralRules</a>&amp; icu::PluralRules::operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;&#160;</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Assignment operator. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005175">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="aca902facb0d1ea29a1a1f8aa060c2661"></a> <h2 class="memtitle"><span class="permalink"><a href="#aca902facb0d1ea29a1a1f8aa060c2661">&#9670;&nbsp;</a></span>operator==()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual bool icu::PluralRules::operator== </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> &amp;&#160;</td> <td class="paramname"><em>other</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Compares the equality of two <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> objects. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">other</td><td>The other <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> object to be compared with. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>true if the given <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> is the same as this <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a>; false otherwise. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005188">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="aca3e2ff95381edb13563217ea373aeeb"></a> <h2 class="memtitle"><span class="permalink"><a href="#aca3e2ff95381edb13563217ea373aeeb">&#9670;&nbsp;</a></span>select() <span class="overload">[1/6]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::PluralRules::select </td> <td>(</td> <td class="paramtype">const IFixedDecimal &amp;&#160;</td> <td class="paramname"><em>number</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <dl class="internal"><dt><b><a class="el" href="internal.html#_internal000809">Internal:</a></b></dt><dd>Do not use.</dd></dl> <p>This API is for internal use only. </p> </div> </div> <a id="a1e3b5db553ade93319e7ba98503283c3"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1e3b5db553ade93319e7ba98503283c3">&#9670;&nbsp;</a></span>select() <span class="overload">[2/6]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::PluralRules::select </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1number_1_1FormattedNumber.html">number::FormattedNumber</a> &amp;&#160;</td> <td class="paramname"><em>number</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div><div class="memdoc"> <p>Given a formatted number, returns the keyword of the first rule that applies to the number. </p> <p>This function can be used with isKeyword* functions to determine the keyword for default plural rules.</p> <p>A FormattedNumber allows you to specify an exponent or trailing zeros, which can affect the plural category. To get a FormattedNumber, see NumberFormatter.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">number</td><td>The number for which the rule has to be determined. </td></tr> <tr><td class="paramname">status</td><td>Set if an error occurs while selecting plural keyword. This could happen if the FormattedNumber is invalid. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The keyword of the selected rule. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005182">Stable:</a></b></dt><dd>ICU 64 </dd></dl> </div> </div> <a id="a2c0abd3c600c72c3ddd932f308450412"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2c0abd3c600c72c3ddd932f308450412">&#9670;&nbsp;</a></span>select() <span class="overload">[3/6]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::PluralRules::select </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1number_1_1FormattedNumberRange.html">number::FormattedNumberRange</a> &amp;&#160;</td> <td class="paramname"><em>range</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div><div class="memdoc"> <p>Given a formatted number range, returns the overall plural form of the range. </p> <p>For example, "3-5" returns "other" in English.</p> <p>To get a FormattedNumberRange, see NumberRangeFormatter.</p> <p>This method only works if <a class="el" href="classicu_1_1PluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a> was created with a locale. If it was created from <a class="el" href="classicu_1_1PluralRules.html#a441a6a1769272dca17e4af3c43fffcb2" title="Creates a PluralRules from a description if it is parsable, otherwise returns nullptr.">PluralRules::createRules()</a>, this method sets status code U_UNSUPPORTED_ERROR.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">range</td><td>The number range onto which the rules will be applied. </td></tr> <tr><td class="paramname">status</td><td>Set if an error occurs while selecting plural keyword. This could happen if the FormattedNumberRange is invalid, or if plural ranges data is unavailable. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The keyword of the selected rule. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005183">Stable:</a></b></dt><dd>ICU 68 </dd></dl> </div> </div> <a id="a724020b697ed12c5a0952002686ba4bc"></a> <h2 class="memtitle"><span class="permalink"><a href="#a724020b697ed12c5a0952002686ba4bc">&#9670;&nbsp;</a></span>select() <span class="overload">[4/6]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::PluralRules::select </td> <td>(</td> <td class="paramtype">const number::impl::UFormattedNumberRangeData *&#160;</td> <td class="paramname"><em>urange</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td> <td class="paramname"><em>status</em>&#160;</td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div><div class="memdoc"> <dl class="internal"><dt><b><a class="el" href="internal.html#_internal000810">Internal:</a></b></dt><dd>Do not use.</dd></dl> <p>This API is for internal use only. </p> </div> </div> <a id="a838daac203377d5a61474fbc25529b3d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a838daac203377d5a61474fbc25529b3d">&#9670;&nbsp;</a></span>select() <span class="overload">[5/6]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::PluralRules::select </td> <td>(</td> <td class="paramtype">double&#160;</td> <td class="paramname"><em>number</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Given a floating-point number, returns the keyword of the first rule that applies to the number. </p> <p>This function can be used with isKeyword* functions to determine the keyword for default plural rules.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">number</td><td>The number for which the rule has to be determined. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The keyword of the selected rule. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005181">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <a id="aa580f6f012d4167e7ac32c6fe273b00c"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa580f6f012d4167e7ac32c6fe273b00c">&#9670;&nbsp;</a></span>select() <span class="overload">[6/6]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::PluralRules::select </td> <td>(</td> <td class="paramtype">int32_t&#160;</td> <td class="paramname"><em>number</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Given an integer, returns the keyword of the first rule that applies to the number. </p> <p>This function can be used with isKeyword* functions to determine the keyword for default plural rules.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">number</td><td>The number for which the rule has to be determined. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The keyword of the selected rule. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable005180">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>i18n/unicode/<a class="el" href="plurrule_8h_source.html">plurrule.h</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </small></address> </body> </html>