@@ -368,8 +368,7 @@ mod tests {
368368 name : & ' static str ,
369369 expected_hex_checksum : & ' static str ,
370370 words : fn ( ) -> & ' static [ & ' static str ; 2048 ] ,
371- word_of : fn ( usize ) -> & ' static str ,
372- index_of : fn ( & str ) -> Option < usize > ,
371+ lang : AnyLanguage ,
373372 }
374373
375374 let mut cases: Vec < Case > = Vec :: new ( ) ;
@@ -378,89 +377,79 @@ mod tests {
378377 name : "english" ,
379378 expected_hex_checksum : "2f5eed53a4727b4bf8880d8f3f199efc90e58503646d9ff8eff3a2ed3b24dbda" ,
380379 words : English :: words,
381- word_of : <English as Language >:: word_of,
382- index_of : <English as Language >:: index_of,
380+ lang : AnyLanguage :: of :: < English > ( ) ,
383381 } ) ;
384382
385383 #[ cfg( feature = "chinese-simplified" ) ]
386384 cases. push ( Case {
387385 name : "chinese-simplified" ,
388386 expected_hex_checksum : "5c5942792bd8340cb8b27cd592f1015edf56a8c5b26276ee18a482428e7c5726" ,
389387 words : ChineseSimplified :: words,
390- word_of : <ChineseSimplified as Language >:: word_of,
391- index_of : <ChineseSimplified as Language >:: index_of,
388+ lang : AnyLanguage :: of :: < ChineseSimplified > ( ) ,
392389 } ) ;
393390
394391 #[ cfg( feature = "chinese-traditional" ) ]
395392 cases. push ( Case {
396393 name : "chinese-traditional" ,
397394 expected_hex_checksum : "417b26b3d8500a4ae3d59717d7011952db6fc2fb84b807f3f94ac734e89c1b5f" ,
398395 words : ChineseTraditional :: words,
399- word_of : <ChineseTraditional as Language >:: word_of,
400- index_of : <ChineseTraditional as Language >:: index_of,
396+ lang : AnyLanguage :: of :: < ChineseTraditional > ( ) ,
401397 } ) ;
402398
403399 #[ cfg( feature = "czech" ) ]
404400 cases. push ( Case {
405401 name : "czech" ,
406402 expected_hex_checksum : "7e80e161c3e93d9554c2efb78d4e3cebf8fc727e9c52e03b83b94406bdcc95fc" ,
407403 words : Czech :: words,
408- word_of : <Czech as Language >:: word_of,
409- index_of : <Czech as Language >:: index_of,
404+ lang : AnyLanguage :: of :: < Czech > ( ) ,
410405 } ) ;
411406
412407 #[ cfg( feature = "french" ) ]
413408 cases. push ( Case {
414409 name : "french" ,
415410 expected_hex_checksum : "ebc3959ab7801a1df6bac4fa7d970652f1df76b683cd2f4003c941c63d517e59" ,
416411 words : French :: words,
417- word_of : <French as Language >:: word_of,
418- index_of : <French as Language >:: index_of,
412+ lang : AnyLanguage :: of :: < French > ( ) ,
419413 } ) ;
420414
421415 #[ cfg( feature = "italian" ) ]
422416 cases. push ( Case {
423417 name : "italian" ,
424418 expected_hex_checksum : "d392c49fdb700a24cd1fceb237c1f65dcc128f6b34a8aacb58b59384b5c648c2" ,
425419 words : Italian :: words,
426- word_of : <Italian as Language >:: word_of,
427- index_of : <Italian as Language >:: index_of,
420+ lang : AnyLanguage :: of :: < Italian > ( ) ,
428421 } ) ;
429422
430423 #[ cfg( feature = "japanese" ) ]
431424 cases. push ( Case {
432425 name : "japanese" ,
433426 expected_hex_checksum : "2eed0aef492291e061633d7ad8117f1a2b03eb80a29d0e4e3117ac2528d05ffd" ,
434427 words : Japanese :: words,
435- word_of : <Japanese as Language >:: word_of,
436- index_of : <Japanese as Language >:: index_of,
428+ lang : AnyLanguage :: of :: < Japanese > ( ) ,
437429 } ) ;
438430
439431 #[ cfg( feature = "korean" ) ]
440432 cases. push ( Case {
441433 name : "korean" ,
442434 expected_hex_checksum : "9e95f86c167de88f450f0aaf89e87f6624a57f973c67b516e338e8e8b8897f60" ,
443435 words : Korean :: words,
444- word_of : <Korean as Language >:: word_of,
445- index_of : <Korean as Language >:: index_of,
436+ lang : AnyLanguage :: of :: < Korean > ( ) ,
446437 } ) ;
447438
448439 #[ cfg( feature = "portuguese" ) ]
449440 cases. push ( Case {
450441 name : "portuguese" ,
451442 expected_hex_checksum : "2685e9c194c82ae67e10ba59d9ea5345a23dc093e92276fc5361f6667d79cd3f" ,
452443 words : Portuguese :: words,
453- word_of : <Portuguese as Language >:: word_of,
454- index_of : <Portuguese as Language >:: index_of,
444+ lang : AnyLanguage :: of :: < Portuguese > ( ) ,
455445 } ) ;
456446
457447 #[ cfg( feature = "spanish" ) ]
458448 cases. push ( Case {
459449 name : "spanish" ,
460450 expected_hex_checksum : "46846a5a0139d1e3cb77293e521c2865f7bcdb82c44e8d0a06a2cd0ecba48c0b" ,
461451 words : Spanish :: words,
462- word_of : <Spanish as Language >:: word_of,
463- index_of : <Spanish as Language >:: index_of,
452+ lang : AnyLanguage :: of :: < Spanish > ( ) ,
464453 } ) ;
465454
466455 for case in cases {
@@ -470,8 +459,8 @@ mod tests {
470459 let actual_hex_checksum = calculate_checksum ( case. name , words) ;
471460
472461 for ( i, & word) in words. iter ( ) . enumerate ( ) {
473- assert_eq ! ( ( case. word_of) ( i) , word) ;
474- assert_eq ! ( ( case. index_of) ( word) , Some ( i) ) ;
462+ assert_eq ! ( case. lang . word_of( i) , word) ;
463+ assert_eq ! ( case. lang . index_of( word) , Some ( i) ) ;
475464 }
476465
477466 assert_eq ! (
0 commit comments