рдЬрдВрдЧ 1.42 рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд░рд┐рд▓реАрдЬ

рдкреНрд░рдХрд╛рд╢рд┐рдд рд╕рд┐рд╕реНрдЯрдо рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд░рд┐рд▓реАрдЬрд╝ рдЬрдВрдЧ 1.42, рдореЛрдЬрд╝рд┐рд▓рд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдкрд┐рддред рднрд╛рд╖рд╛ рдореЗрдореЛрд░реА рд╕реБрд░рдХреНрд╖рд╛ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреА рд╣реИ, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдореЗрдореЛрд░реА рдкреНрд░рдмрдВрдзрди рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ, рдФрд░ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдЙрдЪреНрдЪ рдХрд╛рд░реНрдп рд╕рдорд╛рдирддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ рдХреНрд░рдо.

рд░рд╕реНрдЯ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдореЗрдореЛрд░реА рдкреНрд░рдмрдВрдзрди рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдкреЙрдЗрдВрдЯрд░ рд╣реЗрд░рдлреЗрд░ рд╕реЗ рдореБрдХреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдореЗрдореЛрд░реА рд╣реЗрд░рдлреЗрд░ рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдлреНрд░реА-рдлреНрд░реА рдореЗрдореЛрд░реА рдПрдХреНрд╕реЗрд╕, рдирд▓ рдкреЙрдЗрдВрдЯрд░ рдбреАрд░реЗрдлрд░реЗрдВрд╕, рдмрдлрд░ рдУрд╡рд░рд░рди рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ, рдЕрд╕реЗрдВрдмрд▓реА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдорд╛рд▓ рдЧрд╛реЬреА, рдЖрдкрдХреЛ рдПрдХ рдХреНрд▓рд┐рдХ рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╣реЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рд╕рдорд░реНрдерд┐рдд рд╣реИ рдХреНрд░реЗрдЯ.рдЖрдИрдУ.

рдореБрдЦреНрдп рдирд╡рд╛рдЪрд╛рд░реЛрдВ:

  • рдЬреЛрдбрд╝рд╛ рд╕реНрд▓рд╛рдЗрд╕ (рдЧрддрд┐рд╢реАрд▓ рд╕рд░рдгрд┐рдпрд╛рдБ, рд╕реНрд▓рд╛рдЗрд╕) рдХреЗ рдорд┐рд▓рд╛рди рднрд╛рдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред рдкрд╣рд▓реЗ, рд╕рдЯреАрдХ рдорд┐рд▓рд╛рди рдХреА рдЕрдиреБрдорддрд┐ рдереА, рд▓реЗрдХрд┐рди рдЕрдм рд╕рд░рдгреА рдХреЗ рд╢реЗрд╖ рддрддреНрд╡реЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ".." рдЪрд┐рд╣реНрдирд┐рдд рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

    fn foo(рд╢рдмреНрдж: &[&str]) {
    рд╢рдмреНрджреЛрдВ рдХрд╛ рдорд┐рд▓рд╛рди рдХрд░реЗрдВ {

    // рд╕рд░рдгреА рдХреЗ рд╢реБрд░реБрдЖрддреА рддрддреНрд╡реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИ
    рддрддреНрд╡ рдЙрдирдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВ
    ["рд╣реИрд▓реЛ", "рд╡рд░реНрд▓реНрдб", "!", ..] => println!("рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб!"),

    // рдкрд╣рд▓реЗ рджреЛ рддрддреНрд╡реЛрдВ "рдлреВ" рдФрд░ "рдмрд╛рд░" рдХреА рдЬрд╛рдБрдЪ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдмрд╛рдХреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ
    ["рдлреВ", "рдмрд╛рд░", ..] => println!("рдмрд╛рдЬрд╝"),

    // рд╕рдм рдХреБрдЫ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдЕрдВрддрд┐рдо рддрддреНрд╡ "!" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
    [.., тАЬ!тАЭ] => println!(тАЬ!!!тАЭ),

    // рд╕реНрдЯрд╛рд░реНрдЯ рд╕реНрд▓рд╛рдЗрд╕ рдореЗрдВ рд╣рдо рдЕрдВрддрд┐рдо рддрддреНрд╡ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рдм рдХреБрдЫ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ "z" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
    [рдкреНрд░рд╛рд░рдВрдн @ .., "z"] => println!("рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рд╣реЛрддрд╛ рд╣реИ: {:?}", рдкреНрд░рд╛рд░рдВрдн),

    // рдЕрдВрддрд┐рдо рд╕реНрд▓рд╛рдЗрд╕ рдореЗрдВ рд╣рдо рдкрд╣рд▓реЗ рддрддреНрд╡ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рдм рдХреБрдЫ рдбрд╛рд▓рддреЗ рд╣реИрдВ, рдЬреЛ "рдП" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
    ["рдП", рдЕрдВрдд @ ..] => println!("рдЗрд╕ рдкрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ: {:?}", рдЕрдВрдд),

    рдмрд╛рдХреА => println!("{:?}", рдмрд╛рдХреА),
    }
    }

  • рдПрдХ рдирдпрд╛ рдореИрдХреНрд░реЛ "рдорд┐рд▓рд╛рди рдХрд░рддрд╛ рд╣реИ!" рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдФрд░ рдПрдХ рдкреИрдЯрд░реНрди рд▓реЗрддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдкреИрдЯрд░реНрди рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рддреЛ "рд╕рд╣реА" рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдЯреЗрдореНрдкреНрд▓реЗрдЯ "|" рдСрдкрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЕрдЧрд░"ред

    self.partial_cmp(рдЕрдиреНрдп) рд╕реЗ рдорд┐рд▓рд╛рди рдХрд░реЗрдВ {
    рдХреБрдЫ (рдХрдо) => рд╕рддреНрдп,
    _ => рдЕрд╕рддреНрдп,
    }

    рдорд┐рд▓рд╛рди!(рд╕реНрд╡рдпрдВ.рдЖрдВрд╢рд┐рдХ_рд╕реАрдПрдордкреА(рдЕрдиреНрдп), рдХреБрдЫ(рдХрдо))

    рдЪрд▓реЛ рдлреВ = 'рдПрдл';
    рдЬреЛрд░ рджреЗрдВ!(рдорд┐рд▓рд╛рди!(рдлреВ, 'рдП'..='рдЬреЗрдб' | 'рдП'..='рдЬреЗрдб'));

    рдЪрд▓реЛ рдмрд╛рд░ = рдХреБрдЫ(4);
    рдЬреЛрд░ рджреЗрдВ!(рдорд┐рд▓рд╛рди!(рдмрд╛рд░, рдХреБрдЫ(x) рдЕрдЧрд░ x > 2));

  • рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдкреИрдирд┐рдХ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ
    рд╡рд┐рдХрд▓реНрдк рдФрд░ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рдХрд╛рд░, рдЕрдм рд▓рд┐рдмрдХреЛрд░ рдореЗрдВ рдХреЙрд▓ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдб рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рдмрдЬрд╛рдп рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдХреЙрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдб рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдирдВрдмрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд░рд┐рд╡рд░реНрддрди рд╡рд┐рдХрд▓реНрдк::рдХреЛрдИ рдирд╣реАрдВ рдкрд░ рдЕрдирд░реИрдк рдФрд░ рдПрдХреНрд╕рдкреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рдХрд╛рд░ рдкрд░ рдЕрдирд░реИрдк_рдПрд░, рдПрдХреНрд╕рдкреЗрдХреНрдЯ, рдПрдХреНрд╕рдкреЗрдХреНрдЯ_рдПрд░ рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

  • рдХрд╛рд░реНрдЧреЛ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдореИрдХреНрд░реЛрдЬрд╝ рд╡рд╛рд▓реЗ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд▓рд┐рдП "рдмрд╛рд╣рд░реА" рдмреНрд▓реЙрдХ рдореЗрдВ "proc_macro рдХреНрд░реЗрдЯ" рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛрдб рдореЗрдВ "рдмрд╛рд╣рд░реА рдХреНрд░реЗрдЯ proc_macro;" рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдмрд┐рдирд╛ "рдЙрдкрдпреЛрдЧ" рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдореИрдХреНрд░реЛрдЬрд╝ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо "proc_macro::TokenStream;" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ" рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХреЛрдб рдЕрдм рдХрд╛рдо рдХрд░рддрд╛ рд░рд╣реЗрдЧрд╛ рдпрджрд┐ "exterm рдХреНрд░реЗрдЯ proc_macro;" рдХреЛ рдЗрд╕рдореЗрдВ рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрдЯрд░ рдореЗрдВ::рдЦрд╛рд▓реА рдЬреЛрдбрд╝рд╛ рдХрд┐рд╕реА рднреА рдЯреА рдорд╛рди рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рднреЗрдЬреЗрдВ рдФрд░ рд╕рд┐рдВрдХ рдХрд░реЗрдВред
    рдХреЙрд▓ рдкрд┐рди::{map_unchecked,map_unchecked_mut} рдкрд╣реБрдВрдЪрд╛ рджрд┐рдпрд╛ "рдЖрдХрд╛рд░" рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд╛рди рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рд╕реЗред
    Io::рдХрд░реНрд╕рд░ рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдЖрдВрд╢рд┐рдХEq рдФрд░ Eq. "рдХреЙрдиреНрд╕реНрдЯ" рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рдмрдЬрд╛рдп рдХрд┐рд╕реА рднреА рд╕рдВрджрд░реНрдн рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ, рд▓рд╛рдЧреВ рд▓реЗрдЖрдЙрдЯ::рдирдИ рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдПред

  • рдПрдкреАрдЖрдИ рдХрд╛ рдПрдХ рдирдпрд╛ рднрд╛рдЧ рд╕реНрдерд┐рд░ рд╢реНрд░реЗрдгреА рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реНрдерд┐рд░ CondVar::wait_while, CondVar::wait_timeout_while, рд╢рд╛рдорд┐рд▓ рд╣реИред
    рдбреАрдмрдЧрдореИрдк::рдХреБрдВрдЬреА, рдбреАрдмрдЧрдореИрдк::рдорд╛рди,
    рдореИрдиреНрдпреБрдЕрд▓реАрдбреНрд░реЙрдк::рд▓реЗрдирд╛,
    ptr::slice_from_raw_parts_mut рдФрд░ ptr::slice_from_raw_parts.

  • Error::description рд╡рд┐рдзрд┐ рдХреЛ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
  • Armv7a-none-eabi рдФрд░ riscv64gc-unknown-linux-gnu рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реЗ рд╕реНрддрд░ рдХрд╛ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ред Riscv64gc-unknown-linux-gnu рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
    Apple 32-рдмрд┐рдЯ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдЕрд╡рдирдд рд╕рдорд░реНрдерди рдХреЗ рддреАрд╕рд░реЗ рд╕реНрддрд░ рддрдХ, рдЬрд┐рд╕рдХрд╛ рддрд╛рддреНрдкрд░реНрдп рдмреБрдирд┐рдпрд╛рджреА рд╕рдорд░реНрдерди рд╕реЗ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкрд░реАрдХреНрд╖рдг рдФрд░ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдмрд┐рд▓реНрдб рдХреЗ рдкреНрд░рдХрд╛рд╢рди рдХреЗ рдмрд┐рдирд╛ред рд╕рдорд░реНрдерди рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ Apple рдЕрдм 32-рдмрд┐рдЯ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ