рд╣рдо рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдФрд░ рдкреИрдЯрд░реНрди рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ ..=
рдмрджрд▓рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред рдкреИрдЯрд░реНрди рдореЗрдВ ...
рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕реНрдерд┐рд░ рд╣реИ рдФрд░ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП (рдЪреБрдкрдЪрд╛рдк) рдкрджрд╛рд╡рдирдд рд░рд╣реЗрдЧрд╛; rustfmt ...
рд╕реЗ ..=
рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдХрд╛рдлреА рдЪрд░реНрдЪрд╛ рдХреЗ рдмрд╛рдж рдЖрдпрд╛ рд╣реИред рдФрдЪрд┐рддреНрдп рдХреЗ рд▓рд┐рдП рдпрд╣ рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВред
рдЗрд╕ рд╕реВрддреНрд░ рдореЗрдВ рдХреЛрдИ рдФрд░ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП ред рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рднреА рдореМрдЬреВрджрд╛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рдЙрдирдХреЗ рдФрдЪрд┐рддреНрдп рдХреЛ рдпрд╣рд╛рдВ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж , рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдХрд┐рд╕реА рднреА рдЕрд▓рдЧ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдордВрдЪ рдпрд╛ рдЖрдВрддрд░рд┐рдХ рдордВрдЪ рдкрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдкрд╢реНрдЪрдЧрд╛рдореА рд╕рдВрдЧрддрддрд╛ рдХреЛ рддреЛрдбрд╝рдирд╛ рдПрдХ рдЧреИрд░-рд╢реБрд░реБрдЖрдд рд╣реИред
..=
рдХреЛ рдкреИрдЯрд░реНрди рдореЗрдВ ...
рдкрд░реНрдпрд╛рдп рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓реЗрдВ рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ ..=
рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП #44709RangeInclusive
рдмрджрд▓рд╛рд╡ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛RangeInclusive
рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдкрд░ #49022 рдХреЛ рдЯреНрд░реИрдХ рдХрд░реЗрдВредрд╢рд╛рдпрдж a..b|
рдпрд╛ a..b]
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЯрд╛рдЗрдкреЛ (.. рдмрдирд╛рдо ...) рдХреЗ рдХрд╛рд░рдг рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдирдИ рддрд░рд╣ рдХреА рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд░рд╛рд╕реНрддрд╛ рдЦреЛрд▓реЗрдЧрд╛ред рдмреЗрд╣рддрд░ рд╣реИ рдЕрдЧрд░ рдпрд╣ .... (4 рдЕрд╡рдзрд┐)ред рдЗрд╕ рддрд░рд╣ рдпрд╣ рдорд╛рдирд╡ рдХрд╛рд░рдХ, рдЖрдИрдПрдордУ рдХреЗ рд▓рд┐рдП рдХрдо рддреНрд░реБрдЯрд┐-рдкреНрд░рд╡рдг рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ https://github.com/rust-lang/rfcs/pull/1592 рдФрд░ https://github.com/rust-lang/rfcs/pull/1582 рд╕рдВрдпреБрдХреНрдд рд░реВрдк рд╕реЗ ..=
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдорд▓рд╛ рдмрдирд╛рддреЗ рд╣реИрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ред рдЬрдм рддрдХ рдХреЛрдИ рдмрдбрд╝реЗ рдЯрдкрд▓ рдХреЗ рд╕рд╛рдордиреЗ рдЯрдкрд▓ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (head..., tail)
рд╕реЗ рдмреЗрд╣рддрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ред
рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЗрд╕рд▓рд┐рдП рдорд┐рд▓реА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдХреЛрдб рдореЗрдВ _off-by-one- dot _ рддреНрд░реБрдЯрд┐ рдереА рдЬрдм рдореИрдВ рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред
...
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдПред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЖрд╕рд╛рди-рд╕реЗ-рдЧрд▓рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реЛрдирд╛ рдЬреЛ рдПрдХ-рдПрдХ рдХрд░рдХреЗ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдПрдХ рдлреБрдЯрдЧрди рд╣реЛрдЧрд╛ред
рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрдкрдпреЛрдЧреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП ..=
рдХреНрдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдПрдХ рдЦреБрд▓рд╛ рдкреНрд░рд╢реНрди рд╣реИ? рдЪреВрдВрдХрд┐ ...
рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореИрдЪ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рд╣реИ,
рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ ...
рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреВрдВрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЪреВрдВрдХрд┐ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА ..
рдЕрдирдиреНрдп рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, ..
рдкрджрд╛рд╡рдирдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдФрд░ рдХреЗрд╡рд▓ ...
рдЕрдиреБрдорддрд┐ рджреВрдВрдЧрд╛ред
рдореИрдВ рд╕реА-рд▓рд╛рдЗрдХ рдлреЙрд░ рд▓реВрдкреНрд╕ for i in 0..foo.len()
рдХреЗ рдмрд░рд╛рдмрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд╣рд╛рдВ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ (рдореБрдЭреЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд░рд╕реНрдЯ рдХреЗ рдЗрдЯрд░реЗрдЯрд░ "1-рдЖрдпрд╛рдореА" рд╣реИрдВ рдФрд░ рдЕрдХреНрд╕рд░ 2D рд╕рд░рдгрд┐рдпреЛрдВ рдпрд╛ рдЧреИрд░-рд░реИрдЦрд┐рдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЬреАрдм)ред
рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдореВрд░реНрдЦрддрд╛рдкреВрд░реНрдг рд▓рдЧрддреА рд╣реИ, рд▓реЗрдХрд┐рди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдореИрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рдХрднреА рдирд╣реАрдВ рднрд╛рдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЬрдВрдЧ usize
рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдкрд░реЗрд╢рд╛рди рд╣реИред рдпрджрд┐ рдореИрдВрдиреЗ for i in 0..(len as usize)
рд╢реНрд░реЗрдгреА рдмрдирд╛рддреЗ рд╕рдордп рдХрд╛рд╕реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛, рддреЛ рдореБрдЭреЗ рд▓реВрдк рдХреЗ рдЕрдВрджрд░ рд╡реИрд╕реЗ рднреА i as usize
рдЖрдзрд╛ рджрд░реНрдЬрди рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЪреВрдВрдХрд┐ рдпрд╣ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрднреА рднреА рдлреАрдЪрд░-рдЧреЗрдЯреЗрдб рд╣реИ, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЬрд╣рд╛рдЬ рд░рд╡рд╛рдирд╛ рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред
рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╕реНрд╡рд┐рдлреНрдЯ рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП ...
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП ..<
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП ..=
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдХрд╛рдлреА рдЙрдЪрд┐рдд рд▓рдЧрддрд╛ рд╣реИред
рдореЗрд░реЗ рдкрд╛рд╕ рдХреЛрдИ рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ "рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ" рд╕реНрдерд┐рддрд┐ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЬрдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛ рд░рд╣рд╛ рдерд╛, рдореБрдЭреЗ рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ рдорд┐рд▓рд╛ рдЬреЛ рдЗрд╕рд╕реЗ рд▓рд╛рднрд╛рдиреНрд╡рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
fn fizzbuzz_to(n: u32) {
for n in 1..n + 1 {
fizzbuzz(n);
}
}
рдпреВрдкреА ? рдореИрдВ
рдореИрдВ a ..= b
рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд░рдПрдлрд╕реА рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдПрдХ рдЪрд░реНрдЪрд╛ рд╕реВрддреНрд░ рд╢реБрд░реВ рдХрд┐рдпрд╛ рд╣реИред
рдЖрдИрдПрдордПрдЪрдУ ..= рдЕрдЬреАрдм рд▓рдЧ рд░рд╣рд╛ рд╣реИред рд╕реНрд╡рд┐рдлреНрдЯ рдХрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг ... рдФрд░ ..< рдореБрдЭреЗ рдмреЗрд╣рддрд░ рд▓рдЧрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рджреЛ рдмрд┐рдВрджреБрдУрдВ рдкрд░ рдЗрд▓рд┐рдкреНрд╕рд┐рд╕ рдХреЛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ - рдЗрд▓рд┐рдкреНрд╕рд┐рд╕ рдХрд╛ рдЕрд░реНрде рдЪреВрдХ рд╣реИ рдФрд░ рд╣рдо рд╕реАрдорд╛ рдХреЗ рдкреНрд░рд╛рд░рдВрдн рдФрд░ рдЕрдВрдд рдХреЗ рдмреАрдЪ рдХреА рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдЫреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВред
рдореБрдЭреЗ рдЕрднреА рднреА рд▓рдЧрддрд╛ рд╣реИ ... рдФрд░ .. рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рдерд╛ред рдЖрдкрдХреЗ рдкрд╛рд╕ 1 рд╡рд░реНрдг рдЕрдВрддрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП +/- рдпрд╛ x/y рдпрд╛ рдЬреЛ рднреА рд╣реЛ, рд╕реЗ рдЧрд▓рддреА рдХрд░рдирд╛ рдХрдард┐рди рд╣реИред
рдЪреВрдВрдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрд╣рд▓реЗ рдЧрд▓рдд рд╕рдордЭрд╛ рдерд╛ (рдФрд░ рдЗрд╕рд▓рд┐рдП рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рд╣рдЯрд╛ рджреА):
рд░рд╕реНрдЯ рдХреА RFC рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреА рдкрд╣рд▓реЗ рд╣реА рд╕рдореАрдХреНрд╖рд╛ рдХреА рдЬрд╛ рдЪреБрдХреА рд╣реИ, рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛ рдЪреБрдХреА рд╣реИ рдФрд░ RFC рдкреБрд▓ рдЕрдиреБрд░реЛрдз 1192 рдореЗрдВ рд╕реНрд╡реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореБрджреНрджрд╛ рд╡рд╣рд╛рдВ рдкрд╣рд▓реЗ рд╕реЗ рддрдп рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдЯреНрд░реИрдХ рдХрд░рддрд╛ рд╣реИред рдЪрд░реНрдЪрд╛ рдореЗрдВ рдХрдИ рдмрд┐рдВрджреБ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬреЛ рд▓реЛрдЧ рдпрд╣рд╛рдВ рдЙрдард╛ рд░рд╣реЗ рд╣реИрдВ: рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ (рдХреЛрдИ рдирдпрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд╣реАрдВ), рд░реВрдмреА рдХреЗ рд╕рдорд╛рди рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЖрджрд┐ред
рдпрджрд┐ рдЖрдк рджреГрдврд╝рддрд╛ рд╕реЗ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕реБрд╡рд┐рдзрд╛ рдЕрд▓рдЧ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕реЗ рдЙрд╕реА RFC рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рддрд░рд╣ рднрд╛рд╖рд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рдореБрджреНрджрд╛ рдЙрд╕рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣ рдирд╣реАрдВ рд╣реИред
@jimblandy рд╢рд╛рдпрдж рд╣рдорд╛рд░реЗ рдкрд╛рд╕ @nikomatsakis рдЙрд╕ рд╡рд┐рдирдореНрд░ рдЕрдиреБрд╕реНрдорд╛рд░рдХ рдФрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рди рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд┐рдЧ рдкреНрд░рд┐рдВрдЯ рдореЗрдВ рдкрд╣рд▓реА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ
@shepmaster _all_ рдЯреНрд░реИрдХрд┐рдВрдЧ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реЛрдЧреАред
рдЪрд░реНрдЪрд╛ рдХреЗ рд▓рд┐рдП рдирд╛рдорд╛рдВрдХрди/рд╕рдВрднрд╛рд╡рд┐рдд FCP
рд╣рдордиреЗ @rust-lang/lang рдмреИрдардХ рдореЗрдВ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреАред рдЗрд╕ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реЗ рдирд╛рдЦреБрд╢ рд╣реЛрдиреЗ рдХреА рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рднрд╛рд╡рдирд╛ рдереА - рд╣рдордиреЗ рдЗрд╕реЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЙрд╕ рдкрд░ рд░реЛрдХ рд▓рдЧрд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред ...
рдХреЛ рд▓реЗрдХрд░ рджреЛ рдкреНрд░рдореБрдЦ рдЖрдкрддреНрддрд┐рдпрд╛рдВ рд╣реИрдВ:
..
рдФрд░ ...
рдмреАрдЪ рднреНрд░рдо рдХреА рдЖрд╕рд╛рдиреА;рдЙрд╕ рдЕрдВрдд рддрдХ, рд╣рдо рд╕реЛрдЪ рд░рд╣реЗ рдереЗ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рдЖрд░рдПрдлрд╕реА рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрдЧрд╛ рдЬреЛ рдХрд┐ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдХрд┐ рдирд┐рдЪрд▓реА рдФрд░ рдКрдкрд░реА рд╕реАрдорд╛рдПрдВ рд╕рдорд╛рд╡реЗрд╢реА рдпрд╛ рдЕрдирдиреНрдп рд╣реЛрдВрдЧреА рдпрд╛ рдирд╣реАрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ @aturon рдРрд╕реЗ RFC рдкрд░ рдХрд┐рд╕реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдХреЗ рдЦреБрд╢ рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рд░реБрдХ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ libstd ( рдКрдкрд░ рд▓рд┐рдВрдХ) рдореЗрдВ рдЙрди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдХреНрд╖рдо рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЪрд░реНрдЪрд╛ рд╕реВрддреНрд░ рдЦреЛрд▓рд╛, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдиреЗ рдЯрд┐рдкреНрдкрдгреА рдирд╣реАрдВ рдХреА :(
рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреБрдЫ рдЗрдирдкреБрдЯ рдХреЗ рд╕рд╛рде, рдореБрдЭреЗ рдПрдХ рдирдП RFC рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред
рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ libstd (рдКрдкрд░ рд▓рд┐рдВрдХ) рдореЗрдВ рдЙрди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдХреНрд╖рдо рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЪрд░реНрдЪрд╛ рд╕реВрддреНрд░ рдЦреЛрд▓рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдиреЗ рдЯрд┐рдкреНрдкрдгреА рдирд╣реАрдВ рдХреА :(
рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рдЙрдирдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдЬрдмрдХрд┐ рдордирдорд╛рдиреА рд╕рдорд╛рд╡реЗрд╢реА-рдЕрдирдиреНрдп рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдПрдХ рдЕрдЪреНрдЫреЗ рд╡рд┐рдЪрд╛рд░ рдХреА рддрд░рд╣ рд▓рдЧрддреА рд╣реИрдВ, рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ ..
рдФрд░ рдмрд╣реБрдд рдХрдо рдбрд┐рдЧреНрд░реА ...
рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рдм рдХреБрдЫ рдХрднреА рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
@рджреБрд░реНрдХрд╛
рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рд░реБрдХ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ libstd (рдКрдкрд░ рд▓рд┐рдВрдХ) рдореЗрдВ рдЙрди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдХреНрд╖рдо рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рд╕реВрддреНрд░ рдЦреЛрд▓рд╛, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдиреЗ рдЯрд┐рдкреНрдкрдгреА рдирд╣реАрдВ рдХреА :(
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рд╣рдорд╛рд░реЗ рдорди рдореЗрдВ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдерд╛, рд╣рд╛рдБред
@рдкреЗрдЯреНрд░реЛрдЪреЗрдирдХреЛрд╡
рдЬрдмрдХрд┐ рдордирдорд╛рдиреА рд╕рдорд╛рд╡реЗрд╢реА-рдЕрдирдиреНрдп рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдПрдХ рдЕрдЪреНрдЫреЗ рд╡рд┐рдЪрд╛рд░ рдХреА рддрд░рд╣ рд▓рдЧрддреА рд╣реИрдВ, рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ .. рдФрд░ рдмрд╣реБрдд рдХрдо рдбрд┐рдЧреНрд░реА рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рдмрдХреБрдЫ рдХрднреА рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдкреАрдЫрд╛ рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ...
рдЙрдк-рдЗрд╖реНрдЯрддрдо рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдо ..=
рдпрд╛ рдХреБрдЫ рдФрд░ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ, рддреЛ рд╢рд╛рдпрдж рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреЛрдЯ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрд╛рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдпрд╣ рд╢рд╛рдпрдж рд╣реА рдХрднреА рд╣реЛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдпрд╛рдиреА рдЕрдЧрд░ рд╣рдо рдЗрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рд╕реАрдЦрдирд╛ рдЬреНрдпрд╛рджрд╛ рдХрдард┐рди рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдРрд╕рд╛ рдХреЛрдИ рднреНрд░рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ ..
рдпрд╛ ...
рдЕрд░реНрде рд╣реИ "рдЕрдзрд┐рдХ рд╕рдВрдЦреНрдпрд╛рдПрдВ" ".
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рд╣рдорд╛рд░реЗ рдорди рдореЗрдВ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдерд╛, рд╣рд╛рдБред
рдХреМрди - рд╕рд╛? рдореИрдВрдиреЗ рдЕрдкрдиреА рдкреЛрд╕реНрдЯ рдореЗрдВ рдХрдИ рд╡рд┐рдХрд▓реНрдк рд╕реБрдЭрд╛рдПред
рдореИрдВ рдЕрдХреНрд╕рд░ рд╕рдорд╛рд╡реЗрд╢реА рдкрд░реНрд╡рддрдорд╛рд▓рд╛ рд╕реЗ рдЕрдзрд┐рдХ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдкрд╕рдВрдж рдЖрдпрд╛ 0...x
рдХреЗ рдмрдЬрд╛рдп 0..(x + 1)
ред рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдХреЗ рдмрд╛рдж рдПрдХ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдкреЗрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ?
рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рд░рд╕реНрдЯ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рдХреЗ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдореБрдЭреЗ рдХреЗрд╡рд▓ рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдкреИрдЯрд░реНрди рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ:
рдЗрд╕реЗ рд╡реИрд╕реЗ рд╣реА рд▓реЗрдирд╛
1..4 // 1, 2, 3
1...4 // 1, 2, 3, 4
рдЬреЛ рдПрдХ рдареАрдХ рд╕рдорд╛рдзрд╛рди IMHO рд╣реИ рдФрд░ рдкреИрдЯрд░реНрди-рдорд┐рд▓рд╛рди рдореЗрдВ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЧрдгрд┐рдд рд╕реЗ рдЙрдзрд╛рд░ рд▓реЗрдВ
[1, 4] // 1, 2, 3, 4
[1, 4[ // 1, 2, 3
]1, 4] // 2, 3, 4
]1, 4[ // 2, 3
рдЬреЛ рд╕рдмрд╕реЗ рдкреВрд░реНрдг рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ, рд▓реЗрдХрд┐рди рдмреНрд░реЗрд╕рд┐рдЬрд╝ рдирд┐рдпрдо рдЦреЛрд▓рдиреЗ рдФрд░ рдмрдВрдж рдХрд░рдиреЗ рдХреА рд╕рдорд╛рди рдорд╛рддреНрд░рд╛ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреГрд╖реНрдЯрд┐ рд╕реЗ рдХрдард┐рди рд╣реИред
рдкрд╛рдпрдерди рд╕реЗ рдЙрдзрд╛рд░ рд▓реЗрдВ
1:1:=5 // 1, 2, 3, 4, 5
1:1:<5 // 1, 2, 3, 4
рдЬреЛ рдПрдХ рдЬреНрдЮрд╛рдд рдкреИрдЯрд░реНрди рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдПрдХ рд╕реНрдЯреЗрдкрд╕рд╛рдЗрдЬ рднреА рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЖрд░рдПрдлрд╕реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╕реНрдЯреЗрдкрд╕рд╛рдЗрдЬ рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЬрдм рд╕реНрдЯреЗрдкрд╕рд╛рдЗрдЬрд╝ рдЗрд╕ рдЪрд░реНрдЪрд╛ (рдпрд╛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ) рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ ..=
рдФрд░ ..<
рдмрд╣реБрдд рд╣реА рдЙрдЪрд┐рдд рд▓рдЧрддреЗ рд╣реИрдВ!
рдЕрджреНрдпрддрди: рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..=
рдФрд░ ..<
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛрдЧрд╛ред рд╕реНрдЯреЗрдкрд╕рд╛рдЗрдЬрд╝ рдХреЛ рдПрдбреЙрдкреНрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд░рдЦрдиреЗ рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рдХреНрдпрд╛ рдЗрд╕ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдЕрд╡рд░реЛрд╣реА рд╢реНрд░реЗрдгреА рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП? рд░реЗрдВрдЬ рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рди рдХрд╛рдлреА рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ (рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рд╣реЛрдВ)ред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЖрдк рдмрд┐рдирд╛ рднреЗрдВрдЧрд╛рдкрди рдХрд┐рдП рдЗрд╕реЗ рдкрдврд╝ рдФрд░ рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ?
for i in (1..l.len()).rev() { ... }
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдФрд░ рдЧрд┐рдЯрд╣рдм рдХреЗ рдлрд╝реЙрдиреНрдЯ рдХреЗ рд╕рд╛рде рдпрд╣ рдФрд░ рднреА рднреНрд░рдорд┐рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ l
1
рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рдХрджрдо рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛ред
рд╣рдо рдореИрдЯрд▓реИрдм рд╕рд┐рдВрдЯреИрдХреНрд╕, a:b
рдФрд░ a:step:b
ред
рдирд╡рдВрдмрд░ 4, рд╡рд░реНрд╖ 2016 00:50 рдкрд░, "рдУрдЯ" [email protected] рд▓рд┐рдЦрд╛ рд╣реИ:
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рдХрджрдо рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛ред
-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment -258344460,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3n3kwnGH6POQb4dGwCwJ8yOGqPSBQks5q6rmDgaJpZM4F4LbW
.
@durka рддреЛ рд╡рд░реНрддрдорд╛рди ..
рдХреЗ рдмрд░рд╛рдмрд░ рдХреНрдпрд╛ рд╣реЛрдЧрд╛, рдЬрд╣рд╛рдВ a
рдпрд╛ b
? рдмрд╕ :
?
рдХреБрдЫ рдРрд╕рд╛ рдЬреЛ рдореИрдВрдиреЗ RFC рдореЗрдВ рдиреЛрдЯ рдирд╣реАрдВ рджреЗрдЦрд╛: рдХреНрдпрд╛ рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдореЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛?
рдпрджрд┐ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ, рддреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрд░реНрде рд╣реЛрдиреЗ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝реАрд▓реНрдб рдирд╛рдореЛрдВ рдХрд╛ рд╣реЛрдирд╛ рдореВрд▓реНрдпрд╡рд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "рд░реЗрдВрдЬ.рд╕реНрдЯрд╛рд░реНрдЯ" рд╕рднреА рдкреНрд░рдХрд╛рд░реЛрдВ рдкрд░ "рдирд┐рдЪрд▓рд╛ рд╕рдорд╛рд╡реЗрд╢реА рдмрд╛рдЙрдВрдб" рд╣реИред рд▓реЗрдХрд┐рди "рд░реЗрдВрдЬ.рдПрдВрдб" рдХрднреА-рдХрднреА рд╕рдорд╛рд╡реЗрд╢реА рдФрд░ рдХрднреА-рдХрднреА рдЕрдирдиреНрдп рд╣реЛрддрд╛ рд╣реИред "рдЕрдВрдд" рдФрд░ (рд╕реНрдЯреНрд░реЙрдореИрди) "рдЕрдВрддрд┐рдо" рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред
(рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ рдпрджрд┐ рд░реЗрдВрдЬ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЛ рдЕрднреА рднреА std::Collections::range::RangeArgument рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
pub trait RangeArgument<T> {
fn start(&self) -> Option<&T> { ... }
fn end(&self) -> Option<&T> { ... }
}
рдлрд┐рд░
impl RangeArgument<T> for RangeToInclusive<T> {
fn end(&self) {
Some(self.end+1)
}
}
рддрд╛рдХрд┐ fn foo<T, R: RangeArgument<T>>(arg: R)
рд╕рдорд╛рд╡реЗрд╢реА рдпрд╛ рдЕрд░реНрдз-рдЦреБрд▓реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рд▓реЗ рд╕рдХреЗрдВред
@durka рдП: рдмреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЯрд╛рдЗрдк рд╢рд┐рд▓рд╛рд▓реЗрдЦ рдХреЗ рд╕рд╛рде рд╕рдВрджрд┐рдЧреНрдз рд╣реИред рдХреНрдпрд╛ рдЖрдк рдПрдХ рдЪрд░ b
, рдпрд╛ рдПрдХ рдкреНрд░рдХрд╛рд░ b
рдорд╛рдВрдЧ рд░рд╣реЗ рд╣реИрдВ? рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫреЗ рд░рд╕реНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдо рдЕрдкрдиреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдХреИрдкрд┐рдЯрд▓рд╛рдЗрдЬрд╝ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрдВрдкрд╛рдЗрд▓рд░ рдЗрд╕рдХрд╛ рдЕрдиреБрдорд╛рди рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВред
.. рдЧрдгрд┐рдд рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдСрдкрд░реЗрдЯрд░ ( @dusee рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░):
[1..4] // 1, 2, 3, 4
[1..4[ // 1, 2, 3
]1..4] // 2, 3, 4
]1..4[ // 2, 3
рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ ( @0tt рдЙрджрд╛рд╣рд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░):
fn fizzbuzz_to(n: u32) {
for n in [1..n + 1] {
fizzbuzz(n);
}
}
рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдо рдХреЗрд╡рд▓ рд╕рдВрдХреЗрдд рдХреЗ рд░реВрдк рдореЗрдВ ..
рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реАрдорд╛рдПрдВ [
рдФрд░ ]
рджреНрд╡рд╛рд░рд╛ рджреА рдЧрдИ рд╣реИрдВ
@adelarsq : рдЬрдВрдЧ рдореЗрдВ рд╣рдореЗрдВ рдЙрди рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рдирдореЗрдВ рд╢реБрд░реБрдЖрдд рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдмреНрд░реИрдХреЗрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗрд╡рд▓ рддрднреА рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдЬрдм рдЙрдиреНрд╣реЗрдВ рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рддреА рд╣реИред рд╕рд╛рде рд╣реА, рдмреНрд░реИрдХреЗрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдкрд╣рд▓реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..=
рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЙрдЪрд┐рдд рд╡рд┐рдХрд▓реНрдк рд╣реИред
..
рд╕реЗ рдиреЗрддреНрд░рд╣реАрди рдЕрдВрддрд░ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдЬреЛ ...
рдирд╣реАрдВ рд╣реИред ...
рдЬрдм рдЕрд░реНрде ..
рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ ..=
ред
(рдпрд╣ рдЧрд▓рддреА рд╕реЗ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреБрд▓рдиреАрдп рд╣реИ if(a = b)
рдХреЗ рдмрдЬрд╛рдп if(a == b)
рджреГрд╢реНрдп noticeability рдФрд░ рдмрдЧ рдХреНрд╖рдорддрд╛ рдореЗрдВ рд╕реА рдореЗрдВ, рджреЛрдиреЛрдВ)ред
рдФрд░ ..=
рдпрд╛рдж рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕рдХреЗ рдЕрд░реНрде рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд╣реИ ( i ..= j
рдЕрд░реНрде рд╣реИ рд╕реАрдорд╛ i .. j
рдФрд░ рдЬрд╣рд╛рдВ i = j
)ред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рдореБрдЦ рд╢рд┐рдХрд╛рдпрдд рдпрд╣ рд╣реИ рдХрд┐ ...
рдмрд╣реБрдд рд╣рдж рддрдХ ..
ред рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдЬрдм рдЕрдиреНрдп рд╕реБрдЭрд╛рд╡ рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдЕрдзрд┐рдХ рд╡рд░реНрдг рд╢рд╛рдорд┐рд▓ рд╣реЛрддреЗ рд╣реИрдВ рддреЛ рдХреЛрдИ рднреА рд╡рд░реНрдгреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╢рд┐рдХрд╛рдпрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХреЗрд╡рд▓ рдХреБрдЫ рдЬрдЧрд╣реЛрдВ рдкрд░ рдмреНрд░реИрдХреЗрдЯ рдорд┐рд▓рд╛рди рдФрд░ рдЙрдкрдпреЛрдЧ рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рд╣реЛрддреА рд╣реИрдВред
рддреЛ, рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП ....
рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдпрд╣ рдЕрднреА рднреА рдПрдХ рд╕реАрдорд╛ рдХреА рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд╣рд╛ рдХрд┐ рдХрд┐рд╕реА рдХреЛ рднреА рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЪрд░рд┐рддреНрд░ рд▓реЗрддрд╛ рд╣реИред рдпрд╣ рдмрд╣рд╕ рдХрд╛ рд╡рд┐рд╖рдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ ..=
рд╕реЗ рдХрдо рдпрд╛ рдЬреНрдпрд╛рджрд╛ рдЬреАрддрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред
for i in 0....10 { println!("just a thought"); }
рдпрджрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдорд╛рд╡реЗрд╢реА рдереЗ ..! рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рд▓рдЧрднрдЧ рдПрдХ рдирд┐рд╖реЗрдз рдХреЗ рд░реВрдк рдореЗрдВ)ред
....
рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ ...
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ рддреЛ рдХреБрдЫ рднреНрд░рдо рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ ...
рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд░реВрдмреА рд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рдЙрд▓рдЯрд╛ рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдм рддрдХ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк ..=
рд╣реИред
@adelarsq, ....
рдСрдкрд░реЗрдЯрд░ рдХреА рдЬрдЧрд╣ рд▓реЗрдВрдЧреЗ ...
рддреЛ рдСрдкрд░реЗрдЯрд░, рдпрджрд┐ рдЖрдк рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА ..
рдФрд░ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬреЛрдбрд╝рд╛ .
рдПрдХ рд╕рдВрдХрд▓рди, рдпрд╣ рд╣реЛрдЧрд╛ рд╕рдордп рддреНрд░реБрдЯрд┐, рдпрджрд┐ рдЖрдкрдиреЗ ....
рдФрд░ рдПрдХ рдмрд┐рдВрджреБ рднреВрд▓ рдЧрдП, рддреЛ рдпрд╣ рднреА рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреАред
рдЪреВрдВрдХрд┐ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдореЗрдВ, ...
рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП ...
рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рдЪрд░рдг рдХреЗ рд╕рд╛рде рд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╣рд╛рд╕реНрдХреЗрд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП 1,3..9
=> [1,3,5,7]
рд╕реНрдЯреЗрдк/рд░рд┐рд╡рд░реНрд╕, рдЖрджрд┐ рдХреЗ рд╕рд╛рде рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдПред рдореИрдВ рдПрдХ рдЬрдЯрд┐рд▓ рд╢рд╛рдмреНрджрд┐рдХ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдЕрдЪреНрдЫреЗ рдкреБрд░рд╛рдиреЗ рдЬрдорд╛рдиреЗ рдХреЗ рдлрд╝рдВрдХреНрд╢рди (рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХрд╛ Range
рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░) рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред
рдореИрдВ рдХреНрд╡рд╛рдб-рдбреЙрдЯ ....
рд╕рд╛рде рдареАрдХ рд░рд╣реВрдВрдЧрд╛ (рд╣рд╛рд▓рд╛рдВрдХрд┐ ..=
IMHO рднреА рдареАрдХ рд╣реИ)ред рдЗрд╕реЗ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдореЗрдВ рднреА рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛ рд╕рдХрддреА рд╣реИ (рдФрд░ рдЕрдВрддрддрдГ рдкреИрдЯрд░реНрди рдореЗрдВ ...
рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред
рдореЗрд░реЗ рд▓рд┐рдП ..=
рдПрдХ рджреГрд╢реНрдп рд╕рдВрдХреЗрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛ ....
рдирд╣реАрдВ рд╣реИред
рдореИрдВрдиреЗ рдЕрднреА рдХреБрдЫ рджреЗрдЦрд╛:
рдЧрдгрд┐рдд рдореЗрдВ рдЖрдк тИА i: 0 тЙд i < 10
рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЕрдиреБрд╡рд╛рдж рд╣реЛрдЧрд╛
for i in 0 ..< 10 { }
рдпрд╣ рд╕реБрд╕рдВрдЧрдд рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрдерди тИА i: 0 тЙд i тЙд 10
рдХрд╛ рдЕрдиреБрд╡рд╛рдж рд╣реЛрдЧрд╛
for i in 0 ..= 10 { }
рдпрд╣рд╛рдБ, рдХрд╛ рдЕрдиреБрд╡рд╛рдж = рд╣реИ, рдЬреЛ рдЕрд╕рдВрдЧрдд рд▓рдЧрддрд╛ рд╣реИред
рдпрд╣ рдмрд╛рдЗрдХ рд╢реЗрдбрд┐рдВрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди
for x in 0 ..<= 10 { }
рдЕрдзрд┐рдХ рд╕рд╣реА рд▓рдЧрддрд╛ рд╣реИред рдпрд╣ рдореЗрд░реА рд╕реА рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ
for (unsigned int i = 0; i <= 10; ++i) { }
"рдЬрдм рддрдХ i
рдЫреЛрдЯрд╛ рд╣реИ рдпрд╛ 10
рдмрд░рд╛рдмрд░ рд╣реИ, рддрдм рддрдХ рдЕрдиреБрд╡рд╛рдж рдХрд░рддрд╛ рд╣реИ"ред рд╕реАрдЖрдИ рдореЗрдВ рд▓реВрдк рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ ==
рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореВрд▓реНрдп рдкрд░ рдХреВрджрдиреЗ рдФрд░ рдЕрдирдВрдд рд▓реВрдк рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рд░рд╕реНрдЯ рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди for i in 1 ..= 10
рд╕реЗ C рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рдареАрдХ рдпрд╣реА рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕реЗ рдФрд░ рдЖрдЧреЗ рд▓реЗ рдЬрд╛рдирд╛,
for i in 0 <..<= 10 { }
рд╕реНрд╡-рд╡реНрдпрд╛рдЦреНрдпрд╛рддреНрдордХ рд╣реЛрдЧрд╛ред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╣рд╛рдВ рдПрдХ рдЦрд░рд╛рдм рд░рд┐рд╡рд░реНрд╕ рдЙрджрд╛рд╣рд░рдг рдерд╛ рдЬреЛ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдерд╛ рдХрд┐ рдХреЗрд╡рд▓ =
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рднреНрд░рдорд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд░рдЪрдирд╛рддреНрдордХ рд╕реЗ рдЕрдзрд┐рдХ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдерд╛ред
@рдбреНрдпреВрд╕реА >=..>
рд╕реНрд╡-рд╡реНрдпрд╛рдЦреНрдпрд╛рддреНрдордХ рдХреИрд╕реЗ рд╣реИ? рдХреНрдпрд╛ рдпрд╣ <=..>
(<= 10 рдФрд░ > 0) рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП?
рдЖрдИрдПрдордУ рдпрд╣ рдЖрддреНрдо-рд╡реНрдпрд╛рдЦреНрдпрд╛рддреНрдордХ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЧреБрдкреНрдд рд╣реИ рдФрд░ рдПрдХ рдСрдкрд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╣реБрдд рд▓рдВрдмрд╛ рд╣реИред
(рдХреЛрдИ рднреА рдСрдкрд░реЗрдЯрд░ IMO 3 рд╡рд░реНрдгреЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рд▓рдВрдмрд╛ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред
рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд░рд┐рд╡рд░реНрд╕ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рджрд┐рд╢рд╛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ: .rev()
рд╣рдореЗрдВ рдХреЗрд╡рд▓ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдФрд░ рд╢рд╛рдпрдж .step_by()
рд▓рд┐рдП рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЪрд░рдг рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ a .. b | s
(рдФрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП: a ..= b | s
) рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
@norru : рдЖрдкрдХрд╛ рдЙрджрд╛рд╣рд░рдг for i in (1..l.len()).rev() { ... }
рдмрд╣реБрдд рдЕрд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп рдЖрдк рд╕реНрд▓рд╛рдЗрд╕ ( for x in arr[1..].rev() { ... }
) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рднрд▓реЗ рд╣реА рдЖрдкрдХреЛ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛-рд╢реИрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рдП (рдореВрд▓ рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рдЬрдм рдЖрдк рд╕рд░рдгреА рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ i
рдирд╣реАрдВ рд╣реИрдВ), рддреЛ рдореБрдЭреЗ рдЗрд╕реЗ рдкрдврд╝рдирд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд▓рдЧрддрд╛ред (рд▓реЗрдХрд┐рди рдореИрдВ рдЖрдорддреМрд░ рдкрд░ ..
рдЖрд╕рдкрд╛рд╕ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реВрдВ рдЬрдм рддрд░реНрдХ рд╢рд╛рдмреНрджрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ: (1 .. arr.len()).rev()
)
>=..>
рд░рд╕реНрдЯ рдСрдкрд░реЗрдЯрд░реЛрдВ рдореЗрдВ рдордЫрд▓реА рдХреА рдЕрдзрд┐рдХ рдкреНрд░рдЬрд╛рддрд┐рдпрд╛рдВ!
рд▓реЗрдХрд┐рди рдореБрдЭреЗ ..<=
рдмрд╣реБрдд рдкрд╕рдВрдж рд╣реИ (рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЙрд╣, match
рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЬрд╣рд╛рдВ рдпрд╣ <= 0 =>
рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ :()
..
рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИ,+=
рдЕрд░реНрде рдирд╣реАрдВ рд╣реИ ..=
,..<
рд╕рд╛рде рднреА рддрд╛рд░реНрдХрд┐рдХ рд░реВрдк рд╕реЗ рд╕реБрд╕рдВрдЧрдд рд╣реИред рджреЛрдиреЛрдВ рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рдЕрднрд┐рд╕рд░рдг рд╕рдВрднрд╡ рд╣реИ!@pornel : >=..> more species of fish in Rust operators!
рд╣реЗ :-)
@ рдмреЙрд╕реНрдХреЛрдк : рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЧрдгрд┐рдд рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреА рддрд░рд╣ рдкрдврд╝рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдЖрддреНрдо-рд╡реНрдпрд╛рдЦреНрдпрд╛рддреНрдордХ рд╣реИ: 10 >= i > 2
ред рдЖрдкрдХреЗ рд╢реЗрд╖ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП: рдореИрдВ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣рдордд рд╣реВрдВред рджреВрд╕рд░рд╛ рднрд╛рдЧ ..=
рдмрдирд╛рдо ..<=
рдкрд░ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рднрд╡рд┐рд╖реНрдп рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд▓рд┐рдП рдЕрд╡рд░реЛрдзрдХреЛрдВ рдХреЛ рдкреЗрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдореИрдВ рддрджрдиреБрд╕рд╛рд░ рдЕрдкрдирд╛ рдЙрддреНрддрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реВрдВрдЧрд╛ред
..
рдиреЛрдЯреЗрд╢рди рдкрд░ рдЪреЗрддрд╛рд╡рдиреА рдпрд╛ рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рдзреНрд╡рдЬ рднреА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдореИрдВ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рдХрд┐ ..
рдореЗрд░реЗ рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рдХрд╣реАрдВ рднреА рджрд┐рдЦрд╛рдИ рджреЗ
рдореИрдВ ..=
рд▓рд┐рдП рдПрдХ рдФрд░ рд╡реЛрдЯ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ
..<
рдФрд░ ..<=
рд▓рд┐рдП рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡реИрдз рдХреЛрдб рд╣реИрдВ (рдПрдХ рдЕрдиреНрдп рдореВрд▓реНрдп рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рд╕рд╣реА-рдЦреБрд▓реА рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА)ред
@thepowersgang
..< рдФрд░ ..<= рдХрд╛ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдорд╛рдиреНрдп рдХреЛрдб рд╣реИрдВ (рдПрдХ рд░рд╛рдЗрдЯ-рдУрдкрди рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рд░реЗрдВрдЬ рдХреА рддреБрд▓рдирд╛ рджреВрд╕рд░реЗ рдорд╛рди рд╕реЗ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ)ред
рдЬрдмрдХрд┐ рд╕рдЪ рд╣реИ, рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рдХреА рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ, рдирд╣реАрдВ?
рдореИрдВ рдпрд╣рд╛рдВ рдЕрдиреНрдп рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЗ рд▓рд┐рдП ...
рдХреЛ рдмрд╣реБрдд рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ .. рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдореБрдЭреЗ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЪреБрдирдирд╛ рдкрдбрд╝рд╛, рддреЛ рдпрд╣ ..=
@nikomatsakis
рдореИрдВ ..<
рдФрд░ ..<=
рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЗрд╕ рдЖрдзрд╛рд░ рдкрд░ рдЦрд┐рд▓рд╛рдл рд╣реВрдВ рдХрд┐ рд╡реЗ рднрд╛рд╖рд╛ рдХреЗ рд╡реНрдпрд╛рдХрд░рдг рдХреЗ рдПрдХ рд╕рд╣рдЬ рдореЙрдбрд▓ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЕрд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЬрдЯрд┐рд▓ рдмрдирд╛рддреЗ рд╣реИрдВред
рдЕрдзрд┐рдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдиреЛрдЯ рдкрд░, рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдХрдо рд╕реЗ рдХрдо рдмрджрд╕реВрд░рдд рдФрд░ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рдЯрд░реНрдмреЛрдлрд┐рд╢ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рддрд╛ рд╣реВрдВред
рдореИрдВ рдХреЗ рд╕рд╛рде рдЬрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ ..
рд╕рд╣реА рдЕрдирдиреНрдп рдХреЗ рд▓рд┐рдП рдФрд░ ..=
рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП рдХреЗ рд░реВрдк рдореЗрдВ рджреГрд╢реНрдп рд▓рд╛рд▓рд┐рддреНрдп рдХреЗ рдмреАрдЪ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдВрддреБрд▓рди, рд╡реНрдпрд╛рдХрд░рдг рдХреЗ рдирд┐рдпрдореЛрдВ рд╕рд╣рдЬ рд╕рдордЭ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рди рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдХрдард┐рди рдмрдирд╛ рдХрд┐ред
рдХреНрдпрд╛ ...
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ ..
? рдореБрдЭреЗ рдпрд╣ рдЗрддрдирд╛ рдкрд╕рдВрдж рдХреНрдпреЛрдВ рд╣реИ?
@рддреНрд╢реЗрдкрд╛рдВрдЧ
рдореБрдЭреЗ ...
рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реМрдВрджрд░реНрдп рдХреА рджреГрд╖реНрдЯрд┐ рд╕реЗ рдЖрдХрд░реНрд╖рдХ рд╣реИ ... рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рддрд░реНрдХ рджреЗрддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдЪрд┐рдВрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ if (x == 2) {
рдмрдЬрд╛рдп if (x = 2) {
рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рдорд╛рди рдиреЛрдЯрд┐рд╕-рдЯреВ-рдиреЛрдЯрд┐рд╕ рдмрдЧ рдкреИрджрд╛ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред рд╕реА/рд╕реА++ рдореЗрдВ if (x == 2) {
ред (рдФрд░ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЦрддрд░рд╛ рдирд┐рдХрд▓рд╛ред)
@ssokolow
рдЖрдИрдПрдордУ рдЬреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд▓рд╛рдЗрдирд┐рдВрдЧ рдпрд╛ рд╡рд┐рдХрд▓реНрдк рдЭрдВрдбреЗ рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рдПрдХ рдлрд╝рд╛рдЗрд▓/рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдиреЛрдЯреЗрд╢рди рдорд┐рд╢реНрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИред
рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ ....
рдХреЛ рднреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдВ, рдЪреМрдбрд╝рд╛рдИ/рджреВрд░реА рдХреЛ рджреЛрдЧреБрдирд╛ рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╡реЗ рджреЛрдиреЛрдВ рддрд░рдл рдкреНрд░рддреАрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдлрд╝реНрд▓реИрдВрдХ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ рдЬреЛ рдЙрд╕ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕реНрдерд╛рди рдХреЛ рдЕрд▓рдЧрд╛рд╡ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рдХрд░ рджреЗрдЧрд╛ред
@ssokolow
рдореИрдВ .. рд░рд╛рдЗрдЯ-рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рдФрд░ ..= рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП рджреГрд╢реНрдп рд▓рд╛рд▓рд┐рддреНрдп, рд╡реНрдпрд╛рдХрд░рдг рдирд┐рдпрдореЛрдВ рдХреЗ рдмреАрдЪ рд╕рд░реНрд╡реЛрддреНрддрдо рд╕рдВрддреБрд▓рди рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рд╕рд╣рдЬ рд░реВрдк рд╕реЗ рд╕рдордЭрдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИрдВ, рдФрд░ рджреЛрдиреЛрдВ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред
рдЗрд╕рд╕реЗ рдореЗрд░рд╛ рдХрд╛рдо рдмрдирддрд╛ рд╣реИред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдо рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдПрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, <..<=
)ред рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..
рдФрд░ ..=
99.5% рдорд╛рдорд▓реЛрдВ рдХреА рддрд░рд╣ рдХрд╡рд░ рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЦреНрдп рдЙрдкрдпреЛрдЧ рдХреЗрд╕ drain
рдЬреИрд╕реЗ рдПрдкреАрдЖрдИ рд╣реИрдВ, рдФрд░ рд╣рдордиреЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╡рд╣рд╛рдВ рдПрдХ
cc @rust-lang/libs
рд╣рдо рдЕрд╕рд╛рдорд╛рдиреНрдп рдорд╛рдорд▓реЛрдВ рдХреЛ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ
рд╕рдВрд░рдЪрдирд╛ рд╢рд╛рдмреНрджрд┐рдХред
рдмреБрдз, 22 рдлрд░рд╡рд░реА, 2017 рдХреЛ рд╢рд╛рдо 4:50 рдмрдЬреЗ, рдирд┐рдХреЛ рдорд╛рддреНрд╕рд╛рдХрд┐рд╕ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:
@ssokolow https://github.com/ssokolow
рдореИрдВ рд╕рд╛рде рдЬрд╛рдКрдВрдЧрд╛ .. рд░рд╛рдЗрдЯ-рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рдФрд░ ..= рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рдХреЗ рд░реВрдк рдореЗрдВ
рджреГрд╢реНрдп рд▓рд╛рд▓рд┐рддреНрдп, рд╡реНрдпрд╛рдХрд░рдг рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЗ рдмреАрдЪ рд╕рдВрддреБрд▓рди рдЬреЛ рд╕рд╣рдЬ рд░реВрдк рд╕реЗ рдЖрд╕рд╛рди рд╣реИрдВ
рд╕рдордЭрдирд╛, рдФрд░ рджреЛрдиреЛрдВ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рдирд╛ рдХрдард┐рди рдмрдирд╛ рджреЗрддрд╛ рд╣реИредрдЗрд╕рд╕реЗ рдореЗрд░рд╛ рдХрд╛рдо рдмрдирддрд╛ рд╣реИред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдо рднреА рдЪрд╛рд╣рддреЗ рд╣реИрдВ a
рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ (рдЬреИрд╕реЗ, <..<=)ред рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ .. рдФрд░ ..=
99.5% рдорд╛рдорд▓реЛрдВ рдХреА рддрд░рд╣ рдХрд╡рд░ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЦреНрдп рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рдПрдкреАрдЖрдИ рдЬреИрд╕реЗ рдирд╛рд▓реА рд╣реИ,
рдФрд░ рд╣рдордиреЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╡рд╣рд╛рдВ рдПрдХ рдЕрд▓рдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЕрдкрдирд╛рдпрд╛ рд╣реИ
https://doc.rust-lang.org/std/collections/struct.BTreeMap.html#method.range
.cc @rust-lang/libs https://github.com/orgs/rust-lang/teams/libs
-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-281815665 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3n-aKwYKFq4VI9RizL0GkzXXSjTPwks5rfK2ngaJpZM4F4LbW
.
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..=
рдкреИрдЯрд░реНрди рдореЗрдВ рднреА рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛? рд╡рд╣рд╛рдВ рдореМрдЬреВрджрд╛ ...
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛?
рдЗрд╕реЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЕрд╕реНрддрд┐рддреНрд╡ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рдордЬрдмреВрдд рдорд┐рд╕рд╛рд▓ рд╣реИ
рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ, рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЖрд╢реБрд▓рд┐рдкрд┐ рдХреЗ рд░реВрдк рдореЗрдВред
рдмреБрдз, рдлрд╝рд░рд╡рд░реА 22, 2017 рдкрд░ 6:02 рдкреНрд░рдзрд╛рдирдордВрддреНрд░реА andrewtj рдкрд░ [email protected] рд▓рд┐рдЦрд╛ рд╣реИ:
рдореИрдВ рдЗрд╕реЗ рд▓реЗрддрд╛ рд╣реВрдБ..= рдкреИрдЯрд░реНрди рдореЗрдВ рднреА рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛? рдХрд╛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛
рдореМрдЬреВрджрд╛ ... рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╡рд╣рд╛рдБ?-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-281834007 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3nw_DaOMNxuIKw6ZFfXJW95QyijY4ks5rfL6DgaJpZM4F4LbW
.
@durka @andrewtj рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рд╣рдЯрд╛ рджреЗрдВрдЧреЗред
..=
рдХрд╛ рдЙрдкрдпреЛрдЧ рдСрдкрд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ +=
рдХреЗ рд╕рдорд╛рди рдЕрд░реНрде рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЬреНрд╡рд╛рд░ ~
, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП 0~9
, 'A'~'Z'
ред
..=
рдХрд┐рд╕ рдСрдкрд░реЗрд╢рди рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдЧрд╛? -
рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╣реИ рдХреНрдпреЛрдВрдХрд┐
1-9 == -8
ред
рдмреБрдзрд╡рд╛рд░ 22 рдлрд░рд╡рд░реА, 2017 рдХреЛ рд░рд╛рдд 8:04 рдмрдЬреЗ, рдЬреБрдирдлреЗрдВрдЧ рд▓рд┐рдпреВ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:
..= рдХрд╛ рдЙрдкрдпреЛрдЧ рдСрдкрд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ += рдХреЗ рд╕рдорд╛рди рдЕрд░реНрде рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ ~ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП 0~9, 'рдП'~'рдЬреЗрдб'ред-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-281856846 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3n7N2dM4DAzc_uc5JdHit4IJgyvYGks5rfNsPgaJpZM4F4LbW
.
@durka ..=
рдмрд╕ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рдХреА рддрд░рд╣ рджрд┐рдЦрддреЗ рд╣реИрдВ, рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рджреБрд░реНрд▓рдн рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред ~
рдЬреНрд╡рд╛рд░ рдЙрдк рдирд╣реАрдВ рд╣реИред рдЙрдкрдпреЛрдЧ ...
рднреА рдареАрдХ рд╣реИред
impl Fill for Range<String> {
fn fill() -> String { ... }
}
impl FillAsign for RangeAssign<String> {
fn fill(&mut self) { ... }
}
(String::new("abc") .. String::new("f")).fill() // "abcdef"
(String::new("abc") ..= String::new("f")).fill() // ()
рдУрд╣ рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдпрд╣ рдореЗрд░реЗ рдлрд╝реЙрдиреНрдЯ рдореЗрдВ рд╕рдорд╛рди рджрд┐рдЦрддрд╛ рд╣реИред рдореИрдВ рдкреВрдЫ рд░рд╣рд╛ рдерд╛, рдЕрдЧрд░ ..= рдПрдХ рдпреМрдЧрд┐рдХ рд╣реИ
рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рдЬреИрд╕реЗ +=, рдпрд╣ рдХреМрди рд╕рд╛ рдСрдкрд░реЗрд╢рди рдХрд░рддрд╛ рд╣реИ (рд╕рдВрдмрдВрдзрд┐рдд .)
рд╕реЗ +)?
рдмреБрдзрд╡рд╛рд░ 22 рдлрд░рд╡рд░реА, 2017 рдХреЛ рд░рд╛рдд 8:29 рдмрдЬреЗ, рдЬреБрдирдлреЗрдВрдЧ рд▓рд┐рдпреВ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:
@durka https://github.com/durka ..= рдмрд╕ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ
рдСрдкрд░реЗрдЯрд░реЛрдВ, рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рджреБрд░реНрд▓рдн рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред ~ рдЬреНрд╡рд╛рд░ рдЙрдк рдирд╣реАрдВ рд╣реИредрд╕реАрдорд╛ рдХреЗ рд▓рд┐рдП рднрд░реЗрдВ
{
fn рднрд░рдг () -> рд╕реНрдЯреНрд░рд┐рдВрдЧ {...}
}
рд░реЗрдВрдЬрдЕрд╕рд╛рдЗрди рдХреЗ рд▓рд┐рдП impl FillAsign{
fn рднрд░реЗрдВ (рдФрд░ рд╕реНрд╡рдпрдВ рдореНрдпреВрдЯ рдХрд░реЗрдВ) {...}
}
(рд╕реНрдЯреНрд░рд┐рдВрдЧ :: рдирдпрд╛ ("рдПрдмреАрд╕реА") .. рд╕реНрдЯреНрд░рд┐рдВрдЧ :: рдирдпрд╛ ("рдПрдл"))ред рднрд░реЗрдВ () // "abcdef"
(рд╕реНрдЯреНрд░рд┐рдВрдЧ :: рдирдпрд╛ ("рдПрдмреАрд╕реА") .. = рд╕реНрдЯреНрд░рд┐рдВрдЧ :: рдирдпрд╛ ("рдПрдл"))ред рднрд░реЗрдВ () // ()-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-281861478 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3n39uqbADB1rNtBh3PBTRY2XBXOUNks5rfOD-gaJpZM4F4LbW
.
@durka @nikomatsakis рдареАрдХ рд╣реИ, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЬрд▓реНрдж рд╣реА рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдЕрдЬреАрдм рд╣реИ рдФрд░ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдмрджрд▓рдирд╛ рднреА рд╣реЛрдЧрд╛ред
@pornel ...
рдХреЛ match
рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рд╕реЗ рд╕рдВрдЧрддрддрд╛ рдЯреВрдЯ рдЬрд╛рдПрдЧреА, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдЕрднреА рднреА ...
рд╕рдмрд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд▓рдЧрддрд╛ рд╣реИ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд░реВрдмреА рдХрд╛ рд╕рдЯреАрдХ рдЙрд▓рдЯрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд░реВрдмреАрд╡рд╛рджрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЗрд╕реА рддрд░рд╣ рдХреА рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдкрд░ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИ)ред
@ hyst329 рд▓реЗрдХрд┐рди ...
рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдкреНрд░рддрд┐ рдЕрдзрд┐рдХ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд▓рд╛рдкрддрд╛ рд╣реЛрдиреЗ рдпрд╛ рдПрдХ .
рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдПрдХ рдирдпрд╛ рдЕрд░реНрде рдорд┐рд▓реЗрдЧрд╛
рдмрд╣рд┐рд╖реНрдХрд░рдг рдЪреАрдЬреЛрдВ рдХреЛ рдирд╣реАрдВ рддреЛрдбрд╝рддрд╛ рд╣реИред рдкреБрд░рд╛рдиреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдореМрдЬреВрджрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдФрд░ rustfmt рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдФрд░ rustfmt рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП rustfmt рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рджреГрдврд╝рддрд╛ рд╕реЗ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВред "рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ" рдореЛрдб рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдпрд╣ ...
рдХреЗ рдлрд╝реБрдЯрдЧрди-рдПрд╕реНрдХ рдЧреБрдгреЛрдВ рдХреЛ рдмрдврд╝рд╛ рджреЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЪреБрдкрдЪрд╛рдк рдЯрд╛рдЗрдкреЛ рдХреЛ рдЙрди рдЪреАрдЬреЛрдВ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЕрдзрд┐рдХ рдЙрджреНрджреЗрд╢реНрдпрдкреВрд░реНрдг рджрд┐рдЦрддреА рд╣реИрдВред (рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЙрдиреНрд╣реЗрдВ рдмрд╛рдж рдХреА рдкрд░реАрдХреНрд╖рд╛ рдореЗрдВ рдирдЬрд╝рд░рдЕрдВрджрд╛рдЬ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред)
"рдХреГрдкрдпрд╛ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ рдФрд░ ..
рдпрд╛ ..=
" рдХреА рдирд╕ рдореЗрдВ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдЪреЗрддрд╛рд╡рдиреА, рдЬрд┐рд╕реЗ рдСрдЯреЛ-рдлрд┐рдХреНрд╕ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рдореМрдЬреВрджрд╛ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реЛрдЧрд╛ рдорд╛рдирд╡реАрдп рднреВрд▓ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ред
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдореИрдВ рдкреИрдЯрд░реНрди рдореЗрдВ рдореМрдЬреВрджрд╛ ...
рд╕рдВрджрд░реНрдн рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛, рдЬрд╣рд╛рдВ рдХреЛрдИ рдлрд╝реБрдЯрдЧрди рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЬрдВрдЧ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдлрд╝реБрдЯрдЧрди-рдореБрдХреНрдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ рдЬрд╣рд╛рдВ рдкреИрдЯрд░реНрди рдХреЗрд╡рд▓ ...
рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗрд╡рд▓ ..
рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рджреЛрдиреЛрдВ рдЯрд╛рдЗрдкреЛ рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИрдВред
рдмреЗрд╢рдХ рдореИрдВ ...
рдХреЛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ ..=
рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рдЯрд╛рдЗрдкреЛ рдХреЛ рд╕реНрдерд╛рдпреА рдмрдирд╛ рджреЗрдЧрд╛ред
рдЖрд╣ред рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреВрд▓ рдЧрдпрд╛ рдерд╛ред рдореБрдЭреЗ рдпрд╛рдж рджрд┐рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдпреЗ рдзрдиреНрдпрд╡рд╛рджред
@adelarsq рджрд░рдЕрд╕рд▓, 'a'..'z'
рдпрд╛ 128u8..255u8
рдЬреИрд╕реА рд╕рд╛рдорд╛рдиреНрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ cargo-clippy
рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рд╕рд╛рде рд╣реА, ..
рдФрд░ ...
рдХреА рдЪреМрдбрд╝рд╛рдИ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рд╣реИ (рдЬрдм рдореЛрдиреЛрд╕реНрдкреЗрд╕реНрдб рдлрд╝реЙрдиреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЖрдо рддреМрд░ рдкрд░ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕реНрд░реЛрдд рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ - рди рдХреЗрд╡рд▓ рдЬрдВрдЧ) .
рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ тАж
рдмрдЬрд╛рдп ...
(рдпреВрдирд┐рдХреЛрдб рдХреНрд╖реИрддрд┐рдЬ рдЕрдВрдбрд╛рдХрд╛рд░) рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрдо рд╕реЗ рдХрдо рдХреЛрдИ рднреА рдЗрд╕реЗ рджреБрд░реНрдШрдЯрдирд╛ рд╕реЗ рдЯрд╛рдЗрдк рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдУрд╣ рдХреЛрдИ рднреА рд▓реЛрдЧ рдЗрд╕ рд╕реБрдЭрд╛рд╡ рдХреЛ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рдирд╣реАрдВ рд▓реЗ рд░рд╣реЗ рдереЗ: рд░реЛрдирд╛: рд╢реЛрд░ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред
рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛, рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдореИрдВрдиреЗ рдЪреЗрдХ рдХрд┐рдпрд╛ рдерд╛ рдХрд┐ Google рдбреЙрдХреНрд╕ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ ... рдХреЛ рдЗрд▓рд┐рдкреНрд╕рд┐рд╕ рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рддрд╛ рд╣реИред рдЯреЗрдХреНрд╕реНрдЯ рдПрдбрд┐рдЯрд┐рдВрдЧ рдЙрджреНрдпреЛрдЧ рдореЗрдВ рдкреНрд░рдореБрдЦ рдЦрд┐рд▓рд╛рдбрд╝реАред
рд╕рд╛рде рд╣реА, рд╣рд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдЖрд╕рд╛рдиреА рд╕реЗ рд▓рд┐рдЦреЗрдВ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдВрдкреЛрдЬрд╝ рдХреБрдВрдЬреА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ ред . рдЬрдм рд╡реЗ рдЪрд╛рд╣рддреЗ рд╣реИрдВ тАж
рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдореИрдВ numpad рдХреЗ рд╕рд╛рде Alt + 0133
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдВрдбрд╛рдХрд╛рд░ рдЯрд╛рдЗрдк рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ! тАж
рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдХреЛрдбрдкреЙрдЗрдВрдЯ-рдЖрдзрд╛рд░рд┐рдд рддрдВрддреНрд░ X11-рдЖрдзрд╛рд░рд┐рдд рдбреЗрд╕реНрдХрдЯреЙрдк рдкрд░ рд╕реНрдЯреИрдХ рдХреА рд╡рд┐рднрд┐рдиреНрди рдкрд░рддреЛрдВ рдкрд░ рдореМрдЬреВрдж рд╣реИрдВ (рдореБрдЭреЗ GTK+ рдФрд░ X11 рдЗрдирдкреБрдЯ рд╕реНрдЯреИрдХ рдХреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕реНрд╡рддрдВрддреНрд░ рд╕рдорд╛рдзрд╛рди рдпрд╛рдж рд╣реИрдВ) рд▓реЗрдХрд┐рди рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХреЛрдбрдкреЙрдЗрдВрдЯ рдпрд╛рдж рд░рдЦрдирд╛ рдПрдХ рдмрдбрд╝реА рдкрд░реЗрд╢рд╛рдиреА рд╣реИред
рд▓рд┐рдЦреЗрдВ рдПрдХ рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдпреБрдХреНрдд рд╕рдорд╛рдзрд╛рди рд╣реИред
рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдХрд┐ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдВрдбреЛрдЬрд╝ Alt рдЕрдиреБрдХреНрд░рдо Alt + 219
рдЬреЛ рдореИрдВрдиреЗ рдПрдХ рдмрдЪреНрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдмрдирд╛рдП рдЧрдП рд╕рднреА рдбреЙрд╕ рдмреИрдЪ рдлрд╝рд╛рдЗрд▓ рдореЗрдиреВ рд╕реЗ рдХрд┐рдпрд╛ рд╣реИред
рд╡рд░реНрддрдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдореМрдЬреВрдж рд╣реИ, рдЖрдЗрдП рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдерд┐рд░ рдХрд░реЗрдВ рдФрд░ рдЗрд╕ рдЕрдВрддрд╣реАрди рдмрд╛рдЗрдХрд╢реЗрдбрд┐рдВрдЧ рдХреЛ рд░реЛрдХреЗрдВред
рд╡рд░реНрддрдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╣реИ рдЬреЛ рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рдХрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдиреБрдХрд╕рд╛рди рд╣реИрдВред рдпрд╣ рд╕рд┐рд░реНрдл рдмрд╛рдЗрдХ рд╢реЗрдбрд┐рдВрдЧ рдирд╣реАрдВ рд╣реИ - рдЗрд╕реЗ рд╕рд╣реА рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдкреВрд░реЗ рдзрд╛рдЧреЗ рдХреЛ рдЫреЛрдбрд╝рдХрд░, ..=
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдЕрдм рддрдХ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕реНрд╡реАрдХреГрддрд┐ рдорд┐рд▓реА рд╣реИ...
рдореБрдЭреЗ рдРрд╕рд╛ рдорд╣рд╕реВрд╕ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рд╕рдордп рдПрдХ рдорд░реЗ рд╣реБрдП рдШреЛрдбрд╝реЗ рдХреЛ рдкреАрдЯ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ... ..
рдФрд░ ...
рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рд╡рд╕реНрддреБрддрдГ рдЖрдкрдХреЗ рд╕рдмрд╕реЗ рдЫреЛрдЯреЗ рд╕рдВрднрд╡ рдЪрд░рд┐рддреНрд░ рдХреА рдПрдХ рдкреНрд░рддрд┐ рд╣реИред рд╕рдорд╛рди рд╡рд░реНрдгреЛрдВ рдХреЗ рд╕рдореВрд╣ рдХреЗ рд╕рд╛рде рдорд┐рд╢реНрд░рд┐рдд, рдЯрд╛рдЗрдк рдпрд╛ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдПрдХ рдЕрддреНрдпрдВрдд рд╕рд╛рдорд╛рдиреНрдп рдФрд░ рдЕрдХреНрд╕рд░ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓реА-рдХрдард┐рди-рд╕реЗ-рдЦреЛрдЬ рддреНрд░реБрдЯрд┐ рд╡рд░реНрдЧ (рдСрдл-рдмрд╛рдп-рд╡рди рддреНрд░реБрдЯрд┐рдпрд╛рдВ) рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ рдЬреЛ рдЕрдиреНрдпрдерд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдкреНрд░рднреЗрджреНрдп рд╣реИрдВ рджреЛрдиреЛрдВ рдЖрджрдореА рдФрд░ рдорд╢реАрди рдХреЛред
рдпрд╛ рд╣рдо рд╕рдЪрдореБрдЪ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдХреЛрдИ рдЕрдиреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рддрд░рдл рдореИрдВ рдЙрд╕ рдЪрд┐рдВрддрд╛ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ .. рджреВрд╕рд░реА рддрд░рдл, рдореМрдЬреВрджрд╛ ...
рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдорд╛рд╡реЗрд╢реА рд╣реИ, рдЬреЛ рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрдВрдЧ рдореЗрдВ рдХрд╣реАрдВ рдФрд░ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд╕рд╛рде рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдЧрдд рдмрдирд╛рддрд╛ рд╣реИред
рдФрд░ рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЕрдВрддрд░ рдХреЛ рдкрд╣рдЪрд╛рдирдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рджреГрд╖реНрдЯрд┐ рд╡рд╛рд▓реЗ рд▓реЛрдЧ, рдпрд╛ 4k рдореЙрдирд┐рдЯрд░ рдФрд░ 10pt рдлрд╝реЙрдиреНрдЯ рдХреЗ рд╕рд╛рде, рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдо рд╕рд╣рдорддрд┐ ..=
рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рднреА рдареАрдХ рд╣реВрдВред
рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ, рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╣ рд╕реНрдерд┐рддрд┐ рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВрдиреЗ рдЧрд▓рддреА рд╕реЗ ...
рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдерд╛ рдЬрдм рдореЗрд░рд╛ рдорддрд▓рдм ..
рдФрд░ рдлрд┐рд░ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рдореЗрд░реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдиреЗ рдЕрдЬреАрдм рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ред
рддреЛ рд╣рд╛рдБ, рдЕрдзрд┐рдХ рджреГрд╢реНрдпрдорд╛рди рдЕрдВрддрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ ..=
рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
@rust-lang/lang рдЪрд░реНрдЪрд╛ рдХреЗ рд▓рд┐рдП рдирд╛рдорд╛рдВрдХрдиред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд╕рд┐рд░реНрдл ..=
рдЕрдкрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕реЗ рдПрдХ рджрд┐рди рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреНрдпрд╛ рд╣рдореЗрдВ рд╕рдВрд╢реЛрдзрд┐рдд RFC рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдЗрд╕реЗ рдХрд░ рд╣реА рдбрд╛рд▓реЛ? рдХреНрдпрд╛ рдЗрд╕рдореЗрдВ рдкреИрдЯрд░реНрди рдореЗрдВ рдореМрдЬреВрджрд╛ ...
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ? (рдореИрдВ рдРрд╕рд╛ рдорд╛рдирддрд╛ рд╣реВрдВред)
рдореИрдВ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП ...
рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╣реВрдВред рдореИрдВ рдЕрдЧрд░ рдпрд╣ рдЗрд╕ рд╕реВрддреНрд░ рдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрд░рдПрдлрд╕реА рд╕реВрддреНрд░ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдореЗрдВ ...
рдЬрд╛ рд░рд╣рд╛ рдЕрдиреБрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдорд╛рди рджрд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП ..
, рд╣рдо рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ...
рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╡реИрд░рд┐рдПрдбрд┐рдХ рдЬреЗрдирд░рд┐рдХ рдХреЗ рд▓рд┐рдП
..=
рд╕реНрдкрд╖реНрдЯ рд▓рдЧрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреА рд╕рд╛рдкреЗрдХреНрд╖ рдХреБрд░реВрдкрддрд╛ ..
рд╕реЗ рдХрдо рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдЙрдЪрд┐рдд рд╣реИред
рдХреНрдпрд╛ рдЗрд╕рдореЗрдВ рдкреИрдЯрд░реНрди рдореЗрдВ рдореМрдЬреВрджрд╛ ... рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ? (рдореИрдВ рдРрд╕рд╛ рдорд╛рдирддрд╛ рд╣реВрдВред)
рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд▓рдЧрддрд╛ рд╣реИред ...
рдкрд░ рдЪреЗрддрд╛рд╡рдиреА рджреЗрдВ рдФрд░ рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рдкреИрдЯрд░реНрди рдореЗрдВ ..
рдФрд░ ..=
рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВред
рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рдкреЗрд╢ рдХрд░рдиреЗ рд╕реЗ рд╕рд╛рд╡рдзрд╛рди рд░рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдХрд░рдг рдХреЗ рдмрд┐рдирд╛ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди ...
рд╕реЗ ..=
рдПрдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рд░рд▓ рдкрд░рд┐рд╡рд░реНрддрди рд╣реИред рдЬрдм рддрдХ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХреЛрдИ рдЙрдкрдХрд░рдг рди рд╣реЛ, рддрдм рддрдХ рд╣рдо рдЗрд╕реЗ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдмрдирд╛рддреЗ рд╣реБрдП рдкрджрд╛рд╡рдирдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рд╕реНрдердЧрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд░ рдХреЛрдИ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреНрдпрд╛ рд╕реЛрдЪрддрд╛ рд╣реИ?
рдореИрдВ ...
рдкрдХреНрд╖ рдореЗрдВ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ "рд╕рд╛рдорд╛рдиреНрдп" рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ; рдореИрдВ ..=
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдХрд┐рд╕реА рднреА рднрд╛рд╖рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛, рд▓реЗрдХрд┐рди рдХрдИ рдЬреЛ ..
рдФрд░ ...
ред
рдпрджрд┐ ..=
рдЦрд┐рд▓рд╛рдл рднрд╛рд╡рдирд╛ рдордЬрдмреВрдд рд╣реИ, рддреЛ рдореИрдВ рджреГрд╢реНрдп рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдлрд┐рд░ рд╕реЗ рдореБрдХреНрдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ (рдЗрд╕рдХреЗ рдмрдЬрд╛рдп (a..b).inclusive()
рд╡рд┐рдзрд┐ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛, рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд▓рдЧрддрд╛ рд╣реИ) рдХреЗ рд╕рд╛рде рдЬрд╛рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рд╡рд┐рд╡рд┐рдз рдЬреЗрдирд░рд┐рдХ рдХреЗ рд▓рд┐рдП ...
рдКрдкрд░ред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: (a..b).inclusive()
рдЦрд┐рд▓рд╛рдл рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реНрдХ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА ...
рдореЗрдВ match
рдФрд░ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдирдпрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред :рдЕрд╕реНрдкрд╖реНрдЯ:
@steveklabnik рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдпрджрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ (рдмрд╣реБрдд рд▓рдВрдмреЗ) рдзрд╛рдЧреЗ рдореЗрдВ рдХрд╣реАрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди: рдЕрдиреНрдп рднрд╛рд╖рд╛рдПрдВ рдХреНрд░рдорд╢рдГ рдЕрдирдиреНрдп рдФрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП ..
рдФрд░ ...
рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ
рдЬрдВрдЧ рдХрд╛ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рд╕реЗ рдЙрдкрдпреЛрдЧреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдФрд░ рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХрд╛ рдЗрддрд┐рд╣рд╛рд╕ рд╣реИ, рд▓реЗрдХрд┐рди рдЪреБрдирд┐рдВрджрд╛ рд░реВрдк рд╕реЗ , рдФрд░ рдЬрд╣рд╛рдВ рдЙрдкрдпреБрдХреНрдд рд╣реЛ рд╡рд╣рд╛рдВ рдЪреАрдЬреЛрдВ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдпрд╛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдирд╛ред
@joshtriplett рд░реВрдмреА рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд┐рдкрд░реАрдд рдЕрд░реНрдереЛрдВ рдХреЗ рд╕рд╛рде ( ..
рд╕рдорд╛рд╡реЗрд╢реА рд╣реИ, ...
рдЕрдирдиреНрдп рд╣реИ)ред рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд░реВрдмреА рдореЗрдВ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛, рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдФрд░ рднреА рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рднреНрд░рдорд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдкреАрдЫреЗ рдХреА рдУрд░ред
@joshtriplett рдЬрд┐рд╕реЗ рдореИрдВ рд╕рдмрд╕реЗ рдЬреНрдпрд╛рджрд╛ рдкрд░рд┐рдЪрд┐рдд рд╣реВрдВ рд╡рд╣ рд░реВрдмреА рд╣реИ; рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдЗрд╕реЗ рдкрд░реНрд▓ рд╕реЗ рдорд┐рд▓рд╛ рд╣реИ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рдирд╣реАрдВ рд╣реИред рдореИрдВ ..=
рдореБрдХрд╛рдмрд▓реЗ рд░реВрдмреА рд╕реЗ рдкреАрдЫреЗ рдХреА рдУрд░ рдЕрд░реНрдерд╢рд╛рд╕реНрддреНрд░ рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рдареАрдХ рд╣реВрдВред
рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдореИрдВ рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдкрд░ рдПрдХ рд╕реНрдерд┐рд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛, рдФрд░ рдпрд╣ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ ..=
рдХреЗ
@steveklabnik рд╕реНрд╡рд┐рдлреНрдЯ ..<
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рд╣реИ рдирд╛? рдЬреЛ ..=
рд╕рдорд╛рди рд▓рдЧрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рднреА рдмрджрддрд░, рдЗрд╕рдореЗрдВ рдпрд╣ (рдЖрдИрдПрдордУ) рдЧрд▓рдд рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдХрд░рддрд╛ рд╣реИред =)
рд╕реНрд╡рд┐рдлреНрдЯ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ..< рдЕрдирдиреНрдп рдХреЗ рд▓рд┐рдП рдФрд░ ... рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП (рдЙрдирдХреА рд╢рд░реНрддреЗрдВ рд╣реИрдВ
"рдЖрдзрд╛ рдЦреБрд▓рд╛" рдФрд░ "рдмрдВрдж")ред
рдореБрдЭреЗ рдЕрднреА рднреА рдкрд╕рдВрдж рд╣реИ ..< (рд╕рд╛рде рдореЗрдВ .. рд╢реЙрд░реНрдЯрд╣реИрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ) рдФрд░ ..=ред
рд▓реЗрдХрд┐рди рдПрдХ рдФрд░ рдЦреБрд▓рд╛ рдкреНрд░рд╢реНрди (рд╢рд╛рдпрдж рдЗрд╕ рдЯреНрд░реИрдХрд┐рдВрдЧ рдореБрджреНрджреЗ рдХреЗ рджрд╛рдпрд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ) рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдо рдмрдВрдж рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП "рд╕рд┐рд░реНрдл" рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрдкрдирд╛рддреЗ рд╣реИрдВ, рдпрд╛ рдкрд╣рд▓реЗ рдмрд┐рдВрджреБ рдХреЗ рд╕рд╛рде рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ (рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕?) >..=.
рдЧреБрд░реБ, рдорд╛рд░реНрдЪ 16, 2017 рдЕрдкрд░рд╛рд╣реНрди 2:19 рдмрдЬреЗ, рдирд┐рдХреЛ рдорд╛рддреНрд╕рд╛рдХрд┐рд╕ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:
@steveklabnik https://github.com/steveklabnik рд╕реНрд╡рд┐рдлреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ..<, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ,
рдЕрдзрд┐рдХрд╛рд░? рдЬреЛ ..= рдХреЗ рд╕рдорд╛рди рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рднреА рдмрджрддрд░, рдЗрд╕рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рд╣реЛрддрд╛ рд╣реИ
(рдЖрдИрдПрдордУ) рдЧрд▓рдд рдорд╛рдорд▓рд╛ред =)-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-287147321 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3n0Wop5fJh9HVo7pSqo0riHm96Gm4ks5rmX1BgaJpZM4F4LbW
.
рдореБрдЭреЗ рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ рдореЗрдВ inclusive
рдлрд╝рдВрдХреНрд╢рди рд╣реЛрдиреЗ рдкрд░ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛:
for x in inclusive(1..10) {
}
рдореИрдВрдиреЗ рдХрднреА рдорд╣рд╕реВрд╕ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдХрд┐ рдореИрдЪ рдХреЗ рд╕рд╛рде рд╕рдорд░реВрдкрддрд╛ рдПрдХ рд╕рдореНрдореЛрд╣рдХ рддрд░реНрдХ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдордиреЗ рд╡рд┐рд╢реЗрд╖ ..
рдкреИрдЯрд░реНрди рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЙрдиреНрд╣реЗрдВ рднреА рдирд╛рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ - рдкреИрдЯрд░реНрди рдореЗрдВ рдПрдХ рдореВрд▓реНрдп рдЕрдм рдкреИрдЯрд░реНрди рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИ! рдХрд┐рд╕реА рд╢реНрд░реЗрдгреА рдХрд╛ рдорд┐рд▓рд╛рди рдХрд┐рд╕реА рд╢реНрд░реЗрдгреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддрд┐ рд╕реЗ рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рднрд┐рдиреНрди рд╣реИ, рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рд╕рдордорд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрдЧрд░ рдпрд╣ рдЕрднреА рднреА рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рддреЛ рдореБрдЭреЗ рдкреИрдЯрд░реНрди рдореЗрдВ ..
рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдиреЗ рдХреА рд╣рд▓реНрдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдирд╣реАрдВ рд╣реИ?
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..=
рдФрд░ ...
рд╕рд╛рде рдбрд╛рдЙрдирд╕рд╛рдЗрдбреНрд╕ рджреЛрдиреЛрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ - ..=
рдХрд╛рдлреА рдЕрдЬреАрдм рд╣реИ, рд▓реЗрдХрд┐рди ...
1 рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдмрдВрдж рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИред
рдмрдЧ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреА рдХрднреА рди рдЦрддреНрдо рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдХреНрд╖рдорддрд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдЕрдЬреАрдм рджрд┐рдЦрдиреЗ рд╡рд╛рд▓рд╛ рдСрдкрд░реЗрдЯрд░ рд╣реЛрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ (рд╣рд░ рднрд╛рд╖рд╛ рдЙрди рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддреА рд╣реИ рдЬреЛ рджреВрд╕рд░реЛрдВ рдХреЗ рдкрд╛рд╕ рдирд╣реАрдВ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд┐рдлреНрдЯ рдореЗрдВ ..<
, рдПрдл # рдФрд░ рд╕реНрдХрд╛рд▓рд╛ рдореЗрдВ рд╕рднреА рдСрдкреНрд╕)ред рд▓реЛрдЧреЛрдВ рдХреЛ рд╡реИрд╕реЗ рднреА рд░рд╕реНрдЯ рдмреБрдХ рдкрдврд╝рдиреА рд╣реЛрдЧреАред
рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд░реВрдмреА рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЛрдЧ рдЬрдВрдЧ рдореЗрдВ рдЖ рд░рд╣реЗ рд╣реИрдВ, рд╣рдореЗрдВ рд░реВрдмреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрд╕реЗ рдкреАрдЫреЗ рдХреА рдУрд░ рдирд╣реАрдВ рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред (рдЗрд╕ рддрд░реНрдХ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐ ...
1 рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдмрдВрдж рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИред)
рдЖрдк рд╕реНрд╡рд┐рдлреНрдЯ рдореЗрдВ ..<
рдХреЛ рдХреИрд╕реЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рд░рд╕реНрдЯ рдореЗрдВ ..=
рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? ..=
рдЗрддрдирд╛ рдЕрдЬреАрдм рдирд╣реАрдВ рд╣реИред
рдкреИрдЯрд░реНрди рдореЗрдВ рд░реЗрдВрдЬ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛ рдЕрднреА рднреА рдПрдХ рдЦреБрд▓рд╛ рдкреНрд░рд╢реНрди рд╣реИ рдФрд░ рд╕рд╛рде рд╣реА AFAIK рднреА рд╣реИред
рдПрдХ рдмрд╛рдд рдХреЗ рд▓рд┐рдП, рд╣рдо рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рдХреНрдпреЛрдВрдХрд┐ Enum::Variant(..)
рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИ
рдорд╛рдиреНрдп рд╣реИ рдФрд░ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХрд╛ рдорддрд▓рдм рд╣реИ Enum::Variant(RangeFull)
рддреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред
рдЧреБрд░реБ Mar 16, 2017 рдореЗрдВ 3:07 рдмрдЬреЗ рдкрд░, Boscop [email protected] рд▓рд┐рдЦрд╛ рд╣реИ:
рдПрдХ рдЕрдЬреАрдм рджрд┐рдЦрдиреЗ рд╡рд╛рд▓рд╛ рдСрдкрд░реЗрдЯрд░ рд╣реЛрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ (рд╣рд░ рднрд╛рд╖рд╛ рдкрд░рд┐рдЪрдп рджреЗрддреА рд╣реИ
рдСрдкрд░реЗрдЯрд░ рдЬреЛ рджреВрд╕рд░реЛрдВ рдХреЗ рдкрд╛рд╕ рдирд╣реАрдВ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП ..< рд╕реНрд╡рд┐рдлреНрдЯ рдореЗрдВ, рдПрдл # рдореЗрдВ рд╕рднреА рдСрдкреНрд╕
рдФрд░ рд╕реНрдХрд╛рд▓рд╛)ред рд▓реЛрдЧреЛрдВ рдХреЛ рд╡реИрд╕реЗ рднреА рд░рд╕реНрдЯ рдмреБрдХ рдкрдврд╝рдиреА рд╣реЛрдЧреАред
рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд░реВрдмреА рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЛрдЧ рдЬрдВрдЧ рдореЗрдВ рдЖ рд░рд╣реЗ рд╣реИрдВ, рд╣рдо
рд░реВрдмреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрд╕реЗ рдкреАрдЫреЗ рдХреА рдУрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред (рддрд░реНрдХ рдХреЗ рдЕрд▓рд╛рд╡рд╛
рдХрд┐ ... 1 рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдмрдВрдж рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдмрдврд╝ рдЬрд╛рддреА рд╣реИред)
рдЖрдк рд╕реНрд╡рд┐рдлреНрдЯ рдореЗрдВ ..< рдХреЛ рдХреИрд╕реЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рд░рд╕реНрдЯ рдореЗрдВ ..= рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-287160485 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3nz9ZNR2utl7LPTVvQPQ_Ma8sDBGuks5rmYhmgaJpZM4F4LbW
.
рдЗрд╕рд▓рд┐рдПред рдореИрдВ slice.get(10...30)
рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдЕрдкрдирд╛ рдХреЗрдХ рднреА рдЦрд╛ рд╕рдХрддрд╛ рд╣реВрдВред
рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рдЖрд╢реНрд╡рд╕реНрдд рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд▓рд┐рдП inclusive(0..10)
рдХреЛ рджреГрдврд╝рддрд╛ рд╕реЗ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ:
slice.get(10...30)
рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддреА рд╣реИ, рдореИрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдкреВрд░рд╛ рдзреНрдпрд╛рди рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рдХрд┐ рд╡рд╣ slice.get(10...30)
рдпрд╛ slice.get(10..30)
ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреА рдирд┐рдХрдЯрддрд╛ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред..=
рдЕрдиреИрдЪреНрдЫрд┐рдХ рд╣реИ рдФрд░ рд╢рд╛рдпрдж рд╕рд╣рдЬ рдирд╣реАрдВ рд╣реИред(0..10).inclusive()
рд╕рдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ рд▓реЗрдХрд┐рди рдХрдо рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, inclusive
рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ рд╢рд╛рдпрдж рджреЛрдиреЛрдВ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдЧреАредрдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:
trait IntoInclusive {
type Inclusive;
fn inclusive(self) -> Self::Inclusive;
}
fn inclusive<T: IntoInclusive>(range: T) -> T::IntoInclusive {
range.inclusive()
}
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдХреЛрдИ рд╕рд╣рдордд рд╣реИ ..= рдЕрдиреИрдЪреНрдЫрд┐рдХ рд╣реИ рдФрд░ рд╢рд╛рдпрдж рдЕрдирдЬрд╛рди рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..=
inclusive()
рдЬреИрд╕реА рд╡рд┐рдзрд┐ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реМрдВрджрд░реНрдпрдкреВрд░реНрдг рдФрд░ рд╕рд╣рдЬ рд╣реИред
(рд╕рд╛рде рд╣реА, рд╣рдо рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ ..=
рд▓рд┐рдП рдХрд┐рддрдиреА рдирд╛рдкрд╕рдВрджрдЧреА рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рдЕрд╡рдЪреЗрддрди (рдпрд╛ рд╕рдЪреЗрдд) рдкреНрд░рдпрд╛рд╕ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ ...
ред)
.inclusive()
рдЗрддрдиреА рдмрд╛рд░ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд▓рдВрдмрд╛ рд╣реИ (рдЙрд╕ рдиреЛрдЯ рдкрд░, рдореБрдЭреЗ рдпрд╣ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ .enumerate()
рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд░реВрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред
рд▓реЗрдХрд┐рди рднрд▓реЗ рд╣реА рд╣рдорд╛рд░реЗ рдкрд╛рд╕ .inclusive()
, рдХреЗрд╡рд▓ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рджреЛ рдирд╣реАрдВред
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдХреЛрдИ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдирд╣реАрдВ рд╣реЛрдиреЗ рд╕реЗ рдЙрдиреНрд╣реЗрдВ match
рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧреАред
рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рд╣рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рдирд┐рдХрд╛рд▓рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ рд╕реНрдХреИрд▓рд╛ рдореЗрдВ ? рддрд╛рдХрд┐ рдореИрдЪ рдореЗрдВ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ, рддрд╛рдХрд┐ рдореИрдЪ рдкрд░реЛрдХреНрд╖ рд░реВрдк рд╕реЗ рдЗрд╕рдХреА unapply
рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред
(рд╕рд╛рде рд╣реА, рд╣рдо рдпрд╣ рднреА рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ ..= рдХреЗ рд▓рд┐рдП рдХрд┐рддрдиреА рдирд╛рдкрд╕рдВрджрдЧреА рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рдЕрд╡рдЪреЗрддрди (рдпрд╛ рд╕рдЪреЗрдд) рдкреНрд░рдпрд╛рд╕ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдирд╣реАрдВ рд╣реИрдВ ....)
рдореБрдЭрд╕реЗ рдХреЛрдИ рдирд╣реАрдВред рдпрд╣ рдПрдХ рддрд░рд╣ рд╕реЗ рджреБрд░реНрднрд╛рд╡рдирд╛ рдХрд╛ рдЖрд░реЛрдк рд╣реИред
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдХреЛрдИ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдирд╣реАрдВ рд╣реЛрдиреЗ рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдорд┐рд▓рд╛рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧреАред
рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдкреИрдЯрд░реНрди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА match
рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡реЗ рд╣реА рдПрдХрдорд╛рддреНрд░ рдкреНрд░рдХрд╛рд░ рдХреА рд░реЗрдВрдЬ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рд╣рдо рдЖрдЬ рдкреИрдЯрд░реНрди рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред
@withboats рд╣рд╛рдБ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдХрд╣рд╛ "рдХреЛрдИ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд╣реАрдВ рд╣реЛрдиреЗ рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдореИрдЪ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧреА"ред рдЕрднреА рдПрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рддрд░реНрдХ .inclusive()
рдЦрд┐рд▓рд╛рдл рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдореИрдЪ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ рдЬрдм рддрдХ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрдХреИрд▓рд╛ рдЬреИрд╕реЗ рдПрдХреНрд╕рдЯреНрд░реИрдХреНрдЯрд░реНрд╕ рди рд╣реЛрдВред рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдкреВрд░рд╛ рдмрд┐рдВрджреБ рдпрд╣ рд╣реИ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдХреЗрд╡рд▓ рдорд┐рд▓рд╛рди рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╡рд░реНрддрдорд╛рди рдХреЗ рдмрдЬрд╛рдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╕рдорд╛рд╡реЗрд╢реА: for i in 1..10! { }
рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛ рдЬрд╛рд╡рд╛/рд╕реА/рд╕реА++ рдХреЗ рд╕рд╛рде 15 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..
рдмрдирд╛рдо ...
рдмрд╣реБрдд рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ рдФрд░ рдЧрд▓рддрд┐рдпреЛрдВ рдХреЛ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рд╕реЗ рдмрдЧ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд░реВрдмреА рдХреЗ рд╕рд╛рде рд╕рдВрдмрдВрдз рдЗрд╕реЗ рдФрд░ рднреА рднреНрд░рдорд┐рдд рдХрд░ рджреЗрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП ..=
рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдмреЗрд╣рддрд░ рд╣реИред
рдореЗрд░реА 'рдЯреЛрдкреА' рдХреЛ рд░рд┐рдВрдЧ рдореЗрдВ рдлреЗрдВрдХрдирд╛:
for i in 1..10^
рдЯреЛрдкреА/рдХреИрд░реЗрдЯ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдкреНрд░рддреАрдХ рд╣реИ рдХрд┐ рд╕рд╣реА рдореВрд▓реНрдп _up_ рддрдХ рдЬрд╛рддрд╛ рд╣реИред
@leebenson рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдпрд╣ рдмреАрдЪ рдореЗрдВ рд╣реЛ, рдмрд╛рд╣рд░ рд╕реЗ рдирд╣реАрдВред
for i in 1..^10
@ retep998 рдореИрдВрдиреЗ рдорд╛рдирд╛ рдХрд┐ рднреЗрдЬрдиреЗ рдХреЗ рдмрд╛рдж ... рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд╣реИред
@ retep998 рдореИрдВ рдЕрдкрдиреЗ рдХреЗ рд╕реБрдЭрд╛рд╡ рдХреА рддрд░рд╣ ..^
рдЬреНрдпрд╛рджрд╛ рдмреЗрд╣рддрд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ ..=
; рдпрд╣ рдЗрд╕рдХреЗ рдЕрд░реНрде рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд▓рдЧрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рд╕рдВрд╡рд░реНрдзрд┐рдд рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ (рдЬреИрд╕реЗ +=
рдФрд░ *=
) рдХреЗ рдПрдХ рдЕрдЬреАрдм рд╕рдВрд╕реНрдХрд░рдг рдХреА рддрд░рд╣ рджрд┐рдЦрдиреЗ рд╕реЗ рдмрдЪрддрд╛ рд╣реИред рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдХреЛрдИ рднреА ...
рд╕реЗ рдХрд╣реАрдВ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред
рдореИрдВ ..^
рдкреАрдЫреЗ рдирд╣реАрдВ рд░рд╣ рд╕рдХрддрд╛ред
рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕реНрддрд░ рдкрд░, рдореБрдЭреЗ рдпрд╣ рдмрд╣реБрдд рдмрджрд╕реВрд░рдд рд▓рдЧрддрд╛ рд╣реИ (рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдХреНрдпреЛрдВрдХрд┐ ..
рдХрдИ рдлреЛрдВрдЯ рдореЗрдВ ^
рд╕реЗ рд▓рдВрдмрд╡рдд рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рд╣реИ)ред
рдПрдХ рдпреВрдЖрдИ/рдпреВрдПрдХреНрд╕ рд▓рдбрд╝рдХреЗ рдХреЗ рд░реВрдк рдореЗрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рдЕрдкрдиреЗ рдЕрдЪреНрдЫреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЪрд╛рд▓рд╛рдХ рд╣реЛрдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред
рдЕрдЧрд░ рдореИрдВ рдХрд┐рд╕реА рдЕрдиреНрдп рднрд╛рд╖рд╛ рд╕реЗ рдЖрддрд╛ рд╣реВрдВ рдФрд░ ..^
рджреЗрдЦрддрд╛ рд╣реВрдВ, рддреЛ рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╕реАрдорд╛ рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдирд╣реАрдВ рдкрд╣рдЪрд╛рди рд╕рдХрддрд╛ (рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ 5..^15
15! - 4!
рд▓рд┐рдП рдХреБрдЫ рдЕрдЬреАрдм рдЖрдВрд╢рд┐рдХ рдлреИрдХреНрдЯреЛрд░рд┐рдпрд▓ рд╢реЙрд░реНрдЯрд╣реИрдВрдб рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
(рдпрджрд┐ рд╣рдо рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рддреЛ ...
рдХрд╛ рдЕрд░реНрде рдХреБрдЫ рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреИрд╕реЗ "рдХреЙрд▓рдмреИрдХ рдпрд╣рд╛рдВ рдбрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ" рдпрд╛ "рдЗрдорд┐рдЯ рдЗрд╡реЗрдВрдЯ" рдЗрд╕рдХреЗ "рд╕рд╛рдордЧреНрд░реА рдЫреЛрдбрд╝реЗ рдЧрдП" рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрддрд╛ рд╣реИ - рдЬреИрд╕реЗ рдЧрджреНрдп рд▓реЗрдЦрди рдореЗрдВ рд╕рдВрд╡рд╛рдж рдореЗрдВ рдЕрд░реНрде, рдмрд╕ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рддрд╛рддреНрдХрд╛рд▓рд┐рдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рдПрдВред рдЗрд╕реЗ рдПрдХ рддреАрд░ рдХреЗ рд╕рдорд╛рди рд╣реЛрдиреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ "рд╕рднреА рддрд░рд╣ рд╕реЗ рдКрдкрд░ рдЬрд╛рддрд╛ рд╣реИ" рдЕрд░реНрде рджреЗрдирд╛ рд╣рд╛рде рдХреА рд╕рдлрд╛рдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рджреВ рдХреА рдЪрд╛рд▓ рдХрд░рдиреЗ рдЬреИрд╕рд╛ рд╣реИ, рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдпрд╣ рдПрдХ рдирд╡рд╛рдЧрдВрддреБрдХ рдХреА рдЕрдкреЗрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рддрд╛ рд╣реИред)
рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, =
рдореЗрдВ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдФрд░ рд╕рдорд╛рдирддрд╛ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рджреЛрдиреЛрдВ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд╕рд╛рд▓ рд╣реИ рдФрд░ ..=
рдХреЗ рд▓рд┐рдП рдХреЛрдИ "рдЕрдЬреАрдм рдШрд╛рддрд╛рдВрдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕" рдЬреИрд╕реА рдЧрд▓рдд рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк " рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ + рд╕рдорд╛рдирддрд╛" рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, "рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд░рдирд╛ рд╣реИ, рдЬреЛ рджрд╛рд╣рд┐рдиреЗ рд╣рд╛рде рдкрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ" ...
рдореБрдЭреЗ рдпрд╣ рднреА рдЪрд┐рдВрддрд╛ рд╣реИ рдХрд┐, рднрд▓реЗ рд╣реА рдореИрдВрдиреЗ рдпрд╣ рдкрд╣рдЪрд╛рдирд╛ рд╣реЛ рдХрд┐ ..^
рд╕рдВрджрд░реНрдн рдореЗрдВ рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд░реЗрдВрдЬ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдерд╛, рдореБрдЭреЗ рдХреЛрдИ рд╕рд╣рдЬ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕рдорд╛рд╡реЗрд╢реА рдпрд╛ рдЕрдирдиреНрдп рдерд╛, рдХреНрдпреЛрдВрдХрд┐ ^
рд▓рд┐рдП рдХреЛрдИ рдЕрд░реНрде рдирд╣реАрдВ рд╣реИ 2..^8
рджреЛ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдУрдкрди-рдПрдВрдбреЗрдб рд░реЗрдВрдЬ рдХреЗ рд▓рд┐рдП рд╢реЙрд░реНрдЯрд╣реИрдВрдб рд╣реИ рдФрд░ рдкрд┐рдЫрд▓реЗ рдЪрд░рдг рдХреЛ 8 рдХреА рд╢рдХреНрддрд┐ рддрдХ рд▓реЗ рдЬрд╛рдХрд░ рдХрджрдо рдЙрдард╛ рд░рд╣рд╛ рд╣реИред (рдпрд╛рдиреА 2..Inf^8
рдХреЗ рд╡рд┐рдкрд░реАрдд 2..+8
"8 рдХреЗ рдЪрд░рдгреЛрдВ рдореЗрдВ 2 рд╕реЗ рдЕрдирдВрдд рддрдХ рдкреБрдирд░рд╛рд╡реГрддрд┐" рдХреЗ рд▓рд┐рдП рдЖрд╢реБрд▓рд┐рдкрд┐ рд╣реИред)
рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рднреА рдмрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ ..=
рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдЧ <
(рдЕрдирдиреНрдп) рдмрдирд╛рдо <=
(рд╕рдорд╛рд╡реЗрд╢реА) рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреЗ рдЖрджреА рд╣реИрдВ рдЬрдм while
рд▓реВрдк рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рд╕реА-рд╕реНрдЯрд╛рдЗрд▓ for
рд▓реВрдкред
@ssokolow рдХрд╛рдиреВрдиреА рд╡рд┐рд╢реНрд▓реЗрд╖рдгред
рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ рдпрд╛ рддреЛ рдкреАрдЫреЗ рд░рд╣ рд╕рдХрддрд╛ рд╣реВрдВ ..=
рдпрд╛ ..^
ред рдпрд╛ рддреЛ рдХреА рд╕рд╣рдЬреАрд╡рди рдореЗрд░реЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ - рдпрд╛рдиреА 'рдЕрдк рдЯреВ рдПрдВрдб рдЗрдХреНрд╡рд▓ рдЯреВ' рдпрд╛ рдмрд╕ 'рдЕрдк рдЯреВ', рдХреНрд░рдорд╢рдГред рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдЙрди рджреЛрдиреЛрдВ рдХрд╛ рдПрдХ рд╣реА рдЕрд░реНрде рд╣реИред
рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬ рдХреЗ рд╕рд╛рде рдЖрдирд╛ рдХрдард┐рди рд╣реЛрдЧрд╛ рдЬреЛ рд╕рднреА рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд░реЗ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╕рднреА рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рд╕реЗ рд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде, рджрд╛рдЧреА рд╕рд╣рдЬреАрд╡рди/рдкреВрд░реНрд╡рд╛рдЧреНрд░рд╣ред рдореИрдВрдиреЗ рд╢реБрд░реБрдЖрдд рдореЗрдВ ^
рдЪрд┐рд╣реНрди _after_ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЬреЛрдбрд╝рд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдкрд╣рд▓реЗ рдбрд╛рд▓рдиреЗ рд╕реЗ 'рд╕реНрдЯреЗрдк' рдпрд╛ рдПрдХреНрд╕рдкреЛрдиреЗрдВрдЯ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреА рднрд╛рд╡рдирд╛ рдереА, рдЬрдмрдХрд┐ рдПрдХ рдкреНрд░рддреНрдпрдп рдиреЗ рд╕реАрдорд╛ рдХреЛ рдмреЗрджрд╛рдЧ рдЫреЛрдбрд╝ рджрд┐рдпрд╛, рдФрд░ рдХрд┐рд╕реА рддрд░рд╣ рд╢реБрджреНрдз рднрд╛рд╡рдирд╛ред рд▓реЗрдХрд┐рди рд╡рд╣ рд╕рд┐рд░реНрдл рдореИрдВ рд╣реВрдВред
рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдмрдирд╛рдо рдХрд┐рд╕реА рд░реВрдк рдореЗрдВ рд╢реЙрд░реНрдЯрд╣реИрдВрдб рдиреЛрдЯреЗрд╢рди рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рдЬреЛ рджрд╛рдПрдВ рд╣рд╛рде рдХреА рд╡реИрд▓ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ +1 рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдкрд╣рд▓реЗ рдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреА рддрд░рд╣ рдорд╣рд╕реВрд╕ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЛ рд╕реМрдВрдкрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рд╕рд╛рдорд╛рдиреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИред рдореБрдЭреЗ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИ ...
, рд▓реЗрдХрд┐рди рджреА рдЧрдИ, рдпрд╣ рд╢рд╛рдпрдж рдирдП рдХрдкрдбрд╝реЛрдВ рдореЗрдВ =
/ ==
рдмрдЧ рд╣реИ рдФрд░ рдкреИрд░ рдореЗрдВ рдХрд┐рд╕реА рдХреЛ рдЧреЛрд▓реА рдорд╛рд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рд╣реИ ...
рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдирд╛рдкрд╕рдВрдж рдХрд░рдиреЗ рд▓рдЧрддреЗ рд╣реИрдВ ..= рдХрд┐рд╕реА рдиреЗ рдХреБрдЫ рднреА рдирдХрд╛рд░рд╛рддреНрдордХ рдирд╣реАрдВ рдХрд╣рд╛
рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ .... рдЗрд╕реЗ рдЪреБрдкрдЪрд╛рдк рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдХреБрдЫ рдЕрдВрдЧреВрдареЗ рдХреЛ рдЫреЛрдбрд╝рдХрд░) I
рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд╛рдКрдВрдЧрд╛ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдФрд░ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реВрдБрдЧрд╛
рдЕрдЧрд░ рд╡реЗ рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реИрдВ рддреЛ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рди рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдгред
рдореБрдЭреЗ рдЗрд╕рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рд╕реЗ рднреА рдирдлрд░рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдЕрдзрд┐рдХ рд╢реЛрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛:
(рдбреЙрдЯ рдХреЛрд▓рди) рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП? рдпрд╣ 3 рдмрд┐рдВрджреБ рд╣реИ рд▓реЗрдХрд┐рди 2 рд╡рд░реНрдг рд╣реИрдВ, рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐
рдЖрдХрд╛рд░ рдЗрд╕реЗ рдЕрд▓рдЧ рдмрдирд╛рддрд╛ рд╣реИ ..
рд╢рдирд┐рд╡рд╛рд░, 18 рдорд╛рд░реНрдЪ, 2017 рдХреЛ рдкреВрд░реНрд╡рд╛рд╣реНрди 11:50 рдмрдЬреЗ, рд▓реА рдмреЗрдиреНрд╕рди рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:
@ssokolow https://github.com/ssokolow рдХрд╛рдиреВрдиреА рд╡рд┐рд╢реНрд▓реЗрд╖рдгред
рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ рдпрд╛ рддреЛ ..= рдпрд╛ ..^ рдкреАрдЫреЗ рд░рд╣ рд╕рдХрддрд╛ рд╣реВрдВред рдпрд╛ рддреЛ . рдХреА рд╕рд┐рдореНрдмреЛрд▓реЙрдЬреА
рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ - рдпрд╛рдиреА 'рдЕрдк рдЯреВ рдПрдВрдб рдЗрдХреНрд╡рд▓ рдЯреВ' рдпрд╛ рдмрд╕ 'рдЕрдк рдЯреВ',
рдХреНрд░рдорд╢ред рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдЙрди рджреЛрдиреЛрдВ рдХрд╛ рдПрдХ рд╣реА рдЕрд░реНрде рд╣реИредрдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬ рдХреЗ рд╕рд╛рде рдЖрдирд╛ рдХрдард┐рди рд╣реЛрдЧрд╛ рдЬреЛ рд╕рднреА рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд░реЗ,
рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╕рднреА рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рд╕реЗ рд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕рдХреЗ рд╕рд╛рде рджрд╛рдЧреА рдЬрд╛рддреЗ рд╣реИрдВ
рд╕рд╣рдЬреАрд╡рди/рдкреВрд░реНрд╡рд╛рдЧреНрд░рд╣ред рдореИрдВрдиреЗ рд╢реБрд░реБрдЖрдд рдореЗрдВ ^ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рдж рдЪрд┐рд╣реНрди рдЬреЛрдбрд╝рд╛, for
рдЙрджрд╛рд╣рд░рдг, рдХреНрдпреЛрдВрдХрд┐ рдкрд╣рд▓реЗ рдбрд╛рд▓рдиреЗ рд╕реЗ 'рдХрджрдо' рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреА рднрд╛рд╡рдирд╛ рдереА
рдпрд╛ рдкреНрд░рддрд┐рдкрд╛рджрдХ, рдЬрдмрдХрд┐ рдПрдХ рдкреНрд░рддреНрдпрдп рдиреЗ рд╕реАрдорд╛ рдХреЛ рдмреЗрджрд╛рдЧ рдЫреЛрдбрд╝ рджрд┐рдпрд╛, рдФрд░ рдХрд┐рд╕реА рддрд░рд╣ рд╢реБрджреНрдз
рднрд╛рд╡рдирд╛ред рд▓реЗрдХрд┐рди рд╡рд╣ рд╕рд┐рд░реНрдл рдореИрдВ рд╣реВрдВредрдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВ рдХрд┐рд╕реА рди рдХрд┐рд╕реА рд░реВрдк рдореЗрдВ рдПрдХ рд╢реЙрд░реНрдЯрд╣реИрдВрдб рдиреЛрдЯреЗрд╢рди рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рдмрдирд╛рдо a
рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд╛рдПрдВ рд╣рд╛рде рдХреЗ рд╡реИрд▓ рдХреЛ +1 рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ
рдЯрд┐рдкреНрдкрдгреА рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЛ рд╕реМрдВрдкрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдмрд╣реБрдд рдЖрдо рд╣реИ
рдПрдХ рд╕рдорд╛рд░реЛрд╣ рдХреЙрд▓ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред рдореИрдВ рднреА рдмреБрд░рд╛ рдирд╣реАрдВ рдорд╛рдиреВрдВрдЧрд╛ ..., рд▓реЗрдХрд┐рди рджреА, рдпрд╣ рд╣реИ
рд╢рд╛рдпрдж = / == рдирдП рдХрдкрдбрд╝реЛрдВ рдореЗрдВ рдмрдЧ рдФрд░ рдХрд┐рд╕реА рдХреЛ рдЧреЛрд▓реА рдорд╛рд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп
рдкреИрд░...-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-287566556 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AIhJ6jWgPwndKaQvVjULlV_OoC6WDO0Cks5rnCeLgaJpZM4F4LbW
.
рдУрд╣, рдХреНрдпрд╛ рдпрд╣ рдЕрднреА рднреА рдмрд╛рдЗрдХ рд╢реЗрдбрд┐рдВрдЧ рдХреЗ рджреМрд░ рдореЗрдВ рд╣реИ? рдореИрдВ
рд╡рд╛рдкрд╕ рдкрдврд╝рдирд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ @nikomatsakis рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдЗрд╕реЗ рдХреЗрд╡рд▓ ..=
рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдПрдХ рджрд┐рди рдХреЙрд▓ рдХрд░реЗрдВред ..
рдмрдирд╛рдо ...
рдХреА рд╕рдорд╛рдирддрд╛ рдмрд╣реБрдд рд╕реВрдХреНрд╖реНрдо рд╣реИ, рдФрд░ рдореИрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп ...
рдЯреЛрдХрди рдХреЛ рд╡реИрд░рд┐рдПрдбрд┐рдХ рдЬреЗрдирд░рд┐рдХ (https://github.com/) рдХреЗ рд▓рд┐рдП рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рд░рд╕реНрдЯ-рд▓реИрдВрдЧ/рдЖрд░рдПрдлрд╕реАрдПрд╕/рдкреБрд▓/1935), рдЬрд╣рд╛рдВ рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджреНрджреЗрд╢реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рджреЛрдиреЛрдВ рдХреЗ рдмреАрдЪ рдХрдо рднреНрд░рдо рдкреИрджрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рднреА рдЖрдзреЗ-рдЦреБрд▓реЗ рд╡реЗрд░рд┐рдПрдВрдЯ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдЗрдЪреНрдЫрд╛ рдЕрднреА рднреА рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ ..
рдФрд░ ..=
рдмрд╛рд╣рд░ рднрд╛рд╖рд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИред .
рдореБрдЭреЗ рдЗрд╕рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рд╕реЗ рднреА рдирдлрд░рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдЕрдзрд┐рдХ рд╢реЛрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ .: (рдбреЙрдЯ рдХреЛрд▓рди) рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП?
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ @ssokolow рдиреЗ рдХреБрдЫ рдмреЗрд╣рддрд░реАрди рдЕрдВрдХ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдП: UI/рдЪрддреБрд░ рд╣реЛрдирд╛ред рдореИрдВ рддрд░реНрдХ рджреВрдВрдЧрд╛ рдХрд┐ рдЖрдкрдХреА рдЖрдВрдЦреЛрдВ рдХреЛ рдЪрдХрдорд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рддреАрд╕рд░реЗ рдмрд┐рдВрджреБ рдХреА рджрд┐рд╢рд╛ рдХреЛ рдХреБрдЫ рдФрд░ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рдирд╛ рд╢рд╛рдпрдж рдЙрд╕ рд╢реНрд░реЗрдгреА рдореЗрдВ рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рддреАрд╕рд░рд╛ рдмрд┐рдВрджреБ рд╣реЛрдиреЗ рдкрд░ _zero_ рдЖрдкрддреНрддрд┐ рд╣реИ, рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐ рдпрд╣ рдЕрдВрддрддрдГ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдХреА рдпрд╛рддреНрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдордЭрд╛рдирд╛ рднреА рдЖрд╕рд╛рди рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЪрддреБрд░ рдХрд╛рдордХрд╛рдЬ рдХреЛ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднрд╛рд╖рд╛ рдкрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреНрдпрд╛ '2 рдбреЙрдЯреНрд╕ рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рд╣реИрдВ; 3 рдбреЙрдЯреНрд╕ рд╕рдорд╛рд╡реЗрд╢реА' рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ _that_ рдХреЛ рд╕рдордЭрдирд╛/рдбреАрдмрдЧ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ?
рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ - рдЕрдВрддрд┐рдо рдирд┐рд░реНрдгрдп рдХреМрди рд▓реЗрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓рд╛ рдХрджрдо рдХреНрдпрд╛ рд╣реИ? рддреАрд╕рд░реЗ рдЪрд░рд┐рддреНрд░ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддреЗ рд╣реБрдП 18 рдорд╣реАрдиреЗ рд╢рд╛рдпрдж рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ _is_ рдмрд╛рдЗрдХ рд╢реЗрдбрд┐рдВрдЧ
рд╕рд╣рдордд, ^ рдпрд╣ рдПрдХ рдХрджрдо рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред
рдЖрдИрдПрдордУ рдЕрдиреНрдп op=
рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрддрддрд╛ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ a ..= b
рдХреЗ рдЕрд░реНрде рдореЗрдВ a = a .. b
, рдХреНрдпреЛрдВрдХрд┐ ..
рд╣реИ рд░реЗрдВрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдСрдкрд░реЗрдЯрд░ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рд╕рд┐рдВрдЯреИрдХреНрдЯрд┐рдХ рд╢реБрдЧрд░ (рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдСрдк рдУрд╡рд░рд▓реЛрдбрд┐рдВрдЧ рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рд╣реИ, рдЬрд╣рд╛рдВ рдХрд┐рд╕реА рднреА рдСрдк рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ op=
, рдФрд░ ..
)ред
рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ ..=
рдбреЙрдХреНрдЯрд░ рдХреЛ рджреЗрдЦреЗ рдмрд┐рдирд╛ рд╕реНрдкрд╖реНрдЯ рд╣реИред рд▓реЗрдХрд┐рди рдПрдХ рдмрд╛рд░ рд▓реЛрдЧреЛрдВ рдиреЗ рдбреЙрдХреНрдЯрд░ рдХреЛ рджреЗрдЦ рд▓рд┐рдпрд╛ рддреЛ рдЙрд╕реЗ рдпрд╛рдж рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╡реИрд╕реЗ рднреА рдбреЙрдХреНрдЯрд░ рдХреЛ рджреЗрдЦрдирд╛ рд╣реЛрдЧрд╛ред
@nikomatsakis рдХреЗ рдирд╛рдорд╛рдВрдХрди рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдХреА рд▓реИрдВрдЧ-рдЯреАрдо рдмреИрдардХ рдореЗрдВ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдЙрд╕ рд╕рдордп рдПрдХ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рд▓реИрдВрдЧ рдЯреАрдо рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдФрд░ рдмрд╛рдЗрдХрд╢реЗрдбрд┐рдВрдЧ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдореБрдЭреЗ рдпрд╣ рднреА рдЪрд┐рдВрддрд╛ рд╣реИ рдХрд┐, рднрд▓реЗ рд╣реА рдореИрдВрдиреЗ рдпрд╣ рдкрд╣рдЪрд╛рдирд╛ рд╣реЛ рдХрд┐
..^
рд╕рдВрджрд░реНрдн рдореЗрдВ рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд░реЗрдВрдЬ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдерд╛, рдореБрдЭреЗ рдХреЛрдИ рд╕рд╣рдЬ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕рдорд╛рд╡реЗрд╢реА рдпрд╛ рдЕрдирдиреНрдп рдерд╛ рдпрд╛ рдирд╣реАрдВ
рдорд╛рдирд╛ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░реНрд▓ 6 рдореЗрдВ рдЗрд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рджреЗрдЦ рдЪреБрдХрд╛ рд╣реВрдВ, рдЬрд╣рд╛рдВ рдЗрд╕рдХрд╛ рдЕрд░реНрде рдЕрдирдиреНрдп рд╣реИ, рдпрд╣рд╛рдВ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЗ рд╡рд┐рдкрд░реАрддред
@solson рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рдмрд╣реБрдд рд╣реА рдЖрдХрд░реНрд╖рдХ рддрд░реНрдХ рд╣реИред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░реНрд▓ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ, .. рдЕрд░реНрде рд╕рдорд╛рд╡реЗрд╢реА (рджреЛрдиреЛрдВ рдкрд░)
рд╕рд╛рдЗрдб) рдФрд░ ^ рджреЛрдиреЛрдВ рддрд░рдл рдЙрд╕ рдмрд╛рдЙрдВрдб рдХреЛ рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рдмрдирд╛рддрд╛ рд╣реИред
рд╢рдирд┐рд╡рд╛рд░, 18 рдорд╛рд░реНрдЪ, 2017 рдХреЛ рд╢рд╛рдо 6:51 рдмрдЬреЗ, рдЬреЛрд╢ рдЯреНрд░рд┐рдкрд▓реЗрдЯ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:
@solson https://github.com/solson рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рдореНрдореЛрд╣рдХ рддрд░реНрдХ рд╣реИ
рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдлред-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-287580739 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3n7Fnn1_t9BkYOhfS-7oCaGlVff2aks5rnF_5gaJpZM4F4LbW
.
рдЗрд╕рд▓рд┐рдП, рдореБрдЭреЗ рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдЦреЗрдж рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рд╣рдордиреЗ @rust-lang/lang рдмреИрдардХ рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА, рддреЛ рд╣рдо рдЖрдо рд╕рд╣рдорддрд┐ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣реЗред @withboats рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХреБрдЫ рдЧрдВрднреАрд░ рдЖрд░рдХреНрд╖рдг рд╣реИрдВ рдЬреЛ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╡реЗ рдЕрдкрдиреЗ рд▓рд┐рдП рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдХреБрдЫ рдкреНрд░рдореБрдЦ рдмрд┐рдВрджреБ рдЬрд┐рди рдкрд░ рд╣рдордиреЗ рдЪрд░реНрдЪрд╛ рдХреА:
x ..= y
рдЕрдкрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдореМрдЬреВрджрд╛ x...y
рдкреИрдЯрд░реНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╣рдЯрд╛рдирд╛ред(x..y).inclusive()
рдпрд╛ рдРрд╕реА рд╣реА рдХреЛрдИ рдЪреАрдЬрд╝ рд▓рд┐рдЦреЗрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдкреИрдЯрд░реНрди рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ (рдЬреЛ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ x...y
рд░реВрдк рдореЗрдВ рд░рд╣реЗрдЧрд╛)ред рдпрд╣ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдХреБрдЫ рдкреНрд░рд╢реНрди рдЙрдард╛рддрд╛ рд╣реИ:match 3 { 1..3 => false, .. }
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдЪрд░реНрдЪрд╛ рд╕реЗ рдЬреЛ рдПрдХ рдмрд╛рдд рдирд┐рдХрд▓реА, рд╡рд╣ рдпрд╣ рдереА рдХрд┐ рд╕рднреА рдкрд░рд╕реНрдкрд░ рд╡рд┐рд░реЛрдзреА рдХрд╛рд░рдХреЛрдВ рдкрд░ рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рдирд┐рд░реНрдгрдп рд▓реЗрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдПрдХ рдирд┐рд░реНрдгрдп рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╕реБрд▓рдЭрддрд╛ рд╣реИ:
рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдореИрдВ рдЗрд╕ рд▓реЗрдЦрди рдХреЛ рд╢реБрд░реВ рдХрд░реВрдВ, рдореИрдВ рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдореБрдЭреЗ рдмрд╣реБрдд рдЕрдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдорд╣рд╕реВрд╕ рд╣реБрдИ рдХрд┐ рдмрд╛рддрдЪреАрдд рдореЗрдВ рд╣рд░ рдкрд▓ рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╣реА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рдереЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдХреЛ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ "рдЕрдирдиреНрдп рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рддрдм рддрдХ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд▓рдЧрддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ," рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдирд┐рдХреЛ рдФрд░ рдЬреЛрд╢ рдЙрд╕ рд╕рдордп рд╕рдорд╛рд╡реЗрд╢реА рд░реЗрдВрдЬ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рдереЗред
(рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рдХреЛ рдХреА рдкреЛрд╕реНрдЯ рдХреЗ рдЖрдЦрд┐рд░реА рд╣рд┐рд╕реНрд╕реЗ рдореЗрдВ, рдкрд╣рд▓реА рдмреБрд▓реЗрдЯ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ "рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рд░реЗрдВрдЬ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди" рдкрдврд╝рддреА рд╣реИ, рдЙрд╕реЗ "рд╕рдорд╛рд╡реЗрд╢реА рд░реЗрдВрдЬ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди" рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдПред)
рд░реЗрдВрдЬ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:
...
рдФрд░ рди рд╣реА ..=
редinclusive(0..10)
рд▓рд┐рдЦреЗрдВрдЧреЗ (рдирд╛рдо рдмрд╛рдЗрдХрд╢реЗрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)редрд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:
рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдХреЗрд╡рд▓ рднреМрддрд┐рдХ рдкрд░рд┐рд╡рд░реНрддрди рдЬреЛ рд╣рдореЗрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╡рд╣ рд╣реИ libs рдкрд░рд┐рд╡рд░реНрддрди: рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдЬреЛрдбрд╝реЗрдВред
рдореЗрд░реЗ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдореМрд▓рд┐рдХ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдореВрд▓реНрдп рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдПрдХ рдЕрд╕рд╛рдорд╛рдиреНрдп рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рддрдереНрдп рд╕реЗ рдкреИрджрд╛ рд╣реБрдЖ рд╣реИ рдХрд┐ 18 рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рдЖрд░рдПрдлрд╕реА рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рд╣рдордиреЗ рдЕрднреА рднреА рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕реНрдерд┐рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ - рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдореБрджреНрджреЛрдВ рдХреЗ рдХрд╛рд░рдг рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЗрд╕рд▓рд┐рдП рдХрд┐ рд╣рдо рдЯреНрд░реЗрдб рдСрдл рд╕реЗ рдЦреБрд╢ рдирд╣реАрдВ рд╣реИрдВред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЗ рднрд╛рд╡реЛрдВ рдХреА рдЕрдХреНрд╕рд░ рдЗрддрдиреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рдПрдХ рд╕реАрдзреЗ рддрд░реАрдХреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдЕрдХреНрд╕рд░ рдЗрддрдирд╛ рдирд╣реАрдВ рдХрд┐ рд╡реЗ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЕрдм рддрдХ рдЪрд░реНрдЪрд╛ рдХрд┐рдП рдЧрдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдХрд┐рд╕реА рднреА рдбрд╛рдЙрдирд╕рд╛рдЗрдб рдХреЛ рджреВрд░ рдХрд░ рд╕рдХреЗрдВред
рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рд╕рдорд╛рдзрд╛рди рдиреЗ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрд╡-рджрд╕реНрддрд╛рд╡реЗрдЬреАрдХрд░рдг рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ 0...10
рдпрд╛ 0..=10
рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╡реНрдпрдВрдЬрдХ рд╣реИред рдЪреВрдВрдХрд┐ рдЙрдирдХрд╛ рд╕рд╛рдордирд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХрдо рд╣реА рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдкрд╣рд▓реА рдмрд╛рд░ рдЙрдирдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдмрдбрд╝реА рдмрд╛рдзрд╛ рд╣реЛрдЧреАред
рдпрд╣реА рд╣реИ, рдЕрдЧрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдпрд╣ рднреА рдиреЛрдЯрд┐рд╕ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╡реЗ "рд╕рд╛рдорд╛рдиреНрдп" ..
рд╢реНрд░реЗрдгреА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдпрд╣ ...
рд╕рд╛рде рдмрдбрд╝реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди ..=
рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЖрд╕рд╛рди рд╣реИ, рдХреЛрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдХрд┐рдорд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп, рдЙрд╕ рдПрдХ =
рд╡рд░реНрдг (рдпрд╛ ^
рдпрд╛ :
рдпрд╛ рдЬреЛ рдХреБрдЫ рднреА) рдХреЛ рдпрд╛рдж рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдЕрддрд┐рд░рд┐рдХреНрдд .
рдЬрд┐рддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИред
рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реЛрдЪрддрд╛ рд╣реВрдВ рдХрд┐ ...
рдФрд░ ..=
рдмреАрдЪ "рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рдо рд╕реНрдкрд╖реНрдЯрддрд╛" рд╡реНрдпрд╛рдкрд╛рд░ рдмрдВрдж рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ ...
рдЕрд░реНрде рдХреНрдпрд╛ рд╣реИ (рдЬрдм рддрдХ рдХрд┐ рдЖрдк рд░реВрдмреА рд╕реЗ рдирд╣реАрдВ рдЖ рд░рд╣реЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рджреЛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕реЛрдВ рдХрд╛ рд╡рд┐рдкрд░реАрдд рдЕрд░реНрде рд╣реИ) ..=
, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрдо рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ ред
рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ inclusive(0..10)
рдЬреИрд╕рд╛ рдкреНрд░реАрд▓реНрдпреВрдб рдлрдВрдХреНрд╢рди рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЪрд░реНрдЪрд╛ рдХрд┐рдП рдЧрдП рдХрд┐рд╕реА рднреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рдФрд░ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИред рд╣рд╛рдВ, рдЗрд╕рдХреЗ рдЕрдзрд┐рдХ рд╡рд░реНрдг рдЯрд╛рдЗрдк рдХрд░рдиреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрд╕ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдЙрдкрдпреЛрдЧ рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╣реИред
рдпрд╣ рдХрд┐рд╕реА рднреА рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдФрд░ рдЯреЛрдХрдирд┐рдВрдЧ рдореБрджреНрджреЛрдВ рдХреЛ рднреА рджреВрд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ (рдмрд╣реБрдд рдХрд╖реНрдЯрдкреНрд░рдж) рд╢реНрд░реЗрдгреА рдмрдирд╛рдо рд╡рд┐рдзрд┐ рд╡рд░реАрдпрддрд╛ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ (0..10).filter
рдФрд░ рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдореБрдЦреНрдп рдХрд╛рд░рдг рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ ..
рдирд╣реАрдВ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрд▓рд╛рдЗрд╕ рдкреИрдЯрд░реНрди рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧреА рд╣реИрдВред рдореИрдВ рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд┐рдП рдмрд┐рдирд╛ рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рджреВрд╕рд░рд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдмрд╣реБрдд рдЦрд░рд╛рдм рд╢реИрд▓реА рд╣реИрдВ (рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рд▓реЛрдЧ рдЕрд╕рд╣рдордд рд╣реИрдВ)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
if let 1..10 = x { .. }
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ 10
рдЙрд╕ рдкреИрдЯрд░реНрди рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рд╢рд╛рдорд┐рд▓ рд╣реИред рдирд┐рдХреЛ рдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИ рдЬреЛ 10
рдЙрдкрдЬ рдирд╣реАрдВ рджреЗ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрдбрд╝рд╛ рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡рд┐рд╢реЗрд╖ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╕реНрдЯреНрд░рд╛-рд╢реИрд▓реА рдХреА рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рдорд┐рд╕рд╛рд▓ (рдФрд░ рдХреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ) рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕реМрджрд╛ рд╣реИ рдкрд░реНрд╡рддрдорд╛рд▓рд╛ред рд░рд╕реНрдЯ рдореЗрдВ рдЖрдХрд░, рдореБрдЭреЗ рдЙрдореНрдореАрдж рдереА рдХрд┐ рдЗрдЯрд░реЗрдЯрд┐рд╡ рдФрд░ рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рд░реЗрдВрдЬ рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рд╣реЛрдВрдЧреА, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкреИрдЯрд░реНрди рдХреЗ рд▓рд┐рдП рд╡рд╣ рдЙрдореНрдореАрдж рдирд╣реАрдВ рдереАред
рдЗрд╕рдореЗрдВ "рдСрдл-рдмрд╛рдп-рд╡рди" рдореБрджреНрджрд╛ рднреА рд╣реИ рдЬреЛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ ..
/ ...
рд╣реИред
рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдирд┐рдХреЛ рдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рд╡рд╣ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ:
match x {
0..10 => { ... }
10..20 => { ... }
}
рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджреГрдврд╝рддрд╛ рд╕реЗ рджреЗрдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛:
match x {
0...9 => { ... }
10...19 => { .. }
}
рд╡реИрд╕реЗ рднреА, рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рдирд┐рдХреЛ рдХрд╛ рдорддрд▓рдм рдерд╛ рдХрд┐ рд╡рд╣ рдХрднреА-рдХрднреА рдпреЗ "рдмрд┐рд▓реНрдХреБрд▓ рдЖрд╡рд╢реНрдпрдХ" рдкрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдФрд░ рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рд╡рд╛рдж рд╕реБрдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдЪреВрдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдХреЙрдиреНрд╕реНрдЯреЗрдХреНрд╕ рд╣реЛрдирд╛ рд╣реИ, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП 'рдмрд┐рд▓реНрдХреБрд▓ рдЬрд░реВрд░реА' рдЪреАрдЬ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 'рдЕрдЪреНрдЫрд╛ рд╣реЛрдирд╛' рдЬреИрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИред
рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЗ рднрд╛рд╡реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгреА рдкреИрдЯрд░реНрди рдкрд░ рдмреЛрд▓рдмрд╛рд▓рд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдорд╣рд╕реВрд╕ рдХрд░рддрд╛ рд╣реВрдВред
рдирд┐рдХреЛ рдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рднрд╛рд╡ рдФрд░ рдкреИрдЯрд░реНрди рдореЗрдВ ..
рдФрд░ ...
рджреЛрдиреЛрдВ рдХрд╛ рд╣реЛрдирд╛ рдЙрд╕рдХреЗ рд▓рд┐рдП рдПрдХрд░реВрдкрддрд╛ рдХреЗ рдХрд╛рд░рдг рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИред рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдЗрд╕ рддрд░реНрдХ рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реВрдВред рдПрдХ рд╕реАрдорд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░рдирд╛ рдФрд░ рдПрдХ рд╕реАрдорд╛ рдкрд░ рдорд┐рд▓рд╛рди рдХрд░рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╛рди рд╕рдВрдЪрд╛рд▓рди рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЙрдирдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рд╣реЛрдЧрд╛ред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЛрдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрдиреЗрдХреНрдЯ рднреА рдирд╣реАрдВ рд╣реИ: 1..10
рдПрдХ рд░реЗрдВрдЬ рдорд╛рди рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ 1...10
рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рди рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдХ рд╕рдВрд░рдЪрдирд╛рддреНрдордХ/рд╡рд┐рдирд╛рд╢рдХрд╛рд░реА рдХрдиреЗрдХреНрд╢рди рд╣реИ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣рдорд╛рд░реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐/рдкреИрдЯрд░реНрди рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред
рдпрд╣ "рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди" рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреИрдЯрд░реНрди рдХреЛ "рдбреЛрдореЗрди рдкреИрдЯрд░реНрди" рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рд╕рд╣реА рд▓рдЧрддрд╛ рд╣реИ, рдЬреЛ рдЧреИрд░-рд╕рдорд╛рдирддрд╛ рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рддрд╛ рд╣реИред
@ рдирд╛рд╡реЛрдВ рдХреЗ рдмрд┐рдирд╛
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдХреЛ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ "рдЕрдирдиреНрдп рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рддрдм рддрдХ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд▓рдЧрддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ," рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдирд┐рдХреЛ рдФрд░ рдЬреЛрд╢ рдЙрд╕ рд╕рдордп рд╕рдорд╛рд╡реЗрд╢реА рд░реЗрдВрдЬ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рдереЗред
рдореЗрд░реЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдордпреЛрдВ рдкрд░ рдЖрд╡рд╢реНрдпрдХ рджреЛрдиреЛрдВ рдЕрдирдиреНрдп рдФрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рдкрд╛рдпрд╛ рд╣реИ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВрдиреЗ рд╕реНрдерд┐рд░ рдЬрдВрдЧ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдирдиреНрдп рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рдЖрд╕рдкрд╛рд╕ +1
рдКрдкрд░реА рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдерд╛ рдмрд╛рдзреНрдп)ред рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдкреИрдЯрд░реНрди рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдЙрд╕ рдиреЗ рдХрд╣рд╛, рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореБрдЭреЗ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реЛрдЧреА, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдореИрдВ рдкреИрдЯрд░реНрди рдореЗрдВ рд╕рдорд╛рд╡реЗрд╢реА рдФрд░ рдЕрдирдиреНрдп рджреЛрдиреЛрдВ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╡реЗ рджреЛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рднреНрд░рдорд┐рдд рд░реВрдк рд╕реЗ рд╕рдорд╛рди рди рджрд┐рдЦреЗрдВ рдЬреИрд╕реЗ ..
рдФрд░ ...
рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рдкреИрдЯрд░реНрди рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдРрд╕реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реЛрдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рд╕рдорд╛рдзрд╛рди рдиреЗ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрд╡-рджрд╕реНрддрд╛рд╡реЗрдЬреАрдХрд░рдг рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ 0...10 рдпрд╛ 0..=10 рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╡реНрдпрдВрдЬрдХ рд╣реИред рдЪреВрдВрдХрд┐ рдЙрдирдХрд╛ рд╕рд╛рдордирд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХрдо рд╣реА рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдкрд╣рд▓реА рдмрд╛рд░ рдЙрдирдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдмрдбрд╝реА рдмрд╛рдзрд╛ рд╣реЛрдЧреАред
рдореИрдВ рдЗрд╕рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдмрд╛рд░-рдмрд╛рд░ рдЖрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдХрдо рдХреЙрдореНрдкреИрдХреНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реЛрдЧреАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдФрд░ рдкреИрдЯрд░реНрди рджреЛрдиреЛрдВ рдореЗрдВ рд╕рдорд╛рд╡реЗрд╢реА рдФрд░ рдЕрдирдиреНрдп рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рддрдВрддреНрд░ рд░рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реЛрдЧреА, рдЕрдЧрд░ рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдкреИрдЯрд░реНрди рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдХреНрд░реЛ рдпрд╛ рд╕рдорд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
@joshtriplett рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬрдм рдЖрдк рдпрд╣ рдХрд╣рддреЗ рд╣реИрдВ:
рдореИрдВрдиреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдордпреЛрдВ рдкрд░ рдЖрд╡рд╢реНрдпрдХ рджреЛрдиреЛрдВ рдЕрдирдиреНрдп рдФрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдкрд╛рдИ рд╣реИрдВ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВрдиреЗ рд╕реНрдерд┐рд░ рд░рд╕реНрдЯ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдирдиреНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдКрдкрд░реА рдмрд╛рдЙрдВрдб рдореЗрдВ +1 рдХреЗ рд╕рд╛рде рдЗрд╕рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рдирд╛ рдерд╛)ред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рднрд╛рд╡реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрджреНрдзреГрдд рдЕрдиреБрднрд╛рдЧ рдкреИрдЯрд░реНрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдерд╛ (рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдЕрдЧрд▓реЗ рдЕрдиреБрдЪреНрдЫреЗрдж рдореЗрдВ рдкреИрдЯрд░реНрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ "рдЖрд╡рд╢реНрдпрдХрддрд╛" рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдЙрд╕ рдЕрдиреБрдЪреНрдЫреЗрдж рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ ) .
рдкреИрдЯрд░реНрди рдХреЗ рд▓рд┐рдП рдпрдерд╛рд╕реНрдерд┐рддрд┐ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдХреЗрд╡рд▓ x...y
рдлрд╝реЙрд░реНрдо рдХреЗ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдкреИрдЯрд░реНрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдмрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛/рдЬрдм рдЖрдкрдХреЛ рд╡рд┐рд╢реЗрд╖ рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рдорд┐рд▓реЗ рд╣реИрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рд╣реИрдВ?
@ рдирд╛рд╡реЛрдВ рдХреЗ рдмрд┐рдирд╛
рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдмрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛/рдЬрдм рдЖрдкрдХреЛ рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рдкреИрдЯрд░реНрди рдорд┐рд▓реЗ рд╣реИрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рд╣реИрдВ?
рдХреБрдЫ рдЗрд╕ рддрд░рд╣
match offset {
0x0200 .. 0x0280 => { /* GICD_ISPENDR<n> */ }
0x0280 .. 0x0300 => { /* GICD_ICPENDR<n> */ }
0x0300 .. 0x0380 => { /* GICD_ISACTIVER<n> */ }
0x0380 .. 0x0400 => { /* GICD_ICACTIVER<n> */ }
0x0400 .. 0x0800 => { /* GICD_IPRIORITYR<n> */ }
}
рдмрдирд╛рдо
match offset {
0x0200 ... 0x027C => { /* GICD_ISPENDR<n> */ }
0x0280 ... 0x02FC => { /* GICD_ICPENDR<n> */ }
0x0300 ... 0x037C => { /* GICD_ISACTIVER<n> */ }
0x0380 ... 0x03FC => { /* GICD_ICACTIVER<n> */ }
0x0400 ... 0x07FC => { /* GICD_IPRIORITYR<n> */ }
}
рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд╣рд▓рд╛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫрд╛ рджрд┐рдЦрддрд╛ рд╣реИред
@withboats рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП, рдХрдИ рдмрд╛рд░ рдореБрдЭреЗ рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгреА рдХреЗ рднрд╛рд╡, рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЗ рднрд╛рд╡ рдФрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЗ рдкреИрдЯрд░реНрди рдЪрд╛рд╣рд┐рдП рдереЗред рдореИрдВ рдЙрд╕ рд╕рдордп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рднреА рдирд╣реАрдВ рд╕рдХрддрд╛ рдЬрдм рдореИрдВрдиреЗ рд╡рд┐рд╢реЗрд╖ рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рд░рдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рд╣реЛ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдЙрди рдкрд░ рднреА рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ред рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЕрдЧрд░ рд╣рдо рд╡рд┐рд╢реЗрд╖ рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рдХреА рдЬрд░реВрд░рдд рдмрд╣реБрдд рд╕рдорд╛рд╡реЗрд╢реА рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рддреЛ рднреНрд░рдорд┐рдд рдерд╛ ...
рдФрд░ рдЕрдирдиреНрдп рд░реЗрдВрдЬ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ ..
ред
@petrochenkov рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ F
рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдереЗ, рди рдХрд┐ C
?
рдореИрдВрдиреЗ рд╣реЗрдХреНрд╕ рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдорд╛рдорд▓реЗ рдореЗрдВ рднрд╛рдЧ рд▓рд┐рдпрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП 0x8000...0x9FFF => /* body */
ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ 0x8000..0xA000
рдореЗрдВ рдХреБрдЫ рдЕрдзрд┐рдХ рд╕рд╣рдЬ рдЧреБрдг рд╣реИрдВ, рдЬреИрд╕реЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреЗ рдмрд┐рдирд╛ рдореИрдВ рддреБрд░рдВрдд рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рд╕реАрдорд╛ рдХрд╛ рдЖрдХрд╛рд░ 0xA000 - 0x8000 = 0x2000
рдФрд░ рдЕрдЧрд▓реА рдЖрд╕рдиреНрди рд╕реАрдорд╛ 0xA000
рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ
рдЗрди рддрдереНрдпреЛрдВ рдХреЛ рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдореЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ +1
рдирд┐рдкрдЯрдирд╛ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЕрдВрддрд░ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдореИрдВ рд░рд╣ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ (рдкреИрдЯрд░реНрди рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рджреЛрдиреЛрдВ) рдЖрдорддреМрд░ рдкрд░ рдореЗрд░реЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реЛрддреА рд╣реИрдВред
@petrochenkov рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рд╣реЗрдХреНрд╕рдбрд┐рдЬрд┐рдЯреНрд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдХреНрдпреЛрдВ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ (рдореИрдВ рдЕрднреА рднреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╡рд╛рдИрдПрдордПрдорд╡реА рд╕реМрджреЗ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ)ред
рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рд╕реНрд▓рд╛рдЗрд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛рдУрдВ рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯреЗрдВрдЧреЗ?
@joshtriplett
рдпрджрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдкреИрдЯрд░реНрди
...
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐..
рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдЕрднреА рднреА рдмрд╣реБрдд рднреНрд░рдорд┐рдд рд╣реВрдВред
рд░рд╕реНрдЯ рдЖрдЬ рдЗрд╕ рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рднреНрд░рдо рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реНрд░реЛрдд рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ?
@solson
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдПрдл рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдереЗ, рд╕реА рдирд╣реАрдВ?
рдирд╣реАрдВ :)
(рд╡реЗ рдЪреАрдЬреЗрдВ 32-рдмрд┐рдЯ рд╣реИрдВ рдФрд░ offset
рдЪрд╛рд░ рдХрд╛ рдЧреБрдгрдЬ рд╣реИред)
@ рдирд╛рд╡реЛрдВ рдХреЗ рдмрд┐рдирд╛
рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рд╣реЗрдХреНрд╕рдбрд┐рдЬрд┐рдЯреНрд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рдХреНрдпреЛрдВ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ (рдореИрдВ рдЕрднреА рднреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╡рд╛рдИрдПрдордПрдорд╡реА рд╕реМрджрд╛ рдЬреИрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ)ред
рдореБрдЭреЗ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╣ рдПрдХ рдордЬрдмреВрдд рд╡рд░реАрдпрддрд╛ рдирд╣реАрдВ рд╣реИ, рдореИрдВ рдЕрднреА рднреА рд╡рд┐рд╢реЗрд╖ рдкреИрдЯрд░реНрди рдФрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рджреЛрдиреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реВрдВ (рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдирд╣реАрдВ, рдпрд╣ рдмрд╣реБрдд рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реЛрдЧрд╛)ред
рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рд╕реНрд▓рд╛рдЗрд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛рдУрдВ рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯреЗрдВрдЧреЗ?
рд╕рд░рд▓рддрд╛! PATTERN..
=> .. @ PATTERN
рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рдореБрдЦреНрдп рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рднрд╛рдЧ рд▓рд┐рдпрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВ рдПрдХ рдЪрд░ рдореЗрдВ рд╕реНрдЯреЙрдк рд╡реИрд▓реНрдпреВ рдореЗрдВ рдЧреБрдЬрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп рд╣реИ рдЬреЛ рдПрдХ рдЪрд░ рдкреНрд░рдХрд╛рд░ рдзрд╛рд░рдг рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХрдорд╛рддреНрд░ рд╕рдорд╛рдзрд╛рди рд╕рдВрдХрд▓рди рд╕рдордп рдкрд░ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХреЛ рд░рджреНрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдВ:
+ 1
рд╕реЗ рдкрд╣рд▓реЗ рдЕрдкрдХрд╛рд╕реНрдЯрд┐рдВрдЧ (рдорд╛рди рд▓реЗрдВ рдХрд┐ рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА u64
рдкрд░ рдирд╣реАрдВ рд╣реВрдВ рдФрд░ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд╣реИ)рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдореЗрдВ + 1
рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрджрдд рдмрдирд╛рдирд╛ рдЬрд╣рд╛рдВ рдЗрд╕рдХрд╛ рдХреЛрдИ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЙрджреНрджреЗрд╢реНрдп рдирд╣реАрдВ рд╣реИ, рдмрд╛рдж рдореЗрдВ cargo fuzz
рдореЗрдВ рдЙрдирдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреИрд░-рддреБрдЪреНрдЫ рддрд░реАрдХрд╛ рд╣реИ ... рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ + 1
рд╕реЗ рдЕрдзрд┐рдХ рд╡рд░реНрдгреЛрдВ рдХреЗ рд╕рд╛рде "рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рд╕реЗ рд╕рдорд╛рд╡реЗрд╢реА рдмрдирд╛рдПрдВ" рдлрд╝рдВрдХреНрд╢рди рдпрд╣ рдЖрднрд╛рд╕ рджреЗрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдПрдХ рдЕрд╕рд╛рдзрд╛рд░рдг рдЪреАрдЬрд╝ рд╣реИрдВ, рдмрдЬрд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдЖрдкрдХреЛ рдЖрджрддрди рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореИрдВ рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реЛрдиреЗ рдХреЗ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдХрд╛рд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реВрдВред рдпрд╣ рдЗрд╕ рдзрд╛рд░рдгрд╛ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдПрдХ рд╣реИрдХ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЕрдирдиреНрдп рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
@ssokolow рд▓реЗрдХрд┐рди рдЙрд╕ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдкреНрд░реАрд▓реНрдпреВрдб рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдЖрд░рд╛рдо рд╕реЗ рдХрд╡рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреЛрдИ рднреА рдпрд╣ рд╕реНрдерд┐рддрд┐ рдирд╣реАрдВ рд▓реЗ рд░рд╣рд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдмрд╕ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдп рд░рдЪрдирд╛рддреНрдордХ рдЪреАрдиреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдпрд╛ рдирд╣реАрдВред
рдореБрдЭреЗ рдкреНрд░реАрд▓реНрдпреВрдб рдлрдВрдХреНрд╢рди рдХрд╛ @withboats рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреВрд╕рд░реА рдЬрдЧрд╣ рдЬрд╣рд╛рдВ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдЕрдзрд┐рдХ рдЖрдо рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдЬрдм рдЖрдк рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА btree (рдпрд╛ рд╕рдорд╛рди рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛) рдкрд░ рдЦреЛрдЬ рдХреА рд╕реАрдорд╛рдПрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗред
рдЬрдм рдЖрдк рдЬрд╡рд╛рдм рджреЗ рд░рд╣реЗ рдереЗ рддреЛ @withboats рдореИрдВрдиреЗ рдЕрдкрдиреА рдкреЛрд╕реНрдЯ рдкрд░ рдереЛрдбрд╝рд╛ рд╕рд╛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЬреЛ рдЬреЛрдбрд╝рд╛ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рджреНрд╡рд┐рддреАрдп рд╢реНрд░реЗрдгреА рдХреЗ рдирд╛рдЧрд░рд┐рдХ рдмрдирд╛рдирд╛, рд╡рд╛рдХреНрдп рд░рдЪрдирд╛рддреНрдордХ рд░реВрдк рд╕реЗ (рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгреА рдореЗрдВ + 1
рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд╕рд╛рде) ), рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рд╕реВрдХреНрд╖реНрдо рдирд┐рд░рд╛рд╢рд╛ рдХреА рддрд░рд╣ рдорд╣рд╕реВрд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд "рдореИрдВ рдЖрдкрдХреЛ cargo fuzz
рдмрд╛рдж рдореЗрдВ рджреЗрдЦреВрдВрдЧрд╛" рдлрд╝реБрдЯрдЧрдиред
рдЕрдЧрд░ рдФрд░ рдХреБрдЫ рдирд╣реАрдВ, рддреЛ рдпрд╣ рдПрдХ рд╢рд┐рдХреНрд╖рдг рдпреЛрдЧреНрдпрддрд╛ рдорд╕реНрд╕рд╛ рд╣реИред
рд░рд╕реНрдЯ рдЕрдкрдиреЗ рдЕрд╕реАрдорд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде Python 3.x рдирд╣реАрдВ рд╣реИред рдЬрдВрдЧ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдЯреНрд░реЗрдб-рдСрдл рдХреЛ рдЫрд┐рдкрд╛рддреА рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореБрдЭреЗ ..=
рдмрдЬрд╛рдп u32
рдФрд░ рджреЛрд╕реНрддреЛрдВ рдХреЗ рдмрдЬрд╛рдп int
ред (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдУрд╡рд░рдлреНрд▓реЛ/рдЕрдВрдбрд░рдлреНрд▓реЛ рддреНрд░реБрдЯрд┐рдпрд╛рдВ cargo fuzz
рдХреЗ "рдЯреНрд░реЙрдлреА рдХреЗрд╕" рдкрд░ рдЕрдм рддрдХ рдХреА рд╕рдмрд╕реЗ рдЖрдо рдмрд╛рдд рд╣реИред)
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдХреГрдкрдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдИ-рдореЗрд▓ рд╕реВрдЪрдирд╛рдУрдВ рдореЗрдВ рджреЗрдЦреЗ рдЧрдП рдХрд┐рд╕реА рднреА рдмрд┐рдЯ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВред рдореИрдВ рдЕрднреА рдЙрдард╛ рдФрд░ рдореИрдВ рдЕрднреА рддрдХ рд╕рднреА рд╕рд┐рд▓реЗрдВрдбрд░реЛрдВ рдкрд░ рдлрд╛рдпрд░рд┐рдВрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
рдореИрдВ inclusive(n..m)
рдХреЛ рдирд┐рд░рд╛рд╢рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рджреЗрдЦрддрд╛... рдореИрдВ рдЗрд╕реЗ рд▓рд┐рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕реНрдкрд╖реНрдЯ рдирд┐рд░реНрдорд╛рдг рд╣реИ рдЬреЛ рдореЗрд░реЗ рдХреЛрдб рдХреЛ n..(m + 1)
рдФрд░ n..=m
рджреЛрдиреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкрдврд╝рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ
n..=m
inclusive(n..m)
IMO рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рд┐рдЦрд╛рдиреЗ рдпреЛрдЧреНрдп рдорд╕реНрд╕рд╛ рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдЪ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреИрдЯрд░реНрди рдХреЗ рдмрдЬрд╛рдп рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╕реАрдорд╛ рдХрд╛ рдкреВрд░реНрдг рдХрд╡рд░реЗрдЬ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рд╣реИред
рд╕рдВрднрд╡рддрдГ рдпрджрд┐ "рдкрд┐рдЫрд▓реЗ рд╕реЗ рдЬрд╛рд░реА рд░рдЦреЗрдВ" рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдерд╛, рддреЛ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рднреА рдХрд░реЗрдЧрд╛ред
BTW, рдЪреВрдВрдХрд┐ рдХреЗрд╡рд▓ рдкрд╣рд▓рд╛ рдкреИрдЯрд░реНрди рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╢реБрд░реБрдЖрддреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЕрдХреНрд╕рд░ рдЫреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
match offset {
0 ... 0x01FF => {}
0 ... 0x027C => { /* GICD_ISPENDR<n> */ }
0 ... 0x02FC => { /* GICD_ICPENDR<n> */ }
0 ... 0x037C => { /* GICD_ISACTIVER<n> */ }
0 ... 0x03FC => { /* GICD_ICACTIVER<n> */ }
0 ... 0x07FC => { /* GICD_IPRIORITYR<n> */ }
}
рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдкрд░рд┐рдкреНрд░реЗрдХреНрд╖реНрдп рдХреА рдмрд╛рдд рд╣реЛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди:
рдЬрдм рдореИрдВ ..
рдФрд░ ..=
рджреЗрдЦрддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ "рд╣реБрд╣ред рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдЗрддрдиреЗ рдЫреЛрдЯреЗ рдЕрдВрддрд░ рдХреЗ рд▓рд┐рдП рджреЛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреНрдпреЛрдВ рд╣реИрдВ", рдЬреЛ рдореБрдЭреЗ рдЙрди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд░реЗрдЧрд╛ рдЬреЛ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ " 1..pivot
рдФрд░ pivot..end
" рдмрдирд╛рдо " x..=y
рдЬрд╣рд╛рдВ y
рдЕрдзрд┐рдХрддрдо рд╕рдВрднрд╡ рдореВрд▓реНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ"ред
рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдореИрдВ рдЕрдиреБрднрд╡реА рдкрд░реНрдпрд╛рдкреНрдд рдЖрджрддрди рдЪрд░ рдЖрдХрд╛рд░реЛрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣реЗ рд╣реЛрдВрдЧреЗ рдЧрдпрд╛, рдореИрдВ рд╕рд┐рд░реНрдл рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рд╣реИ рдерд╛ + 1
рд╕реЗ рдЕрдзрд┐рдХ inclusive()
, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ (рдЕрдЧрд░ рдореИрдВ рднреА рдпрд╣ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛) + 1
рдкреНрд░рд╛рдердорд┐рдХ рд╡рд┐рджреНрдпрд╛рд▓рдп рдХреЗ рдмрд╛рдж рд╕реЗ, рдпрд╣ рдЫреЛрдЯрд╛ рдФрд░ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИ, рдФрд░ рдореЗрд░рд╛ рдЕрдиреБрднрд╡рд╣реАрди рд╕реНрд╡рдпрдВ рдкрд╛рдЗрдерди рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреИрд╕реА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХреЗ рдХрд╛рд░рдг рд▓реЛрдЧреЛрдВ рдХреЛ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: ... рдФрд░ рдпрд╣ рдмрд┐рдВрджреБ 1 рдореЗрдВ рд╡реИрдЪрд╛рд░рд┐рдХ рднреЗрдж рд╣реИ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред (рдЕрд░реНрдерд╛рдд "рдПрдХреНрд╕ рд╕реЗ рдкрд┐рд╡рдЯ рддрдХ" рдФрд░ "рдПрдХреНрд╕ рд╕реЗ рдЕрдВрдд рддрдХ" рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЕрд▓рдЧ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред)
@pornel
рдпрд╣ рднрдпрд╛рдирдХ рд╣реИ
рдЗрд╕ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреЛрдб рдкрдврд╝рдиреЗ рд╡рд╛рд▓реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рд╕реАрдорд╛ рдкреНрд░рд╛рд░рдВрдн рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдХрд┐рд╕реА рднреА рд╕рдорд╛рд╡реЗрд╢реА/рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рдХреЗ рдореБрджреНрджреЛрдВ рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
@ssokolow рдпрд╣ рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ +1
рдПрдХ рдореБрджреНрджрд╛ рдкрд╛рддреНрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдпрд╣ рдЗрд░рд╛рджреЗ рдХреЛ рднреА рд╕рдВрдкреНрд░реЗрд╖рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рддрд╛-рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рд╕рдВрдШрд░реНрд╖ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпреЗ рд╕рднреА рд╡рд░реНрдгреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВред
рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЬреЛ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИ, рд╡рд╣ рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдмрдирд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ +1
рддрдХ рдкрд╣реБрдВрдЪ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред рджреЛрдиреЛрдВ рдХреЛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ ..=
рдПрдХ рдЪреАрдЬ рд╣реИ рдФрд░ рдпрд╣ рдХрд┐ inclusive()
рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬреЛ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдЦрдиреЗ рдпреЛрдЧреНрдп рдХреНрд╖рдг рдкреЗрд╢ рдХрд░рддреА рд╣реИ рдХрд┐ рдЖрдк рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдХреНрдпреЛрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
@рдкреЗрдЯреНрд░реЛрдЪреЗрдирдХреЛрд╡
рдореИрдВ рдЕрднреА рднреА рдЕрдирдиреНрдп рдкреИрдЯрд░реНрди рдФрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рджреЛрдиреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реВрдВ (рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдирд╣реАрдВ, рдпрд╣ рдмрд╣реБрдд рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реЛрдЧрд╛) ред
рдХреНрдпрд╛ рдЖрдк рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЗрддрдиреА рджреГрдврд╝рддрд╛ рд╕реЗ рдХреНрдпреЛрдВ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ? рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд╣рд▓реВ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдирдиреНрдп рдкреИрдЯрд░реНрди рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рджреЗрдЦрддрд╛ рд╣реВрдВ, рдЗрд╕рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ 0...10
рдЙрдореНрдореАрдж рд╣реЛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдореБрдЭреЗ рдЙрддрдирд╛ рдмреБрд░рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ред
inclusive()
рд╕рд╛рде рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ "рдмрд╕" рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ рдФрд░ рдореБрдЭреЗ рдЪрд┐рдВрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдЬрдВрдЧ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЗрдВрдбреЗрдХреНрд╕ рдкрд░ рдЬрд╛рдиреЗ, "рд░реЗрдВрдЬ" рдпрд╛ "рдЗрдЯрд░реЗрдЯрд░" рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдФрд░ рдлрд┐рд░ рдЕрдкрд░реНрдпрд╛рдкреНрдд рдЖрд░рдУрдЖрдИ рдорд╛рдирдиреЗ рдЬреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред "рджреЗрдЦреЗрдВ [рдЖрдИрдПрдирдЬреА] рдЗрдЯрд░реЗрдЯрд░реНрд╕" рдХреЗ рд▓рд┐рдПред
("рдЕрдЧрд░ рдореБрдЭреЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рд▓рдЧреЗ рддреЛ рдореИрдВ рдкрд╛рдареНрдпрдкреБрд╕реНрддрдХ рдирд╣реАрдВ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рддрд╛... рдореИрдВ рдмрд╕ рдПрдХ рд╕реАрдорд╛ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдкреНрд░рдЧрддрд┐ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред")
@withboats рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдорд╛рд╡реЗрд╢реА (рдП..рдмреА) рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕реЗ рдореИрдЪ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЖрдИрдПрдордУ рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИред
рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рдЬрдм рдореИрдВ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реЛрддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдорд┐рд▓рд╛рди рдкреИрдЯрд░реНрди рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ!
рддреЛ рдХреНрдпреЛрдВ рди рд╣рдо ...
рд╣рдЯрд╛ рджреЗрдВ рдФрд░ рдореИрдЪ рдХреЗ рдЕрдВрджрд░ рдФрд░ рдмрд╛рд╣рд░ рд╕рд┐рд░реНрдл ..=
рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ?
@ рдмреЙрд╕реНрдХреЛрдк рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдореИрдЪ рдореЗрдВ ...
рдХреЛ рд╣рдЯрд╛рдиреЗ рдХрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдкреИрдЯрд░реНрди рдХреЛ рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рд╣реИ рдЬреИрд╕реЗ рд╡реЗ рд╕реНрдерд┐рд░ рд╣реИрдВред
@ssokolow рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..
рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдПрдХ рдиреЛрдЯ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
@withboats рд▓реЗрдХрд┐рди рдореИрдЪ рдореЗрдВ ...
рдХреЛ рдХреНрдпреЛрдВ рди рд╣рдЯрд╛рдПрдВ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп ..=
рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕реБрд╕рдВрдЧрдд рд╣реИ?
(рддрд╛рдХрд┐ рдпрд╣ рдореИрдЪ рдХреЗ рдЕрдВрджрд░ рдФрд░ рдмрд╛рд╣рд░ ..=
рд╣реЛ)
рдлреНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдореЗрдВ рдиреНрдпреВрдореЗрд░рд┐рдХ рд░реЗрдВрдЬ рдХрд╡рд░реЗрдЬ рдХреЗ рд▓рд┐рдП, рд╡рд┐рд╢реЗрд╖ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ рд╕реАрдорд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдврдХреА рд╣реБрдИ рд╣реИ, рд▓реЗрдХрд┐рди рджреВрд╕рд░реА рдирд╣реАрдВ:
match x {
0.0...3.141592653589792 => 1,
3.141592653589793...6.283185307179585 => 2,
6.283185307179586...10.0 => 3,
_ => 4,
}
рдФрд░ рдЗрд╕реЗ рдУрд╡рд░рд▓реИрдк рдХреЗ рд╕рд╛рде рд▓рд┐рдЦрдирд╛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп icky рд▓рдЧрддрд╛ рд╣реИ (рдФрд░ рдиреИрддрд┐рдХ рд░реВрдк рд╕реЗ "рдмрд╕ рд╕реЗ рд╕рдм рдХреБрдЫ рд╢реБрд░реВ рдХрд░реЗрдВ -тИЮ рдХреЗ рдмрд╛рдж рд╕реЗ рд╣рдерд┐рдпрд╛рд░реЛрдВ рдХрд╛ рдЖрджреЗрд╢ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ" рдХреЗ рд╕рдорд╛рди)ред рдбреЗрдЯрд╛рдЯрд╛рдЗрдо рднреА рджреЗрдЦреЗрдВ, рдЬреИрд╕реЗ рдХрд┐ рдХреИрд╕реЗ ISO8601 T24:00 рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рджрд┐рди [00:00, 24:00) рд╣реИ, рди рдХрд┐ [00:00, 23:59:59]ред рдпрд╛ рддрд╛рд░, рдпрд╛ рдкрд░рд┐рдореЗрдп, рдпрд╛ ...
рдХреЗрд╡рд▓ рдЕрдирдиреНрдп рдпрд╛ рдХреЗрд╡рд▓ рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВ рд╣рд░ рдмрд╛рд░ рдЕрдирдиреНрдп рд▓реВрдВрдЧрд╛ред
(рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛: рдЗрдВрдбреЗрдХреНрд╕рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП 1 <= x <= N
рдкреИрдЯрд░реНрди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ 0 < x <= N
рд░реВрдк рдореЗрдВ рдмреЗрд╣рддрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдЕрдирдиреНрдп рднреА рд╣реИ - рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдзреЗ рдЦреБрд▓реЗ рдХреЗ рдмрдЬрд╛рдп рдЖрдзрд╛ рдмрдВрдж - рдЙрдиреНрд╣реАрдВ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рджрд┐рдЬреНрдХреНрд╕реНрдЯреНрд░рд╛ рдиреЗ рдХрд╣рд╛, рдмрд╕ 0-рдЖрдзрд╛рд░рд┐рдд рдХреЗ рдмрдЬрд╛рдп 1-рдЖрдзрд╛рд░рд┐рдд рдЕрдиреБрдХреНрд░рдордг рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ред)
рдпрд╣ рдСрдкрд░реЗрдЯрд░ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдпрд╣рд╛рдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХреНрд▓реИрдВрдк рдлрдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реЛрддрд╛: https://github.com/rust-lang/rfcs/pull/1961 рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЪреВрдВрдХрд┐ рдЗрд╕реЗ рд╕реНрдерд┐рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд╢рд╛рдпрдж рдЙрд╕ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рджреЛ рдорд┐рдирдЯ рдФрд░ рдЕрдзрд┐рдХрддрдо рддрд░реНрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдорд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рднреА рд╕рдорд╛рд╡реЗрд╢реА рд░реЗрдВрдЬ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдХреБрдЫ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ:
0.0..1.0+рдИрдкреАрдПрд╕рдЖрдИрдПрд▓рдУрдПрди
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдирдВрдмрд░реЛрдВ рдХреА рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдШреЛрд╖рд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реИред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛ nextafter
, рди рдХрд┐ рдПрдкреНрд╕рд┐рд▓реЙрдиред рдпрд╛рдиреА x...y == x..nextafter(y)
ред ieee754 рдХреНрд░реЗрдЯ рдРрд╕реА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдЙрдЬрд╛рдЧрд░
рдУрд╣, рдореИрдВрдиреЗ inclusive(a..b)
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдХреА рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рдерд╛ред рд╡реИрд╕реЗ рднреА, рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рд╣реИ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╣рдо рдПрдХ рдмреЗрд╣рддрд░ рдирд╛рдо рдХреА рдмрд╛рдЗрдХ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред
@durka рдирд╛рдо рдореБрдЭреЗ рд╕реНрдкрд╖реНрдЯ рд▓рдЧрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рдЪрд┐рдВрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ?
рддреЛ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ a ... b
рдореЗрдВ match
рдФрд░ inclusive(a..b)
рдореИрдЪ рдХреЗ рдмрд╛рд╣рд░ рд╣реЛрдВрдЧреЗ?
рд╣рдо рд╕реБрд╕рдВрдЧрдд рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╣рд░ рдЬрдЧрд╣ a ..= b
?
рдХреНрдпрд╛ ops::{RangeInclusive, RangeToInclusive}
рдХреЛ рдФрдкрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕реНрдерд┐рд░ рд╣реЛрдиреЗ рд╕реЗ рдХреЛрдИ рд░реЛрдХ рд░рд╣рд╛ рд╣реИ?
рдЕрднреА рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рдореБрдЦ рдЕрд╡рд░реЛрдзрдХ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдкрд░ рдмрд╣рд╕ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрд╕ рдмрд╣рд╕ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛, рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдЕрдВрдд рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЪрд╛рд╣реЗ рдЬреЛ рднреА рд╣реЛ, рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рдореМрдЬреВрдж рд╣реЛрдВрдЧреАред
рд╕реНрдерд┐рд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд░рдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдФрд░ рдлрд┐рд░ рдЗрди рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдЙрдкрднреЛрдХреНрддрд╛ рдлреАрдЪрд░ рдзреНрд╡рдЬ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рд╡реЗ рд╡рд┐рд╢реЗрд╖ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдПрдХ рдмрд╛рдд рдореИрдВрдиреЗ рджреВрд╕рд░реЗ рджрд┐рди RangeInclusive
рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджреЗрдЦреА: рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рд╢реНрд░реЗрдгреА рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдЗрд╕рдХреЗ рд╡рд┐рд░реБрджреНрдз рдХреЛрдб рдХрд░рдирд╛ рдПрдХ рджрд░реНрдж рд╣реИред рдХреНрд▓реИрдВрдк рдереНрд░реЗрдб рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛ .clamp(1...9)
, рд▓реЗрдХрд┐рди рдХреЛрдб рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ:
fn clamp(self, r: RangeInclusive<Self>) -> Self where Self : Sized {
match r {
RangeInclusive::Empty { .. } =>
panic!("Cannot clamp to an empty range"),
RangeInclusive::NonEmpty { start, end } => {
assert!(start <= end, "Cannot clamp to a degenerate range");
if self < start { start }
else if self > end { end }
else { self }
}
}
}
RangeInclusive::Empty
рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдорд╣рд╕реВрд╕ рд╣реЛрддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд▓рдХреНрд╖реНрдп рд╕рд┐рд░реНрдл рдЬреЛрдбрд╝реА рдХреЛ рдЕрдЪреНрдЫреЗ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд╕рд╛рде рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдПрдХ рдПрдирдо рдирд╣реАрдВ рд╣реЛрддрд╛, рддреЛ рдпрд╣ рд╕рд┐рд░реНрдл fn clamp(self, RangeInclusive { start, end }: RangeInclusive<Self>)
, рдФрд░ рдмрд╣реБрдд рд╕рд╛рдл рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдорд╛рд╡реЗрд╢реА рдкрд░ .into_iter() рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЕрдирдиреНрдп рдирд╣реАрдВ рднреА рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реЛрдЧрд╛ ...
рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╡рд┐рдЪрд╛рд░: рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдХреИрд╕реЗ ...
рдкреИрдЯрд░реНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдкреНрд░рдХрд╛рд░реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИ, рд╣рдо рдпрд╣рд╛рдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд ...
рд╕реЗ рдЕрд╕рдВрдмрдВрдзрд┐рдд рдПрдХ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдЗрд╕рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЪреВрдВрдХрд┐ рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдкреИрдЯрд░реНрди |
рдкреИрдЯрд░реНрди рд╕реЗ рдЕрдзрд┐рдХ рдирд┐рдХрдЯрддрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, |...
рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
match {
1 | 2 | 3 => ...
1 |... 3 => ...
}
рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдо рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рд╕рдорд╛рд╡реЗрд╢реА рдФрд░ рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЕрдм рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреИрдЯрд░реНрди рд╕реЗ рдХреЛрдИ 1:1 рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЗрд╕рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
@scottmcm
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдорд╛рд╡реЗрд╢реА рдкрд░ .into_iter() рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЕрдирдиреНрдп рдирд╣реАрдВ рднреА рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реЛрдЧрд╛ ...
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо range.nonempty()
рдЬреИрд╕реЗ рд╕рд╣рд╛рдпрдХ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рдЦрд╛рд▓реА рд╕реАрдорд╛ рдХреЗ рд▓рд┐рдП рдШрдмрд░рд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдЬреЛрдбрд╝реА рд▓реМрдЯрд╛рддрд╛ рд╣реИ?
рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рд╣рдо IntoIterator
рдХреЛ RangeInclusive
рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ IMHO рд╕реЗ рдмрд╣реБрдд рджреВрд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рд░реЗрдВрдЬ рдЗрдиреНрдХреНрд▓реВрд╕рд┐рд╡ :: рдЦрд╛рд▓реА рд╕рд░реНрд╡ рдХрд┐рд╕ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХрд░рддрд╛ рд╣реИ? рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЛ рд░рд┐рдХреНрдд рд╢реНрд░реЗрдгреА рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рдЖрдк рдПрдХ рдХреИрд╕реЗ рд▓рд┐рдЦреЗрдВрдЧреЗ? (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА "5 рд╕реЗ 4 рддрдХ рдХреА рд╕реАрдорд╛, рд╕рдорд╛рд╡реЗрд╢реА" рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЦрд╛рд▓реА рдорд╛рдиреА рдЬрд╛рдПрдЧреАред)
@joshtriplett рдореБрдЦреНрдп рдорд╛рдорд▓рд╛ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рд╣реИрдВред
@joshtriplett start > end
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдорд╛рдорд▓реЗ рдореЗрдВ рдЦрд╛рд▓реА рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ: 0u8...255u8
ред рдЬрдм рдЖрдк 255u8...255u8
рдФрд░ рдЗрд╕реЗ .next()
рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдпрд╛ рддреЛ рдШрдмрд░рд╛ рдЬрд╛рдПрдВрдЧреЗ рдпрд╛ 0u8...255u8
рд▓рдкреЗрдЯ рдЬрд╛рдПрдВрдЧреЗ, рдЬреЛ рдЦрд╛рд▓реА рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣рдо рдЙрд╕ рдмрд┐рдВрджреБ рдкрд░ Empty
рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддреЗ рд╣реИрдВред
@solson рдЖрд╣, рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдБред рд╣рд╛рдБ, рдпрд╣ рдПрдХ рджрд░реНрдж рд╣реИ, рдФрд░ рдпрд╣ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред
(рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрди рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЖрдкрдХрд╛ рдорддрд▓рдм 255u8
рд╣реИред)
(рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрди рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЖрдкрдХрд╛ рдорддрд▓рдм 255u8 рд╣реИред)
рд╣рд╛рдБ рдзрдиреНрдпрд╡рд╛рджред рд╕рдВрдкрд╛рджрд┐рддред
@solson рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЙрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ 0 рдФрд░ 255 рдХреЛ рд╕реНрд╡реИрдк рдХрд░рдХреЗ рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
@clarcharr рдпрд╣ рд╕рдЪ рд╣реИред рдЪреВрдВрдХрд┐ .next()
рд╣рдореЗрд╢рд╛ Empty
рд╢реНрд░реЗрдгреА рдХреА рдкреАрдврд╝реА рдХреЛ рд╡рд┐рд╢реЗрд╖-рдорд╛рдорд▓рд╛ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рдпрд╣ рд╣рдореЗрд╢рд╛ рдПрдХ рд╕реАрдорд╛ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЦрд╛рд▓реА рдорд╛рдирд╛ рдЬрд╛рдПрдЧрд╛ред
рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореБрдЭреЗ рд╡рд╣ рддрд░реАрдХрд╛ рдмреЗрд╣рддрд░ рд▓рдЧрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдЦрд╛рд▓реА рд╕реАрдорд╛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред
рддреЛ рдпрд╣ рд╕рд┐рд▓рд╕рд┐рд▓рд╛ рдЕрдм рдбреЗрдврд╝ рд╕рд╛рд▓ рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕реЗ рдкрдврд╝рдирд╛ рд╕рдорд╛рдкреНрдд рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдирдП рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдкреБрдирд░реНрдХрдерди рдкреЛрд╕реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреА:
рд░рд╕реНрдЯ рд╕реНрдЯреЗрдмрд▓ рдЖрдЬ рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ:
0..5
рдПрдХ рдЕрд░реНрдз-рдЦреБрд▓реА рд╕реАрдорд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ, [0, 1, 2, 3, 4] рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
0...5
рдПрдХ рдмрдВрдж рд╢реНрд░реЗрдгреА рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ [0, 1, 2, 3, 4, 5] рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд▓реЛрдЬреНрдб рд░реЗрдВрдЬ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдХрдИ рд░реВрдкреЛрдВ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХреЗ рдмрд╛рд╣рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рд╣рд░ рдПрдХ рдФрд░ рдЙрдирдХреЗ рд▓рд╛рдн рдФрд░ рдХрдорд┐рдпреЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░реВрдВрдЧрд╛ред
0...5
рдкреЗрд╢реЗрд╡рд░реЛрдВ: рдореМрдЬреВрджрд╛ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдЕрдиреБрд░реВрдк, рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рднрд╛рд╖рд╛ рдХреЛ рдЕрдзрд┐рдХ рд╕рд╛рдордВрдЬрд╕реНрдпрдкреВрд░реНрдг рдорд╣рд╕реВрд╕ рдХрд░рд╛рддрд╛ рд╣реИред
рд╡рд┐рдкрдХреНрд╖: рдЧрд▓рдд рдЯрд╛рдЗрдк рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдФрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рд╡рд┐рднрд┐рдиреНрди рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд╕рдВрдкреНрд░реЗрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рдЗрд░рд╛рджреЗ рдХреЛ рдЧрд▓рдд рд╕рдордЭрдирд╛ рднреА рдЖрд╕рд╛рди рд╣реИред
0..=5
рдкреЗрд╢реЗрд╡рд░реЛрдВ: рдЧрд▓рдд рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рдХрдард┐рди, рдЕрдзрд┐рдХ рдЕрд░реНрдердкреВрд░реНрдг рд░реВрдк рд╕реЗ рд╕реНрдкрд╖реНрдЯ
рд╡рд┐рдкрдХреНрд╖: рдореМрдЬреВрджрд╛ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрддред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдпрд╣ рдкреВрдЫрдиреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ: рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реИ ... рдпрд╣рд╛рдБ рд▓реЗрдХрд┐рди ..= рдпрд╣рд╛рдБ?
0..^5
..=
рд╕рдорд╛рди рд╣реА рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдПрдХ рдШрд╛рддрд╛рдВрдХ рдСрдкрд░реЗрдЯрд░ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред
inclusive(0..5)
рдкреЗрд╢реЗрд╡рд░реЛрдВ: рдЕрддреНрдпрдзрд┐рдХ рдЕрд░реНрдердкреВрд░реНрдг рд░реВрдк рд╕реЗ рд╕реНрдкрд╖реНрдЯред рдЧрд▓рдд рдЯрд╛рдЗрдк рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рд╡рд┐рдкрдХреНрд╖: рд▓рдВрдмреЗ рд╕рдордп рдХреА рддрд░рд╣ред рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рднреА рдЕрд╕рдВрдЧрддред
0....5
рдкреЗрд╢реЗрд╡рд░реЛрдВ: ...
рдХреА рдЧрд▓рдд рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рднреА рдмрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ
рд╡рд┐рдкрдХреНрд╖: рдЦрд░рд╛рдм рд╢рдмреНрджрд╛рд░реНрде, рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрдд рдФрд░ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рдорд╛рдиред
[0..5]
рдЕрдиреБрдкрдпреЛрдЧреАред рдХреЛрд╖реНрдардХ рдХрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рднрд╛рд╖рд╛ рдореЗрдВ рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рдорд╣рддреНрд╡ рд╣реИред
0..<=5
рдЕрдиреБрдкрдпреЛрдЧреАред рдХрд┐рд╕реА рдорд╛рди рдХреА рдХрд┐рд╕реА рд╢реНрд░реЗрдгреА рд╕реЗ рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрджрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╡рд┐рд░реЛрдз.
рд╕реВрдЪреАрдмрджреНрдз рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдХрд▓реНрдк рдЬрд┐рд╕рдореЗрдВ "рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрдд" рд╣реИ, рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рд╣рдо рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрд╕ рдорд╛рд░реНрдЧ рдореЗрдВ рдкреАрдЫреЗ рдХреА рд╕рдВрдЧрддрддрд╛ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВред рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рд╣рдо ...
рднреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ (рдЕрдкрдирд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдпрд╣рд╛рдВ рдЪреБрдиреЗрдВ) рдмреИрдХрд╡рд░реНрдб рд╕рдВрдЧрддрддрд╛ рдХреЛ рддреЛрдбрд╝рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХреЗ рд╕рдордХрдХреНрд╖, рд▓реЗрдХрд┐рди рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХреЗ рдмрд╛рд╣рд░ ...
рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рд░реЛрдХреЗрдВред рд╢рд╛рдпрдж рд╣рдо рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдореЗрдВ ...
рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рд╣рддреЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯрд╛рдЗрд▓ рдЧрд╛рдЗрдб рдХреЛ рднреА рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рд╣рдо рдЙрд╕ рдорд╛рд░реНрдЧ рд╕реЗ рдиреАрдЪреЗ рдЬрд╛рддреЗред
рдПрдХ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдХреБрдЫ рдЪрд░реНрдЪрд╛ рд╣реБрдИ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдКрдкрд░реА рдФрд░ рдирд┐рдЪрд▓реА рджреЛрдиреЛрдВ рд╕реАрдорд╛рдУрдВ рдХреЛ рд╕рдорд╛рд╡реЗрд╢реА рдпрд╛ рдЕрдирдиреНрдп рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рд╢рд╛рдпрдж рдЙрд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдзрд╛-рдЦреБрд▓рд╛ рдФрд░ рдмрдВрдж рд╕реАрдорд╛ рд╕рдВрднрд╛рд╡рд┐рдд рдХрд╡рд░ рдЦрддреНрдо рд╣реЛ рдЧрдпрд╛ рд╣реИ 99.9999% рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗред
рдореИрдВрдиреЗ рдЗрд╕ рдЪрд░реНрдЪрд╛ рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рдЕрдЧрд░ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЖрдкрдХреА рдмрд╛рдд рдХреЛ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рд╡реНрдпрдХреНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рддрд╛рдХрд┐ рдореИрдВ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХреВрдВред
@Xaeroxe рдЙрддреНрдХреГрд╖реНрдЯ рд╕рд╛рд░рд╛рдВрд╢ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЙрдкрдХрд░рдг (рд╢рд╛рдпрдж rustfmt рдХрд╛ рдПрдХ рдкреНрд▓рдЧрдЗрди) рд╣реЛрдирд╛ рд╕рдВрднрд╡ рд╣реЛ, рдЬреЛ рдирдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреИрдЯрд░реНрди рдореЗрдВ ...
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд╕реНрд╡рддрдГ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП ..=
) рдЬрдм рдпрд╣ рддрдп рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕ рддрд░рд╣ рд╣рдо "рдкреБрд░рд╛рдиреЗ рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦреЗ рдЧрдП рд╕рднреА рдХреЛрдб" рд╕реЗ рдкреАрдЫреЗ рдирд╣реАрдВ рд╣рдЯреЗрдВрдЧреЗред
рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд▓реЗрдЦрдХреЛрдВ рдХреЗ рдЗрд░рд╛рджреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕рднреА рдЬрдВрдЧ рдорд╛рдзреНрдпрдореЛрдВ рдкрд░ рдПрдХ рдЕрдзрд┐рд╕реВрдЪрдирд╛/рд╢реАрд░реНрд╖рдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рд╕рднреА рдХреЛ рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдЪрд▓ рд╕рдХреЗред
рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ...
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдирдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреИрдЯрд░реНрди рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЪреАрдЬ рдЬреЛ рд╣рдо рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореБрджреНрджреЗ рдкрд░ рдкрдВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд╣ рд╣реИ рд░реЗрдВрдЬрдЗрдиреНрдХреНрд▓реВрд╕рд┐рд╡ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдирд╛, рдЬреИрд╕рд╛ рдХрд┐
рд╣рдо inclusive
рдлрд╝рдВрдХреНрд╢рди рднреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ (рдпрд╛ рддреЛ рдХреЗрд╡рд▓ std::range
рдпрд╛ рд╕рдВрднрд╡рддрдГ рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ рдореЗрдВ рднреА); рдпрд╣ рдХрд┐рд╕реА рджрд┐рди рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рдПрдХ рд░реЗрдВрдЬ рд╕рдорд╛рд╡реЗрд╢реА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рддрд╛ рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпреЗ рд╕рднреА libs рдирд┐рд░реНрдгрдпреЛрдВ рдХреА рддрд░рд╣ рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рд▓реИрдВрдЧ рдЯреАрдо рдХреЗ рдкрд╛рд╕ рдЗрди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕реНрдерд┐рд░/рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рдХреНрд╖реЗрддреНрд░ рд╣реИ рдпрд╛ рдирд╣реАрдВред
рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ RangeInclusive
рдХреЛ рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬрд╝ рдореЗрдВ рдмрджрд▓рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рдЬрд┐рд╕рдХрд╛ Empty
рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рд╣реИ, рдлрд┐рд░ рдПрдХ IntoIter
рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рдПрдВред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ Empty { at }
рдмрд┐рдирд╛ рдЦрд╛рд▓реА рд╕реАрдорд╛ рдмрдирд╛рдирд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЕрд╕рдВрднрд╡ рдХреИрд╕реЗ рд╣реИред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдПрдХ рдХрд┐рдирд╛рд░реЗ рдХреЗ рдорд╛рдорд▓реЗ рдкрд░ MAX
рдФрд░ MIN
рд╕реНрд╡реИрдк рдХрд░реЗрдВ рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдерд╛ред рдЗрд╕рд╕реЗ RangeInclusive
рдЬреБрдбрд╝реЗ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдХрдард┐рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЙрдЪрд┐рдд рд╕рдорд╛рдзрд╛рди рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред
рдЪрд╛рд╣реЗ рдХреБрдЫ рднреА рд╣реЛ, рдореИрдВ рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдкреНрд░рдХрд╛рд░ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд╕рдорд░реНрдерди рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реВрдВ, рдЬреЛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЪрд┐рдВрддрд╛рдУрдВ рдХреЗ рдмрд╛рд╡рдЬреВрдж рдореМрдЬреВрдж рд░рд╣реЗрдЧрд╛ред рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╕реНрдерд┐рд░ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЯреБрдХрдбрд╝рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдЬрдм рддрдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╕реНрдерд┐рд░ рд╣реЛ рдЬрд╛рдП, рддрдм рддрдХ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрд╕ рдХреЛрдб рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ рдЬреЛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╕рд┐рдВрдЯреИрдХреНрд╕ рдФрд░ рдкреНрд░рдХрд╛рд░ рдПрдХ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝реАрдЪрд░ рдлрд╝реНрд▓реИрдЧ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рд╣реИрдВред
@scottmcm рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рд╢рд╛рдпрдж рдПрдХ рдЕрд▓рдЧ рдзрд╛рдЧрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдЪрд░реНрдЪрд╛ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ рдореИрдВ рд╡рд╣ рдорд╛рд░реНрдЧ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдЬрд┐рд╕реЗ рдореИрдВ рд▓реЗрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред
рдореБрдЭреЗ ..=
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╢реМрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рдЪреАрдиреА рдХреЛ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдореЗрдВ ...
рдмрд░рд╛рдмрд░ рдФрд░ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХреЗ рдмрд╛рд╣рд░ рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд░реЗрдВрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдПред рдлрд┐рд░ рднрд╛рд╖рд╛ рдХреЛ рд╕реБрд╕рдВрдЧрдд рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рдЙрдирдХреЗ рдХреЛрдб рдХреЛ ..=
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рдкреИрдЯрд░реНрди рдореЗрдВ, рдШреЛрд╖рдгрд╛рдУрдВ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЯреВрд▓рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХ рдмрд╛рд░ рдЬрдм рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдкрд░реНрдпрд╛рдкреНрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ ...
рд╕реЗ рджреВрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рддреЛ рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдЪреЗрддрд╛рд╡рдиреА рдФрд░ рдлрд┐рд░ рдЕрдВрддрддрдГ (рд╕рдВрднрд╡рддрдГ рдЕрдм рд╕реЗ рд╡рд░реНрд╖реЛрдВ рдмрд╛рдж рднреА) рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рддреНрд░реБрдЯрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореЗрд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдкреНрд░рджрд╛рди рдХрд┐рдП 24 рджрд┐рди рд╣реЛ рдЪреБрдХреЗ рд╣реИрдВ рдФрд░ рдХреЛрдИ рдЯрд┐рдкреНрдкрдгреА рдирд╣реАрдВ рджреА рдЧрдИ рд╣реИред рдХреНрдпрд╛ рд╣рдореЗрдВ рдЙрд╕ рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝рдирд╛ рдЪрд╛рд╣рд┐рдП?
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореЛрдмрд╛рдЗрд▓ рдкрд░ рдореБрдЭреЗ рдердореНрд╕ рдбрд╛рдЙрдиреНрд╕ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд░рд╣реЗ рдереЗ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ рдХрд┐ рдЕрд╕рд╣рдорддрд┐рдкреВрд░реНрдг рд░рд╛рдп рдереАред
@Xaeroxe рдореБрдЭреЗ рдРрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ред рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ ...
рдХреЛ ..=
рдкрдХреНрд╖ рдореЗрдВ рдкрджрд╛рд╡рдирдд рдХрд░рдирд╛ рдЙрди рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдЗрд╕ рдереНрд░реЗрдб рдореЗрдВ рдкреЛрд╕реНрдЯ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд╛ рдЙрддреНрддрд░ рдирд╣реАрдВ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣реА рд╡рд┐рдЪрд╛рд░ рдкрд╣рд▓реЗ рд╣реА рд╕рд╛рдордиреЗ рд░рдЦрд╛ рдЬрд╛ рдЪреБрдХрд╛ рдерд╛ рдФрд░ рдЙрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛ рдЪреБрдХреА рдереАред рдпрд╣рд╛рдВ рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдмреАрдЪ рдЖрдо рд╕рд╣рдорддрд┐ рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдордореЗрдВ рд╕реЗ рдХрдИ рд▓реЛрдЧ рдЪрд░реНрдЪрд╛ рд╕реЗ рдердХрд╛рди рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ ...
рдХреЗ рдкрдХреНрд╖ рдореЗрдВ ..=
рдХреЛ рдкрджрд╛рд╡рдирдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдХреНрдпреЛрдВрдХрд┐:
..=
рдкрд╕рдВрдж рдЖрдпрд╛ рд╣реЛ, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рд╕реНрдерд┐рд░ рдкрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдпрд╣реНрд░рд╛рд╕ рдЪрдХреНрд░ рдХреЗ рд▓рд╛рдпрдХ рд╣реЛрдЧрд╛ред..=
рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ , рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдФрд░ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ; рдЗрд╕рдХрд╛ рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рдХрд╛рд░рдг рдХрдо рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЗрд╕реЗ рдкрд╣рд▓реА рдмрд╛рд░ рджреЗрдЦрдХрд░, рдЬрд╛рди рдЬрд╛рдПрдЧрд╛ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред(рдореИрдВ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдХреЗ рджреМрд░рд╛рди рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдереЛрдбрд╝рд╛ рдмрджрд▓ рджреЗрддрд╛ рд╣реВрдВ, рдореИрдВрдиреЗ рдпрд╣ рд╕рдм рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рддрд╛рдХрд┐ рдЕрдиреНрдп рд▓реЛрдЧ рдореЗрд░реА рд╡рд┐рдЪрд╛рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рджреЗрдЦ рд╕рдХреЗрдВ рдФрд░ рдореИрдВ рдЙрд╕ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдХреНрдпреЛрдВ рдЖрдпрд╛ рдЬреЛ рдореИрдВрдиреЗ рдХрд┐рдпрд╛ рдерд╛)
рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕реА рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдиреБрднрд╡ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдмрд╣рд┐рд╖реНрдХрд░рдг рдХреА рд▓рд╛рдЧрдд рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдЕрднреА рднреА ..=
рд╕рдорд░реНрдерди рдореЗрдВ рд╣реВрдВред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмрд┐рдВрджреБ рдкрд░ рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдХреБрдЫ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд░рд╣рдирд╛ рд╣реЛрдЧрд╛ред рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕реАрдЦрдиреЗ рдХреА рдЪреАрдЬ рд╣реИ, рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╡рд┐рд╢реЗрд╖ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣рдореЗрд╢рд╛ рд╢рдмреНрджрд╛рд░реНрде рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХреАрдордд рдкрд░ рдЖрддрд╛ рд╣реИред рдореБрдЭреЗ рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдкрд╣рдЪрд╛рди рд▓реЗрдВрдЧреЗ, ..
рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдЙрддрдирд╛ рд╣реА рдмреБрд░рд╛ рд╣реИред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╡рд┐рд╢реЗрд╖ рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рдХреА рдЕрдзрд┐рдХрддрд╛ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣рдо рдЬреЛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрд╕рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреНрд░реЗрдирдлрдХ рдХреЗ рдХрд░реАрдм рджрд┐рдЦрдиреЗ рд╡рд╛рд▓реА рднрд╛рд╖рд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдЬрд┐рди рдорд╛рдорд▓реЛрдВ рдХреЛ рд╣рдо рд╡рд┐рд╢реЗрд╖ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╡реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рд╛рдорд╛рдиреНрдп рд╣реИрдВред рд╕рдЪ рдХрд╣реВрдВ рддреЛ рдЕрдм рдЬрдм рдореИрдВрдиреЗ рдЗрд╕реЗ рдЯрд╛рдЗрдк рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рд╣реИред рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдПрдХ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред
рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЕрд╕рдВрдЧрддрд┐ рдЕрднреА рднреА рдореБрдЭреЗ рдкрд░реЗрд╢рд╛рди рдХрд░рддреА рд╣реИред рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рдлрд╝рдВрдХреНрд╢рди рдФрд░ ...
рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдкреНрд░рдХрд╛рд░ рд╣реЛрдиреЗ рд╕реЗ рдРрд╕рд╛ рдорд╣рд╕реВрд╕ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖рд╛ рдореЗрдВ рдЧреНрд░реЗ рдФрд░ рдЧреНрд░реЗ рджреЛрдиреЛрдВ рд╣реИрдВред рдЬрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдорд╛рдирдХреАрдХрд░рдг рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдПрдХ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рд╣рдореЗрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрд╕ рдмрджрд▓рд╛рд╡ рдХреЛ рдХрд░рдиреЗ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддрд╛рд░реНрдХрд┐рдХ рд╕рдорд╕реНрдпрд╛рдПрдВ рднреА рд╣реИрдВред рдЕрдЧрд░ рд╣рдо рдХрднреА рд░рд╕реНрдЯ 2.0 рдбрд┐рдЬрд╛рдЗрди рдХрд░рддреЗ рд╣реИрдВ (рдпрд╣ рдкрд╛рдЧрд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛) рд╢рд╛рдпрдж рд╣рдореЗрдВ рдЗрд╕ рдкрд░ рдлрд┐рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдм рдЧреНрд░реЗ рдФрд░ рдЧреНрд░реЗ рджреЛрдиреЛрдВ рд╣реА рдХрд╛рдлреА рдЕрдЪреНрдЫреЗ рд╣реИрдВред
рдореИрдВ рдЗрд╕ рд╕рдордп рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХреЗ рдмрд╛рд╣рд░ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП inclusive
рдлрд╝рдВрдХреНрд╢рди рдФрд░ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдореЗрдВ ...
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╕рдорд░реНрдерди рдореЗрдВ рд╣реВрдВред
@ рдирд╛рд╡реЛрдВ рдХреЗ рдмрд┐рдирд╛
рдпрджрд┐ рдЖрдк рдХрднреА рднреА рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреА рдЕрд╡рд╣реЗрд▓рдирд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк C ++ рдЬреИрд╕реЗ рд╕рднреА (рдЕрдзрд┐рдХ рдпрд╛ рдХрдо) рдмреБрд░реЗ рдирд┐рд░реНрдгрдпреЛрдВ рдХреЗ рдорд┐рд▓рди рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдпрд╣ рдирдП рд▓реЛрдЧреЛрдВ рдХреЛ рдФрд░ рднреА рдЕрдзрд┐рдХ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЪреАрдЬреЗрдВ рдЙрддрдиреА рд╕реБрд╕рдВрдЧрдд рдирд╣реАрдВ рд╣реИрдВ рдЬрд┐рддрдиреА рд╣реЛ рд╕рдХрддреА рд╣реИрдВред
рддреЛ рдХрднреА-рдХрднреА рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рд░рд╛рд╕реНрддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рди рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЗрд╕реЗ рдкрд╣рд▓реА рдмрд╛рд░ рджреЗрдЦрдХрд░, рдЬрд╛рди рдЬрд╛рдПрдЧрд╛ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред
рдпрд╣ рдХрд┐рд╕реА рднреА рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣реИред рд╣рдо (рдЬреЛ рд░рд╕реНрдЯ рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ) рдореЗрдВ рдпрд╣ рдкреВрд░реНрд╡рд╛рдЧреНрд░рд╣ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рд▓рд┐рдП, рд░рд╕реНрдЯ рдХреЛрдб рд╕реНрдкрд╖реНрдЯ рджрд┐рдЦрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреЛ рдХреЛрдИ рднреА рджреВрд╕рд░реА рднрд╛рд╖рд╛ рд╕реЗ рд░рд╕реНрдЯ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдЙрд╕реЗ рдЕрдХреНрд╕рд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рджреЗрдЦрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред рдпрджрд┐ рд╣рдо рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП ..=
рдпрд╛ ...
рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рднрд╛рд╖рд╛рдПрдВ рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП ...
рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдЗрд╕реЗ рд╡реИрд╕реЗ рднреА рджреЗрдЦрдирд╛ рд╣реЛрдЧрд╛ .
рдХреЗрд╡рд▓ рд╕реНрдкрд╖реНрдЯ рджрд┐рдЦрдиреЗ рд╡рд╛рд▓реА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдкреЗрд╢ рдХрд░рдирд╛ рд╣рдорд╛рд░рд╛ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
рдпрджрд┐ рд╣рдо рдХреЗрд╡рд▓ рдРрд╕реА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рджрд┐рдЦреЗрдВ, рддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд░рд╕реНрдЯ рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдореМрдЬреВрджрд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред Newbies рдХреЗ рдбреЙрдХ рдкрд░ рд╡реИрд╕реЗ рднреА рджреЗрдЦрдирд╛ рд╣реИ, рдХреНрдпрд╛ рдЙрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рддреЛ рдЧрд▓рдд рдХреНрдпрд╛ рд╣реИ? рдбреЙрдХреНрдЯрд░ рдЕрдЪреНрдЫрд╛ рд╣реИ!
рдЬреИрд╕рд╛ рдХрд┐ @withboats рдиреЗ рдХрд╣рд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдореЗрдВ рд╕реЗ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдЗрд╕ рдЪрд░реНрдЪрд╛ рд╕реЗ рдердХ рдЪреБрдХреЗ рд╣реИрдВ; рдореИрдВ рдПрдХ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рдмреИрдард╛ рд░рд╣рд╛ рд╣реВрдВред рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рдкрдврд╝рдиреЗ рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧрд╛ (рд╕рд╛рд░рд╛рдВрд╢ @Xaeroxe рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!)
IMO, рдЕрднреА рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЕрдзреВрд░рд╛ рд╕рдВрдпреЛрдЬрди рд╣реИ : ...
рдкреИрдЯрд░реНрди рдореЗрдВ, ..
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдПред рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреА рдпрд╣ рдЬреЛрдбрд╝реА рдЖрдкрдХреЛ рджреГрдврд╝рддрд╛ рд╕реЗ рдпрд╣ рдЙрдореНрдореАрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ ..
рдкреИрдЯрд░реНрди рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдФрд░ ...
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ - рдФрд░ рд╡реЗ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рд▓рдВрдмреА рдЕрд╡рдзрд┐ рдореЗрдВ рдПрдХ рдЯрд┐рдХрд╛рдК рдбрд┐рдЬрд╛рдЗрди рдирд╣реАрдВ рд╣реИ, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдореБрдЭреЗ рдпрд╣ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╣рдордиреЗ рджреЛрдиреЛрдВ рдкреНрд░рдХрд╛рд░ рдХреА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рд╣реИ, рдРрд╕рд╛ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрдирд╛ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИред рдпрд╣ рд╣рдореЗрдВ рдХреБрдЫ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ:
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ ...
рдХреЛ рд╕реНрдерд┐рд░ рдХрд░реЗрдВ рдФрд░ рдкреИрдЯрд░реНрди рдореЗрдВ ..
рдЬреЛрдбрд╝реЗрдВред рдпрд╣ рдХрдо рд╕реЗ рдХрдо рджрд░реНрджрдирд╛рдХ рдкрд░рд┐рд╡рд░реНрддрди рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдСрдл-рдмрд╛рдп-рд╡рди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИред рдлрд┐рд░ рднреА, рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдпрд╣ рд╕рдВрдпреЛрдЬрди рд╣реИ рдФрд░ рдореЗрд░реА рдЬрд╛рдирдХрд╛рд░реА рдореЗрдВ, рдРрд╕реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдзрд┐рдХ рдиреБрдХрд╕рд╛рди рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред
рд╡рд┐рд░реЛрдз ...
рдкреИрдЯрд░реНрди рдФрд░ рднрд╛рд╡ рдореЗрдВ, рдЬреЛрдбрд╝рдиреЗ ..=
рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП, рдФрд░ рдЬреЛрдбрд╝рдиреЗ ..
рдкреИрдЯрд░реНрди рдХреЗ рд▓рд┐рдПред рдКрдкрд░ рдХреА рдХрдорд┐рдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ, рдЕрдзрд┐рдХ рджрд░реНрджрдирд╛рдХ рд╣реИ (рдмрд╣рд┐рд╖реНрдХрд░рдг рдХреЗ рдХрд╛рд░рдг), рдФрд░ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ (рдЬреИрд╕реЗ рдмрд╛рдПрдВ-рдЕрдирдиреНрдп) рдХреЗ рд▓рд┐рдП рджреНрд╡рд╛рд░ рдЦреЛрд▓рддрд╛ рд╣реИред
рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдореИрдВ рдХрд╛рдлреА рд╣рдж рддрдХ рдЪрд░реНрдЪрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдФрд░ рднреА рдмрд╣реБрдд рдХреБрдЫ рдХрд╣рд╛ рдЬрд╛рдирд╛ рд╣реИ; рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдЯреНрд░реЗрдбрдСрдлрд╝ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдФрд░ рдирд┐рд░реНрдгрдп рдкрд░ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рд▓реИрдВрдЧ рдЯреАрдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рдХрд╛ рдореБрдЦреНрдп рдЬреЛрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмрд┐рдВрджреБ рд╣реИ, рдореБрдЭреЗ рдХреНрдпреЛрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ inclusive
рдЬреЛрдбрд╝рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рдЖрдИрдПрдордУ)ред
рдлрд┐рд░ рднреА, рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдпрд╣ рд╕рдВрдпреЛрдЬрди рд╣реИ рдФрд░ рдореЗрд░реА рдЬрд╛рдирдХрд╛рд░реА рдореЗрдВ, рдРрд╕реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдзрд┐рдХ рдиреБрдХрд╕рд╛рди рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред
рдореБрдЭреЗ рдпрд╣рд╛рдВ рдЪрдпрди рдкреВрд░реНрд╡рд╛рдЧреНрд░рд╣ рдХреА рдЪрд┐рдВрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдПрдВ рдорд╛рдореВрд▓реА рд╣реИрдВ рдпрд╛ рдХреНрдпрд╛ рд╡реЗ рд╢рд╛рдпрдж рд╣реА рдХрднреА рд╣рдорд╛рд░реЗ рдзреНрдпрд╛рди рдореЗрдВ рдЖрддреА рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, ...
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд░рд╕реНрдЯ рдХреЗ рдбрд┐рдЬрд╛рдЗрди рджрд░реНрд╢рди рдФрд░ рдЙрднрд░рддреА рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ рдХреЗ "рдЬрдм рддрдХ рдЯреНрд░реЗрдб-рдСрдл рдмрд╣реБрдд рдЧрдВрднреАрд░ рдирд╣реАрдВ рд╣реИ" рдкрд╣рд▓реВ рдХреЗ рд╡рд┐рдкрд░реАрдд рдЪрд▓рддрд╛ рд╣реИред (рдЬреИрд╕реЗред рд╕рд▓рд╛рд╣ рдирдпрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП enum
рдмрд▓реНрдХрд┐ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдкреНрд░рдХрд╛рд░ bool
рддреЛ рдпрд╣ рдХрдард┐рди рдЕрдкрдиреЗ рд╕рдорд╛рд░реЛрд╣ рдкреИрд░рд╛рдореАрдЯрд░ рдорд┐рд╢реНрд░рдг рд╣реИред)
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реА рдиреЗ рд╕рд╛рдмрд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдХрд┐ if
рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдЙрдкрдпреЛрдЧреА рд╣реИ рдпрджрд┐ рдХрд┐рд╕реА рднрд╛рд╖рд╛ рдореЗрдВ while let
, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рдирд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдк рдХрд░рдирд╛ =
рдЬрдм рдЖрдкрдХрд╛ рдорддрд▓рдм ==
рдПрдХ рдлреБрдЯрдЧрди рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдХрд┐ рдкрд╛рдпрдерди рдЬреИрд╕реА рднрд╛рд╖рд╛рдПрдВ рдЗрд╕реЗ рдордирд╛ рдХрд░ рджреЗрддреА рд╣реИрдВ, рддрдм рднреА рдЬрдм рдРрд╕реА рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рдореМрдЬреВрдж рд╣реЛрдВ рдЬрд╣рд╛рдВ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рдЕрд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рдмрджрд╕реВрд░рдд рд╣реЛрдВред
рджреВрд╕рд░реА рджрд┐рд╢рд╛ рдореЗрдВ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрд▓рд┐рдкреНрдкреА рдХреЛ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдорд╛рдорд▓рд╛ рдкрдХрдбрд╝ рд▓рд┐рдпрд╛ рдерд╛ рдЬрдм рдореИрдВ рд▓рдЧрднрдЧ рдПрдХ рд╣рдлреНрддреЗ рдкрд╣рд▓реЗ рдердХреЗ рд╣реБрдП рдХреЛрдбрд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ ...
foo == bar; // This should be `foo = bar;`
... рдЬреЛ "рдХреБрдВрдЬреА рдХреЛ рдХрдИ рдмрд╛рд░ рджрдмрд╛рдпрд╛" рдЧрд▓рддреА рдХрд╛ рдПрдХ рдЖрджрд░реНрд╢ рдЙрджрд╛рд╣рд░рдг рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВ ... рдФрд░, " ==
рд╡рд┐рдкрд░реАрдд рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реИ", рд╡рд╣рд╛рдВ рд╣реИ ..
рдмрдирд╛рдо ...
рд▓рд┐рдП рд▓рд┐рдВрдЯ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред
@ssokolow рд╕реНрдкрд╖реНрдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ ..=
рднреА рдареАрдХ рд╣реВрдВ; рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдмрд╣рд┐рд╖реНрдХрд░рдг рдЗрддрдирд╛ рджрд░реНрджрдирд╛рдХ рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдЖрд╕рд╛рди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕реБрдзрд╛рд░ рд╣реИред рдЬреНрдпрд╛рджрд╛рддрд░ рдореИрдВ рд╕рд┐рд░реНрдл рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕реБрд▓рдЭрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдореИрдВ рд╢рд╛рдпрдж ..
/ ...
(рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд░рд╛рдд рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рд░рд╣ рд╕рдХрддрд╛ рд╣реВрдВред рдореИрдВ @aturon рд╕реЗ рд╕рд╣рдордд
рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд╣рд╛ рд╣реИ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ libstd рдкреНрд░рдХрд╛рд░ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬрдм rust-lang/rfcs#1980 рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪрд░реНрдЪрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЧреБрдЬрд░рддрд╛ рд╣реИред
@aturon рдиреЗ рдЬреЛ рдмрддрд╛рдпрд╛,
рдореИрдВ рд▓реИрдВрдЧ рдЯреАрдо рдбрд┐рд╕реНрдХрд╢рди рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдирд╛рдорд╛рдВрдХрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдирдП рд╡рд┐рдЪрд╛рд░ рдпрд╛ рдЯреНрд░реЗрдбрдСрдл рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдмрд╣реБрдд рдХрдо рд╣реИред рд╣рдореЗрдВ рддрдп рдХрд┐рдП рдЧрдП рдЯреНрд░реЗрдбрдСрдлрд╝ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐рд╕реА рдирд┐рд░реНрдгрдп рдкрд░ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
18 рдордИ, 2017 рдХреЛ 9:55:30 рдкреВрд░реНрд╡рд╛рд╣реНрди рдкреАрдбреАрдЯреА рдкрд░, рд╣рд╛рд░реВрди рдЯреНрдпреВрд░реЙрди рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:
рдореИрдВ рд▓реИрдВрдЧ рдЯреАрдо рдбрд┐рд╕реНрдХрд╢рди рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдирд╛рдорд╛рдВрдХрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рд╣реА рдЕрд╕рдВрднрд╡ рд╣реИ
рдХрд┐ рдЗрд╕ рдкрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдирдП рд╡рд┐рдЪрд╛рд░ рдпрд╛ рдЯреНрд░реЗрдбрдСрдл рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ
рдмрд┐рдВрджреБред рд╣рдореЗрдВ рдЙрди рдЯреНрд░реЗрдбрдСрдлрд╝ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдХрд┐ рд░рд╣реЗ рд╣реИрдВ
рдмрд╛рд╣рд░ рд░рдЦрд╛ рд╣рдЖред
рдореИрдВ рдПрдХ рд╕рдореНрдореЗрд▓рди рдХреЗ рдХрд╛рд░рдг рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдХреА рдмреИрдардХ рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБред рдпрджрд┐ рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдХреА рдмреИрдардХ рдореЗрдВ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдореИрдВ ...
рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рднреА рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рд╕рдорд░реНрдерди рджреВрдВрдЧрд╛, рдЪрд╛рд╣реЗ ..=
, inclusive
, рдпрд╛ рдЕрдиреНрдпред
рдЬрдм рд╣рдо рдЗрд╕ рдкрд░ рд╣реЛрдВ рддреЛ рд░реЗрд╕реНрдЯ/рд╕реНрдкреНрд░реЗрдб рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реЛрдЧрд╛ред
рдореИрдВ рд╡реЛрдЯ ..
рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд▓рд┐рдП, ...
рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП, ....
рдмрд╛рдХреА / рдкреНрд░рд╕рд╛рд░ рдХреЗ рд▓рд┐рдПред
take_range(..max); // exclusive range
take_range(...max); // inclusive range
take_multiple_args(....tuple); // spread
if let 0..10 = get_num() {} // exclusive range pattern
if let 0...9 = get_num() {} // inclusive range pattern
if let [first, ....rest] = get_slice() {} // rest pattern
рдореИрдВ рджреЛ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдмрд╛рдХреА рд╕реНрд▓рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП ...
рд╡реЛрдЯ рджреВрдВрдЧрд╛:
рд▓реЛрдЧреЛрдВ рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА ...
рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рдХреЙрдлреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреИрд╕реА рднрд╛рд╖рд╛рдУрдВ рд╕реЗ "рдЖрд░рд╛рдо" рд╣реИ (рдХреЙрдлрд╝реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ varargs рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рд╣рд╕реНрддрд╛рдХреНрд╖рд░реЛрдВ рдореЗрдВ rest...
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ "рд╕реНрдкреНрд▓реИрдЯреНрд╕" рдХрд╣рддрд╛ рд╣реИ) рдФрд░ рдЕрдВрдЧреНрд░реЗрдЬреА (рд╕рд╣реА рдпреВрдирд┐рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рдХреЛрдбрдкреЙрдЗрдВрдЯ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рддреАрди рдЕрд╡рдзрд┐рдпрд╛рдБ рд╣реИрдВ рдЬреЛ рдПрдХ рдЗрд▓рд┐рдкреНрд╕рд┐рд╕ рдХреА рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИрдВ, рдЪрд╛рд░ рдирд╣реАрдВ, рдФрд░ рд▓реЛрдЧ рдЗрд▓рд┐рдкреНрд╕рд┐рд╕ рдХреЛ рд╕рдордЭрдиреЗ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рд▓рдЧрднрдЧ рдорддрд▓рдм рд╣реИ "рдФрд░ рдФрд░ рднреА рд╣реИ рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕реЗ рдЬрд╝реЛрд░ рд╕реЗ рдирд╣реАрдВ рдХрд╣ рд░рд╣реЗ рд╣реИрдВ" рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ, рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдореЗрдВред)
рдЬрдм рддрдХ рдореИрдВ рд░реЗрдВрдЬ рдХреЗ рд▓рд┐рдП ..
рдФрд░ ..=
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░рд╕реНрдЯ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдпрд╛рдж рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдмрд╛рдХреА рд╕реНрд▓рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП ...
рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐, рд╣рд░ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, ...
рдЯрд╛рдЗрдк рдХрд░рдирд╛ ..
рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдЕрднреА рднреА рдПрдХ рд╕рдВрдХрд▓рди-рд╕рдордп рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреАред
рдЗрд╕рдХреЗ рд▓рд┐рдП рдореИрдВ рджреЛ рдзрд╛рд░рдгрд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:
рдЕрдХреЗрд▓реЗ рдмрд╛рдХреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ (рдПрдХ рдЕрдиреБрдХреНрд░рдо-рдЕрдирдкреЕрдХрд┐рдВрдЧ рд╕рдВрджрд░реНрдн рдХреЗ рдмрд╛рд╣рд░) рдХреЛ рдЯрд╛рдЗрдкреЛ-рдкреНрд░рд╡рдг рдиреЛ-рдСрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред (рдпрд╛рдиреА for _ in ...rest
рдХреА рдЕрдиреБрдорддрд┐ рд╣реЛрдиреЗ рдкрд░ for _ in rest
рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд▓рдЧрднрдЧ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЯрд╛рдЗрдкреЛред
рдЕрд╕рд╛рдЗрди рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреИрдЯрд░реНрди рдХреЗ рд░реВрдк рдореЗрдВ рдУрдкрди-рдПрдВрдбреЗрдб рд░реЗрдВрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдорд╛рдиреНрдп рд╣реЛрдЧрд╛ред (рдпрд╛рдиреА let [first, ..rest] =
рдЕрдорд╛рдиреНрдп рд╣реЛрдЧрд╛ред)
@ssokolow рдЯреНрд░рд┐рдкрд▓ рдбреЙрдЯ рдХрд╛ рдорддрд▓рдм рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреИрдЯрд░реНрди рдореЗрдВ рдПрдХ рд╕реАрдорд╛ рд╣реИ рддрд╛рдХрд┐ рдЗрд╕реЗ рдмрд╛рдХреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдмрджрд▓рд╛рд╡ рд╣реЛред
@ рдлрд╛рдХреНрд╕ рдкреНрд╡рд╛рдЗрдВрдЯред рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рднреВрд▓ рдЧрдпрд╛ рдерд╛ред
рд╢рд╛рдпрдж "рдЕрдЧрд░ рд╣рдо рдХрднреА рдЬрдВрдЧ 2.0 рдмрдирд╛рддреЗ рд╣реИрдВ" рдЯреИрдЧ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫред
рдЯреНрд░рд┐рдкрд▓ рдбреЙрдЯ рдХрд╛ рдорддрд▓рдм рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреИрдЯрд░реНрди рдореЗрдВ рдПрдХ рд╕реАрдорд╛ рд╣реИ, рдЬреЛ рдЗрд╕реЗ рдмрд╛рдХреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдмрджрд▓рд╛рд╡ рд╣реЛрдЧрд╛ред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреИрдЯрд░реНрди рдореЗрдВ ...
рджреЛрдиреЛрдВ рдкрдХреНрд╖реЛрдВ рдкрд░ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ ( a...b
), рдЬрдмрдХрд┐ рдмрд╛рдХреА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ ...
рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдирд╣реАрдВ?
рд▓реИрдВрдЧ рдЯреАрдо рдиреЗ рдЖрдЬ рд╣рдорд╛рд░реА рдмреИрдардХ рдореЗрдВ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдкрд░ рдлрд┐рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХреА, рдФрд░ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореИрдЯреНрд░рд┐рдХреНрд╕ рдкрд░ рдкрд╣реБрдВрдЪреЗ:
рд╕рд╣рд╛рдпрдХ ...
рдкреИрдЯрд░реНрди рдореЗрдВ рдФрд░ ..
рднрд╛рд╡ рдореЗрдВ, рдФрд░ рдХреБрдЫ рдирд╣реАрдВ, рдПрдХ рдЕрд╕реНрдерд┐рд░ рдбрд┐рдЬрд╛рдЗрди рд╣реИ, рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рджреЛрдиреЛрдВ рдЬрдЧрд╣реЛрдВ рдкрд░ ...
рдФрд░ ..
рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреА, рд▓реЗрдХрд┐рди рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЪрд┐рдВрддрд╛ рд╣реИ; рд╣рдо рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЧрд▓рдд рдЕрд╡рдзрд┐ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдореЗрдВ рдШрдВрдЯреЛрдВ рдЦрд░реНрдЪ рдХрд░рдиреЗ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рдирд╣реАрдВ рд╣реИред
..=
рдФрд░ ..
рдЬрд╛рдирд╛ рд╕реМрдВрджрд░реНрдп рдХреА рджреГрд╖реНрдЯрд┐ рд╕реЗ рдХрдо рдЖрдХрд░реНрд╖рдХ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдкрд░реЛрдХреНрдд рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо рдЗрд╕реЗ рдмрд╣реБрдд рд╣реА рд╕реМрдореНрдп рддрд░реАрдХреЗ рд╕реЗ рднреА рд░реЛрд▓ рдЖрдЙрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдкрд╣рд▓реЗ ..=
рдХреЛ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкреЗрд╢ рдХрд░реЗрдВ (рдЬрд┐рд╕реЗ rustfmt рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ), рдФрд░ рдЗрд╕рдХреЗ рдореБрд╣рд╛рд╡рд░реЗрджрд╛рд░ рдмрдирдиреЗ рдХреЗ рдмрд╛рдж рд╣реА, ...
рд╣рдЯрд╛ рджреЗрдВред
рдпрджрд┐ рдЖрдк рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЯреАрдо рдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..=
рдФрд░ ..
рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд╣рдорд╛рд░рд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд░рд╛рд╕реНрддрд╛ рд╣реИред рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рднреА рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдирдП рддрд░реНрдХ рдЙрдард╛рдП рдЬрд╛рдПрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ: рд╣рдо рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП ..=
рдЕрдВрдХрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдЧрд╛ред рдкреИрдЯрд░реНрди рдФрд░ рднрд╛рд╡, рдФрд░ рдмрд╛рдж рдореЗрдВ рд╣рдо рдЬрд╛рдПрдБрдЧреЗ FCP!
рдЗрд╕рдХреЗ рд▓рд┐рдП, рд╣рдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА (рдпрд╛ рдХреБрдЫ рд▓реЛрдЧреЛрдВ) рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╕рдВрднрд╡рддрдГ рдпрд╣ рдХрдИ рдЫреЛрдЯреЗ рдкреАрдЖрд░ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
..=
рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рдХреЗ рд░реВрдк рдкрд╛рд░реНрд╕рд░ рдХреЗ рд▓рд┐рдП ...
рдФрд░ рдореМрдЬреВрджрд╛ рдкрд░реАрдХреНрд╖рдг рдХрдиреНрд╡рд░реНрдЯред...
рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдПрдХ "рдореМрди" рдмрд╣рд┐рд╖реНрдХрд░рдг рд╣реЛ, рдЗрд╕рд▓рд┐рдП рдЪреЗрддрд╛рд╡рдиреА рдЖрджрд┐ (рдЕрднреА рддрдХ) рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред...
рдкреИрдЯрд░реНрди рдкрд░ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАDotDotEquals
рдЯреЛрдХрди рдЬреЛрдбрд╝рдХрд░ рд▓реЗрдХреНрд╕рд░ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдпрд╣рд╛рдВ рдореМрдЬреВрджрд╛ DotDotDot
) рдФрд░ рдлрд┐рд░ рд╣рд░ рдЬрдЧрд╣ DotDotEquals
рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рд░реНрд╕рд░ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд DotDotDot
рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ ( рдЙрджрд╛рд╣рд░рдг )ripgrep DotDotDot
рдпрд╣рд╛рдВ рдЖрдкрдХрд╛ рдорд┐рддреНрд░ рд╣реИ;)...
рдХрднреА рднреА рд╕реНрдерд┐рд░ рдирд╣реАрдВ рдерд╛, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕реЗ рдХреЗрд╡рд▓ ..=
рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреБрд░рд╛рдиреЗ рд╕рдорд░реНрдерди рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВрдмрд╕ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐, рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп, рд╕рд┐рдВрдЯреИрдХреНрд╕ extern fn foo(a: u32, ...)
рдХреЛ ..=
рдирд╣реАрдВ рдмрджрд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЗрд╕реЗ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЛрдб рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛ рдкрд╣рд▓рд╛ рдХрджрдо рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдЧрд▓реЗ 2 рд╣рдлреНрддреЛрдВ рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдХреЛрдИ рдЗрд╕реЗ рдЪреБрдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдмреЗрдЭрд┐рдЭрдХ!
рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ ..^
рддреБрд▓рдирд╛ рдореЗрдВ ..=
рдкрдХреНрд╖ рдореЗрдВ рдЕрдзрд┐рдХ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ a operator= b
рдкрд╣рд▓реЗ рд╕реЗ рд╣реА, рдХреБрдЫ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП, a = a operator b
рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рд╣реИред рджреВрд╕рд░реА рдУрд░ ^
рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд╣реБрдд рдХрдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреЗрд╡рд▓ XOR рдХреЗ рд▓рд┐рдП, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдХрдо рднреНрд░рдо рдкреИрджрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
..
рд▓рд┐рдП рдмрд╛рдПрдВ рдФрд░ рджрд╛рдПрдВ рдСрдкрд░реЗрдВрдб рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ ..=
рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИред рд╕рдВрджрд░реНрдн рднреА рдСрдкрд░реЗрдЯрд░ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ +=
()
рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХрдерди рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдХрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЖрдорддреМрд░ рдкрд░ рдЕрдкрдиреА рд▓рд╛рдЗрди рдкрд░ред рдЬрдмрдХрд┐ ..=
рд╕рдорд╛рд╡реЗрд╢реА рд░реЗрдВрдЬ рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЕрдиреНрдп рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ..^
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕реАрдорд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдШрд╛рддрд╛рдВрдХ рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рдХрд░рдирд╛ рд╣реИред
@Xaeroxe ^
рдХрд╛ рдШрд╛рддрд╛рдВрдХ рдХреЗ рд╕рд╛рде рд░рд╕реНрдЯ рдореЗрдВ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИ (рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ), рдЬрдмрдХрд┐ +=
, -=
, *=
рд╕рднреА рдЬрдВрдЧ рдореЗрдВ рдореМрдЬреВрдж рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ ^=
рдореМрдЬреВрдж рд╣реИред
рд▓реЗрдХрд┐рди idk, рдЗрд╕рдХрд╛ рдареАрдХ ..=
рднреА рд╣реИред
рдЪреВрдВрдХрд┐ #42134 рдХрд╛ рд╡рд┐рд▓рдп рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдХреНрдпрд╛ рдЕрдм рд╣рдо рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрд╣рд╛ рдерд╛, рдпрд╣ рдЬрд▓реНрдж рд╣реА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдореЗрдВ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ред
@clarcharr рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рд╣рдо рдЙрд╕ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде-рд╕рд╛рде ..=
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рдирд┐рд░реНрдгрдп рдкрд░ рдЖрдП рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреАрдЖрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдУрд╣, рдореИрдВ рдЧрд▓рдд рдерд╛ред рд╣рдо рдЗрд╕реЗ рдХрдВрдкрд╛рдЗрд▓рд░ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдЕрд╡рдзрд┐ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреА рд╣реЛрдЧреАред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рд╕рдордп рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рднреА рдореЗрд░рд╛ рдирд┐рд░реНрдгрдп рдирд╣реАрдВ рд╣реИред
рдореИрдВрдиреЗ рдмрд╣реБрдд рдкрд╣рд▓реЗ рдЗрд╕ рд╡рд┐рд╖рдп рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдерд╛, рдЬрдм рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрд╛ рдХрд┐ ...
рдЖрдо рд╕рд╣рдорддрд┐ рдмрдирд╛ рд░рд╣рд╛ рд╣реИред ..=
рдореБрдЭреЗ рдмрд┐рд▓реНрдХреБрд▓ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реА рдирдЬрд░ рдореЗрдВ рдПрдХ рдкреНрд░рднрд╛рд╡ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдмрд╛рдЗрдХрд╢реЗрдбрд┐рдВрдЧ рдореМрдЬреВрджрд╛ рдкреИрдЯрд░реНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
рдпрд╣ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдмреЗрдХрд╛рд░ рд╣реИ!
= рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХрд╛ рдЕрд░реНрде рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ +=, -=, *= рдореЙрдбрд▓ рдореЗрдВ рднреА, рд▓реЗрдХрд┐рди ..= рдХреБрдЫ рдкрд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдЗрддрдирд╛ рднреНрд░рдорд┐рдд рдФрд░ рдмрджрд╕реВрд░рддред
рдЬреИрд╕реЗ рдПрд░реЗ рдЗрдВрдбреЗрдХреНрд╕ 0 рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, '...' рдЕрдЪреНрдЫрд╛ рдФрд░ рд╕реБрдВрджрд░ рд╣реИ, рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХреА рдЖрджрдд рд╣реЛ рдЬрд╛рдПрдЧреАред
@zengsai
..=
рдЕрд╡рдзрд╛рд░рдгрд╛рддреНрдордХ рд░реВрдк рд╕реЗ ==
рдФрд░ <=
рдЬреИрд╕реЗ рдСрдкрд░реЗрдЯрд░реЛрдВ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрдВрдЧ рдореЗрдВ рдореМрдЬреВрдж рд╣реИрдВ рдФрд░ рд╕рдорд╛рдирддрд╛ рддреБрд▓рдирд╛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдирд╣реАрдВред
(рдпрд╛рдиреА 1..=5
"рд░реЗрдВрдЬ рдУрд╡рд░ рд╡реИрд▓реНрдпреВрдЬ 1 <= x <= 5
" рдХреЗ рд▓рд┐рдП рд╢реЙрд░реНрдЯрд╣реИрдВрдб рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ 1..5
рд╡рд┐рдкрд░реАрдд рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ "рд░реЗрдВрдЬ рдУрд╡рд░ рд╡реИрд▓реНрдпреВрдЬ 1 <= x < 5
")
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ "рдЗрд╕рдХреА рдЖрджрдд рдбрд╛рд▓рдиреЗ" рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдПрдХ рдРрд╕рд╛ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдкрдврд╝рдирд╛ рдпрд╛ рдЧрд▓рдд рдЯрд╛рдЗрдк рдХрд░рдирд╛ рдЕрдзрд┐рдХ рдХрдард┐рди рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдердХреЗ рд╣реБрдП рдпрд╛ рд╡рд┐рдЪрд▓рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреА рдСрдл-рдмрд╛рдп-рд╡рди рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдкреНрд░рд╕рд┐рджреНрдз рдлреБрдЯрдЧрди-рд╡рд╛рдИ рд╣реИрдВред
рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЧрд▓рддреА рд╕реЗ ...
рдЯрд╛рдЗрдк рдХрд░ рджрд┐рдпрд╛ рдерд╛ рдЬрдм рдореЗрд░рд╛ рдорддрд▓рдм рдкрд╣рд▓реЗ рд╕реЗ рд╣реА ..
ред рд╢реБрдХреНрд░ рд╣реИ, рдореИрдВ рд╣рдореЗрд╢рд╛ рд╕реНрдерд┐рд░ рдЬрдВрдЧ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рд╕рдВрдХрд▓рдХ рдиреЗ рдЗрд╕реЗ рдкрдХрдбрд╝ рд▓рд┐рдпрд╛ред (рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореБрдЭреЗ рдпрд╣ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдВрд╕рдкреЗрд╢рд┐рдпреЛрдВ рдореЗрдВ рдРрдВрдарди рдереА рдпрд╛ рдорд╛рдВрд╕рдкреЗрд╢рд┐рдпреЛрдВ рдХреА рд╕реНрдореГрддрд┐, рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдореИрдВ рдПрдХ рдЫрджреНрдо-рджреАрд░реНрдШрд╡реГрддреНрдд рдЯрд╛рдЗрдк рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЧреИрд░-рдХрдерд╛ рд▓реЗрдЦрди рдХрд░рддрд╛ рд╣реВрдВред)
@zengsai ...
рдмрд╣реБрдд рд╕реВрдХреНрд╖реНрдо рд╣реИ, ..
рд╕рдорд╛рди рджрд┐рдЦрддрд╛ рд╣реИ
рдХрд┐рд╕реА рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмрд┐рдВрджреБрдУрдВ рдХрд╛ рдЕрд░реНрде рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЛрдВ рдХрд╛ рд╣реЛрдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдЧрд╛
рд╕реМрдВрджрд░реНрдп рдХреА рджреГрд╖реНрдЯрд┐ рд╕реЗ рдЖрдХрд░реНрд╖рдХ рд╣реЛрдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдлреБрдЯ рдЧрди рдХреЛ рд╣рдЯрд╛рдирд╛ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
рдирд╡рд╛рдЧрдВрддреБрдХ: рдореИрдВрдиреЗ рдПрдХ рдЯреАрдПрд▓; рдбреАрдЖрд░ рдмрдирд╛рдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд╣реБрдд рд▓рдВрдмрд╛ рдзрд╛рдЧрд╛ рд╣реИред рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ: https://github.com/rust-lang/rust/issues/28237#issuecomment -296310123
"рдСрдл-рдмрд╛рдп-рд╡рди рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдЬреИрд╕реЗ рдХрд┐ рдкреНрд░рд╕рд┐рджреНрдз рдлреБрдЯрдЧрди-рд╡рд╛рдИ" рдХреЗ рд▓рд┐рдП рдмреЛрд▓рддреЗ рд╣реБрдП, рдореЗрд░рд╛ рдХрд╣рдирд╛ рд╣реИ: рдЯрд╛рдЗрдкреЛ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдкреНрд░рдореБрдЦ рдХрд╛рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЗрд╕ рддреБрд▓рдирд╛ рдХреЛ рджреЗрдЦреЗрдВ, ".." рдФрд░ "..." рдмрдирд╛рдо "=" рдФрд░ "==", рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЯрд╛рдЗрдкреЛ рдореБрджреНрджреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП "==" рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдорд┐рд▓рдирд╛ рдЪрд╛рд╣рд┐рдП? рдЕрдЧрд░ "=" рдФрд░ "==" рдареАрдХ рд╣реИ, рддреЛ ".." рдФрд░ "..." рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рдореИрдВ рджреЛ рд╕рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рд░рд╕реНрдЯ-рд▓реИрдВрдЧ рдХрд╛ рдкрд╛рд▓рди рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЪреАрдВрдЯреА рдпрд╣ рдореЗрд░реЗ рдХрдИ рдирд┐рдЬреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореБрдЭреЗ рдЕрд╕рд╣рдЬ рдорд╣рд╕реВрд╕ рдХрд░рд╛рддреА рд╣реИред рди рдХреЗрд╡рд▓ рд╕реМрдВрджрд░реНрдп рдХреА рджреГрд╖реНрдЯрд┐ рд╕реЗ рдЖрдХрд░реНрд╖рдХ, рдпрд╣ рдХреЛрдб рдХреЗ рд▓реЗрдЦрди рдФрд░ рдкрдврд╝рдиреЗ рдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рднреА рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред
@zengsai рдпрд╣ рдореЗрд░реА рд╕рдордЭ рдереА рдХрд┐ рдпрд╣ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ _writing_ рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдХреЛрдб рдХреА рд╕рдореАрдХреНрд╖рд╛, рдкрдврд╝рдиреЗ рдФрд░ рд╕рдордЭрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕рдХреА рддрд▓рд╛рд╢ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк ..
рдмрдирд╛рдо ...
рдХреЛ рдПрдХ-рдПрдХ-рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рдпрд╛рдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ ..=
рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд╣рд░ рдЦрдбрд╝рд╛ рд╣реИ рдФрд░ рдЬреАрддрд╛ рд╣реИ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд╕реМрдВрджрд░реНрдп рдХреА рджреГрд╖реНрдЯрд┐ рд╕реЗ ..=
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд╕рдВрдж рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рд╣рд░ рдХреЛрдИ рд▓рдЧрднрдЧ ..
рдФрд░ ...
рдмрд╣реБрдд рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдкрдврд╝ рд░рд╣рд╛ рд╣реИред
@zengsai рдХреНрдпреЛрдВрдХрд┐ =
рдмрдирд╛рдо ==
рдореЗрдВ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬреЛ ..
рдмрдирд╛рдо ...
ред
рдЬрд╝рд░реВрд░, рдЖрдк рд╕реА рдореЗрдВ =
рдФрд░ ==
рдХреЛ рднреНрд░рдорд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ...
if x = y
рдмрдЬрд╛рдп if x == y
(рдЗрд╕ рд╕реБрдзрд╛рд░ рдореЗрдВ рдЬрдВрдЧ рдФрд░ рдЕрдЬрдЧрд░ рдмрдирд╛ рд╣реИ)x == y;
рдмрдЬрд╛рдп x = y;
рдЯрд╛рдЗрдк рдХрд░ рджрд┐рдпрд╛, рддреЛ рдореБрдЭреЗ рдПрдХ рдРрд╕реЗ рд╡реНрдпрдВрдЬрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓реА рдЬрд┐рд╕рдХрд╛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реИредрдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд▓рд┐рдП рдпрд╣ рднреА рдкрд╣рдЪрд╛рдирдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ ..
рдмрдирд╛рдо ...
рднреНрд░рдо рдЧрдбрд╝рдмрдбрд╝ рд╣реИ , рдЧрд▓рдд рд╣реЛрдиреЗ рджреЗрдВред
@zengsai ..
рдФрд░ ...
рдЙрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╕рднреА рд╕рдорд╛рди рд▓рдХреНрд╖рдгреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдпрд╣ рдбрд┐рдЬрд╝рд╛рдЗрди рджреНрд╡рд╛рд░рд╛ рд╣реИ)ред рдПрдХ рдХреЗ рдмрд╛рдж рдПрдХ рддреНрд░реБрдЯрд┐ рдПрдХ рдмрд╣реБрдд рд╣реА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореБрджреНрджрд╛ рд╣реИред
рдореИрдВ рд╕реНрдкрд╖реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рднреА рдЗрд╕ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╕реЗ рдирдлрд░рдд рдХрд░рддрд╛ рд╣реВрдВ, рдЗрддрдирд╛ рдХрд┐ рдореИрдВ @aturon рдХреА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдЬрд╣рд╛рдВ рд╣рдо ..
рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдФрд░ ...
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдкреИрдЯрд░реНрди "рдЕрд╕реНрдерд┐рд░" рд╣реИ; рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рд╣реЛрдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
рд▓реЗрдХрд┐рди рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕ рдкрд░ рдХрднреА рднреА рдЖрдо рд╕рд╣рдорддрд┐ рдирд╣реАрдВ рдмрдирд╛ рдкрд╛рдПрдВрдЧреЗ, рдХрд┐ рдЗрд╕ рдзрд╛рдЧреЗ рдкрд░ рдХреЛрдИ рдирдпрд╛ рддрд░реНрдХ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдирд┐рд╡реЗрд╢ рдХрд┐рдП рдЧрдП рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ (рд╕рд╛рде рд╣реА рдмрд╛рдХреА рднрд╛рд╖рд╛ рдЯреАрдо) рдиреЗ рдЗрд╕ рдмрджрд▓рд╛рд╡ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ред рдЗрд╕рд▓рд┐рдП рдореИрдВ рдПрдХ рддрд░рдл рдЦрдбрд╝рд╛ рд╣реВрдВ рддрд╛рдХрд┐ рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕реБрд▓рдЭрд╛ рд╕рдХреЗрдВред
рдпрджрд┐ рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдореЗрдВ рдЗрд╕рдХрд╛ рдХреЛрдИ рд╕рд╛рдВрддреНрд╡рдирд╛ рд╣реИ рддреЛ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЛрдВ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЖрдкрдХреЗ рдкреВрд░реЗ рдХреЛрдб рдореЗрдВ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдЧреАред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рдЕрднреА рднреА рдкреИрдЯрд░реНрди рдореЗрдВ ...
рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╛рдЦреБрд╢ рд╣реВрдВ, рдФрд░ рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдмрд╕ рдЕрдкрдиреЗ рджрд╛рдВрдд рдкреАрд╕рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдкреВрд░реА рд▓реИрдВрдЧ рдЯреАрдо рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реИ рдХрд┐ ..
рдФрд░ ...
рднрд╛рд╡ рд╣реЛрдирд╛ рдПрдХ рднрдпрд╛рдирдХ рдорд╕реНрд╕рд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдореВрдХ рдЯрд╛рдЗрдкреЛ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдореЗрдВ рдШрдВрдЯреЛрдВ рдЦрд░реНрдЪ рдХрд░рддреЗ рд╣реИрдВред
рдмрд╛рдХреА рд▓реИрдВрдЧ рдЯреАрдо рджреГрдврд╝рддрд╛ рд╕реЗ рдорд╣рд╕реВрд╕ рдХрд░рддреА рд╣реИ рдХрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдФрд░ рдкреИрдЯрд░реНрди рдХреЗ рдмреАрдЪ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рд╣реЛрдирд╛ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рдФрд░ рдЬрдм рддрдХ рдореИрдВ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВ, рд╣рдо рд╕рднреА рдиреЗ рдЕрдкрдиреЗ рддрд░реНрдХ рджрд┐рдП рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдЧрддрд┐рд░реЛрдз рдореЗрдВ рд░рд╣рдирд╛ рд╕реНрд╡рд╕реНрде рд╣реИред
@ssokolow рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореИрдВ рдЕрднреА рднреА рдЖрдкрд╕реЗ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ред рдХрдВрдкрд╛рдЗрд▓рд░ рдЖрдкрдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЯрд╛рдЗрдкреЛ рдХреА рдЪреЗрддрд╛рд╡рдиреА рджреЗ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк "x=5" рдЯрд╛рдЗрдк рдХрд░рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдпрд╣ "x=6" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП?
рдЯрд╛рдЗрдкреЛ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрдВрдкрд╛рдЗрд▓рд░ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реИред
рдЕрдЧрд░ рдЗрд╕ рдмрджрд▓рд╛рд╡ рдХрд╛ рдХреЛрдИ рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕рд╣рдордд рд╣реВрдВред рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рднрд╛рд╖рд╛ рдХрд╛ рд╕реМрдВрджрд░реНрдп, рд▓реЗрдЦрди рдФрд░ рд╡рд╛рдЪрди рдкреНрд░рд╡рд╛рд╣ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдореЗрд░реЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд┐рдЪрд╛рд░ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИред
рдЖрдЬ рдХреА рдЬрдВрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрдврд╝рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реА рд╣реИ, рдЬрд┐рддрдирд╛ рдЕрдзрд┐рдХ рдЕрд╕рд╛рдорд╛рдиреНрдп рдФрд░ рдкреНрд░рддрд┐рд╡рд╛рджрд╛рддреНрдордХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЬрд┐рддрдирд╛ рдЕрдзрд┐рдХ рд╕реАрдЦрдиреЗ рдХреА рдЕрд╡рд╕реНрдерд╛ рд╣реЛрдЧреА, рдЗрд╕реЗ рдПрдХ рдФрд░ рдкрд░реНрд▓ рди рдмрдирд╛рдПрдВред
@withboats рд╣рдо рдЗрд╕рдХреЗ рд╕рд╛рде рдмрд╣рд╕ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЗрд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рд╢рд╛рдпрдж рдЗрд╕ рддрд░реНрдХ рдореЗрдВ рдмрд╣реБрдд рджреЗрд░ рд╣реЛ рдЪреБрдХреА рд╣реИ, рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддрд╛, рдмрд╕...
@zengsai
рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯреНрд░реЗрдб-рдСрдл рдХрд┐рдП рдЬрд╛рдиреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЙрди рджреЛрдиреЛрдВ рдХреЗ рдмреАрдЪ рд╕рд░реНрд╡реЛрддреНрддрдо рд╕рдВрддреБрд▓рди рдмрд┐рдВрджреБ рдкрд░ рдХрднреА рд╕рд╣рдордд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред
рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕реНрд╡рд╛рдж рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдореИрдВ ..=
рдХреЛ рдПрдХ рдЫреЛрдЯреА рд╕реА рдХреАрдордд рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдЬрд┐рд╕рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдЧ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдореЗрдВ рдмрд╣реБрдд рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╕рдордп рдмрд░реНрдмрд╛рдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
(рдореЗрд░рд╛ рдлреЛрдХрд╕ рдХрд╛ рдХреНрд╖реЗрддреНрд░ UI/UX рдбрд┐рдЬрд╝рд╛рдЗрди рд╣реИ рдФрд░ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдирд┐рдпрдореЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдЬреЛ рд╡реЗ рдЖрдкрдХреЛ рд╕рд┐рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЛ рдЧрд▓рддреА рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЛ рдиреБрдХрд╕рд╛рди рдФрд░/рдпрд╛ рд╕рдордп-рд╕рдордп рдкрд░ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдиреБрдкрд╛рддрд┐рдХ рд░реВрдк рд╕реЗ рдЖрдиреБрдкрд╛рддрд┐рдХ рдмрдирд╛рдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред )
рдореЗрд░реА рдЫреЛрдЯреА рд░рд╛рдп рдореЗрдВ, 5
рдмрдирд╛рдо 6
..
рдмрдирд╛рдо ...
рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд╣реИред
@zengsai рдореБрдЭреЗ рдЗрд╕ рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рдИрдореЗрд▓ рдкреНрд░рд╛рдкреНрдд рд╣реЛ рд░рд╣реЗ рд╣реИрдВ, рдЕрдкрдиреА рднрд╛рд╡рдирд╛рдУрдВ рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП IRC рдЪреИрдирд▓ рдХреЛ рд░рд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ рдЬрд╛рдирд╛ рдЬрд╛рдП?
@daiheitan рдпрд╣ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрдЪрд╛рд░ рд╣реИред рдЕрдЧрд░ рдЖрдкрдХреЛ рдпрд╣ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ, рддреЛ рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕ рдИрдореЗрд▓ рдХреА рдЕрдкрдиреА
рдЬрдм рдореИрдВрдиреЗ рдкрд╣рд▓реА рдмрд╛рд░ рд░рд╕реНрдЯ рдХреЛ рджреЗрдЦрд╛, рддреЛ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ ..
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИрд░рд╛рди рдерд╛ред (1..10).sum()
рд╣реИ... 1 рд╕реЗ 9 рддрдХ рдХреЗ рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХрд╛ рдпреЛрдЧ? рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЛ рдпрд╣ рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕рд╕реЗ рдкреВрдЫрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ, рддреЛ рдЗрд╕рдХреА рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рд╡рд╣ рдЗрд╕реЗ 1 рд╕реЗ 10 рддрдХ рдЬрд╛рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░реЗрдЧрд╛ред рдФрд░ рд╡рд╣ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рд╕рдордорд┐рдд рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рд╕реЗ рд╕рдордорд┐рддрд┐ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реЗрдВрдЧреЗред рдкрд░реНрд╡рддрдорд╛рд▓рд╛ред 1 рдХреЛ рдХреНрдпреЛрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рд▓реЗрдХрд┐рди 10 рдХреЛ рдирд╣реАрдВ?
рдПрдХ рд╕рдордорд┐рдд рд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЕрд╕рдордорд┐рдд рд░реВрдк ..=
рдЬреЛрдбрд╝рдирд╛ рдЗрд╕реЗ рдФрд░ рднреА рдЕрдзрд┐рдХ рдЕрд╕рдВрдЧрдд рдмрдирд╛рддрд╛ рд╣реИред рдХреЛрдИ рдпрд╣ рдкреВрдЫ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдмрд╛рдИрдВ рдУрд░ рдХреЛ рд╕рдорд╛рд╡реЗрд╢реА рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП =
рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рджреЛрдиреЛрдВ рдкрдХреНрд╖реЛрдВ рдХреА рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП =..=
ред
рд╕реНрд╡рд┐рдлреНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ ( ..<
рдЕрдирдиреНрдп рдХреЗ рд▓рд┐рдП рдФрд░ ...
рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП) рдЬреИрд╕рд╛ рдХреБрдЫ рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрдиреЗ рдФрд░ рдкрдардиреАрдпрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░реЗрдЧрд╛ред рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрд░реНрде рдХрд╛ рд╕рд╣реА рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдЖрдк рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рдирдП рд╣реЛрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╛рдж рд░рдЦрдиреЗ рд╡рд╛рд▓реА рдПрдХ рдмрд╛рдд рдХрдо рд╣реИред рдореБрдЭреЗ рдЙрдореНрдореАрдж рдереА рдХрд┐ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЪреБрдирд╛ рдЬрд╛рдПрдЧрд╛, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд░рд╕реНрдЯ рдХреЗ рдирд╡рд╛рдЧрдВрддреБрдХ-рдорд┐рддреНрд░рддрд╛ рдХреА рдУрд░ рдзрдХреЗрд▓рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ред
@rkarp рдХреБрдЫ рд╣рдж рддрдХ, рдпрд╣ рд╢рд╛рдпрдж рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдкреВрд░реНрд╡рд╛рдЧреНрд░рд╣ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд░рд╕реНрдЯ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкрд╛рдпрдерди рдкреНрд░рднрд╛рд╡ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдкрд╛рдпрдерди рдЙрд╕реА рддрд░рд╣ рдХреА рдЖрдзреА-рдЦреБрд▓реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред (рдпрд╛рдиреАред рдкрд╛рдпрдерди рдХреЗ range(1, 5)
рдпрд╛ myList[1:5]
рджреЛрдиреЛрдВ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд░рд╕реНрдЯ рдХреЗ 1..5
рдХреЗ рд╕рдорд╛рди рд╣реА рд╣реИ)
рдкрд╛рдпрдерди рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдФрдЪрд┐рддреНрдп рдХреЗрд╡рд▓ рдПрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реЛрдиреЗ рд╕реЗ рдЬреБрдбрд╝рд╛ рдерд╛ рдФрд░ рдЖрдзреЗ-рдЦреБрд▓реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдиреЗ head, tail = myList[:pivot], mylist[pivot:]
рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рдХреЛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛ рджрд┐рдпрд╛ред
рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд░рд╕реНрдЯ 1.0 рдкрд╛рд╕ рдХрд░ рдЪреБрдХрд╛ рд╣реИ, рдореМрдЬреВрджрд╛ рдХреЛрдб рдХреЛ рдирд╣реАрдВ рддреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╛рдлреА рд╕рдЦреНрдд рдирд┐рдпрдо рд╣реИрдВред ..
рдЕрдирдиреНрдп рдмрд╛рд╣рд░реА рдкреИрдЯрд░реНрди рдХреЗ рд▓рд┐рдП рдФрд░ ...
рдЕрдирдиреНрдп рдЕрдВрджрд░реВрдиреА рдкреИрдЯрд░реНрди рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рд░рд╣рдирд╛ рд╣реЛрдЧрд╛ред
..=
рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк ..
(рдЕрдирдиреНрдп) рдФрд░ ..=
(рд╕рдорд╛рд╡реЗрд╢реА) рдХреЛ рд╣рд░ рдЬрдЧрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ ...
рдХреЛ ..
рд▓рд┐рдП рдкрджрд╛рд╡рдирдд рдкрд░реНрдпрд╛рдп рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВред рдкреИрдЯрд░реНрди рдореЗрдВред
рдХреЗрд╡рд▓ рдпрд╣ рдХрд╣рдирд╛, рдЯреЛрдХрди рдХреЗ рд░реВрдк рдореЗрдВ ..=
рд╣реЛрдирд╛ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рдПрдХ рдЕрд╕рдВрдЧрдд рдкрд░рд┐рд╡рд░реНрддрди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореИрдХреНрд░реЛрдЬрд╝ рдореЗрдВ :tt
рдирд┐рдпрдореЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред рд╢рд╛рдпрдж рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдпрд╣ рдПрдХ рд╢рд╛рдВрдд рдмрджрд▓рд╛рд╡ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред (рд╡рд┐рдХрд▓реНрдк .. /* why not */ =
рдЕрдиреБрдорддрд┐ рджреЗ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ)
@ssokolow рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, рдпрд╣ рд░рд╕реНрдЯ рдореЗрдВ рдЯрд╛рдЗрдк рдПрд░рд░ рд╣реИ, рдкрд╛рд░реНрд╕ рдПрд░рд░ рдирд╣реАрдВред a = 2
рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ рдЬреЛ ()
рд▓реМрдЯрд╛рддреА рд╣реИ, рдФрд░ if
bool
рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрд╕рдВрдЧрдд рд╣реИрдВред
рдзреАрд░реЗ-рдзреАрд░реЗ рдирд┐рдпрдо рдмрджрд▓ рд░рд╣реЗ рд╣реИрдВред рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ ..=
3 рдЯреЛрдХрди рд╣реИрдВ рдЬрд╣рд╛рдВ рдкрд╣рд▓реЗ 2 рдХреЗ рдмрд╛рдж рдХреЛрдИ рд╕реНрдерд╛рди рдирд╣реАрдВ рд╣реИред
@eddyb : рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ, рдореИрдВ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВред рдХреНрдпрд╛ рдмрд┐рдирд╛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдП рдПрдХ рдирдпрд╛ рдЯреЛрдХрди рдкреЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ: tt рдЗрд╕реЗ рдХреИрд╕реЗ рдкрд╛рд░ рдХрд░рддрд╛ рд╣реИ?
рдпрд╣ рдХреЛрдб рд╡рд░реНрддрдорд╛рди рдореЗрдВ "рдирд┐рдпрдо 2" рдФрд░ "рдирд┐рдпрдо 4" рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдЕрдЧрд░ рдореИрдВ рдЗрд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ рддреЛ рдЗрд╕реЗ "рдирд┐рдпрдо 2" рдФрд░ "рдирд┐рдпрдо 5" рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
macro_rules! ex {
( . . ) => { "Rule 1: . ." };
( .. ) => { "Rule 2: .."};
{ . . = } => { "Rule 3: . . = " };
{ .. = } => { "Rule 4: .. = " };
{ ..= } => { "Rule 5: ..=" };
}
macro_rules! show {
( $($t:tt)* ) => { println!("{}", ex!($($t)*)) };
}
fn main() {
show!(..);
show!(..=);
}
рдирд╣реАрдВ, рдпрд╣ рдПрдХ рдмрджрд▓рд╛рд╡ рд╣реИ рдХрд┐ рдЯреЛрдХрди рдХреЛ рдХреИрд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред @jseyfried рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рд╕рдордЭрд╛ рд╕рдХрддрд╛ рд╣реИред
рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, рдпрд╣ рд░рд╕реНрдЯ рдореЗрдВ рдЯрд╛рдЗрдк рдПрд░рд░ рд╣реИ, рдкрд╛рд░реНрд╕ рдПрд░рд░ рдирд╣реАрдВред рдП = 2 рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ рдЬреЛ () рд▓реМрдЯрд╛рддреА рд╣реИ, рдФрд░ рдпрджрд┐ рдмреВрд▓ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рд╣реИ, рддреЛ рд╡реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрд╕рдВрдЧрдд рд╣реИрдВред
@xfix рдзрдиреНрдпрд╡рд╛рджред рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдЬрдм рдореИрдВрдиреЗ рд╡рд╣ рдЯрд╛рдЗрдкреЛ рдмрдирд╛рдпрд╛ рдерд╛ рддреЛ рдореИрдВ рдЙрдЪрд┐рдд рдзреНрдпрд╛рди рдирд╣реАрдВ рджреЗ рд░рд╣рд╛ рдерд╛ рдФрд░ рдореИрдВ рдЕрднреА рднреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐-рдЙрдиреНрдореБрдЦ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрднреНрдпрд╕реНрдд рдирд╣реАрдВ рд╣реВрдВред
рдореИрдВрдиреЗ рдЕрдкрдиреА рдЯрд┐рдкреНрдкрдгреА рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░ рд▓реА рд╣реИред
рдореБрдЭреЗ ..=
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ рдФрд░ рдореИрдВ рдкреИрдЯрд░реНрди рдореЗрдВ ...
рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реВрдВред рдпрджрд┐ рд╣рдо рдЯрд╛рдЗрдкреЛ рддреНрд░реБрдЯрд┐ рд╕реЗ рдбрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЗрд╕рдХреЗ рд╢реЙрд░реНрдЯрд╣реИрдВрдб рдХреЗ рд▓рд┐рдП ...
рдпрд╛ ..=
рдХреЗ рдмрдЬрд╛рдп рд╣рдореЗрд╢рд╛ RangeInclusive { start, end }
рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдВрднрд╛рд╡рд┐рдд рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдЕрднреА рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рд╣реИ:
if let 5..=x { ... }
@clarcharr рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рд╣реИред
rustc 1.17.0 (56124baa9 2017-04-24)
error: unexpected token: `=`
--> <anon>:3:13
|
3 | if let 5..=x {
| ^^
error: aborting due to previous error
@clarcharr @kennytm
рдЬрдм рд╣рдо рдПрдХ рдСрдкрд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ ..=
рдкреЗрд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреА:
error: expected one of `::` or `=`, found `{`
--> <anon>:3:13
|
3 | if let 5..=x {
| ^
error: aborting due to previous error
рдЕрднреА рдХреА рддрд░рд╣ let x=10; if let 5..x {}
рддреЛ рдпрд╣ "рдЕрд╕реНрдкрд╖реНрдЯрддрд╛" рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреА рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ if let 5..x {}
рд╕реЗ рдЕрдзрд┐рдХ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред
@Boscop рдмрд┐рдВрджреБ рдпрд╣ рд╣реИ рдХрд┐, рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдпрджрд┐ рд╣рдо 5..
рдХреЛ Some(5)
рдЬреИрд╕реЗ рдкреИрдЯрд░реНрди рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ if let 5.. = x
рд╕рдорд╛рди рд╣реЛрдЧрд╛ let Some(5) = x
, рдФрд░ рдмрд╛рдж рд╡рд╛рд▓рд╛ рд╕рдВрдХрд▓рдиред рдореЗрд░реЗ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ 5..
рдПрдХ рдкреИрдЯрд░реНрди рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡рд╣рд╛рдБ рд╕реЗ рдХреЛрдИ рд╕рдВрдЧрддрддрд╛ рдЦрддрд░рд╛ рд╣реИ if let
рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ..=
ред
рдЕрдЧрд░ рд╣рдо рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдкреЗрд╢ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреИрдЯрд░реНрди рдореЗрдВ ..=
рдФрд░ ..
рджреЛрдиреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рддреЛ if let 5..=x
рд╣рдореЗрд╢рд╛ if let 5.. = x
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП: if let (single expression)
рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреЛрдИ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рд╣реИред
@kennytm рддреЛ рд╣рдо рджреЛрдиреЛрдВ рдиреЗ 2 рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рджрд┐рдЦрд╛рдпрд╛ рдХрд┐ рд╡реЗ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред (рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдЙрдирдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рдерд╛ред рдпрд╣ рдереЛрдбрд╝реЗ рдЕрд╕реНрдкрд╖реНрдЯ рдерд╛, рд╣реЗред)
@daboross Like kennytm рдиреЗ рдХрд╣рд╛, 5..
рдПрдХ рдкреИрдЯрд░реНрди рдирд╣реАрдВ рд╣реИ рдФрд░ рдЕрдм рднреА рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдФрд░ рдЕрдЧрд░ рд╣рдо рдПрдХ рдСрдкрд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ ..=
рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред рдХреЛрдИ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдирд╣реАрдВ рд╣реИред рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЕрдм, ..=
рдХреЛ рдПрдХ рдСрдкрд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░реНрд╕ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдмрд╛рд░ рд╣рдо рдЗрд╕реЗ рдПрдХ рдСрдкрд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░реНрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдХреЛрдИ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдирд╣реАрдВ рд╣реИред
5..
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдорд╛рдиреНрдп рдкреИрдЯрд░реНрди рдирд╣реАрдВ рд╣реИ, рди рд╣реА рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЖрдзреЗ-рдмрдВрдж рдЕрдВрддрд░рд╛рд▓ рдкреИрдЯрд░реНрди рд╣реИрдВред рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЖрдзреЗ-рдмрдВрдж рдЕрдВрддрд░рд╛рд▓ рдкреИрдЯрд░реНрди рдХреА рдХрдореА рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕реЗ рдЕрдХреНрд╕рд░ рд░реЗрдВрдЬ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрд╕рдВрдЧрддрд┐ рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдВрдд рдореЗрдВ рдкреИрдЯрд░реНрди рдХреЗ рд▓рд┐рдП рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рдо рдмрд╛рдж рдореЗрдВ рдкреИрдЯрд░реНрди рдореЗрдВ рдЕрдВрддрд░рд╛рд▓ рдХреЗ рдПрдХ рддрд░рдл рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рднреА рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕рдВрдкреВрд░реНрдг рдкреВрд░реНрдгрд╛рдВрдХ рдорд┐рд▓рд╛рдиред
рдЗрд╕рд▓рд┐рдП рдЬрдм рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╛рдХрд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ @ clarcharr рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рд╕рдВрднрд╛рд╡рд┐рдд рднрд╡рд┐рд╖реНрдп рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рд╣реИ рдЬреЛ рдкреИрдЯрд░реНрди рдХреЗ рд▓рд┐рдП ..=
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕ рдмрд╛рдд рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдореИрдВ рдпрд╣рд╛рдВ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░рддреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛ред ^
рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдлреА рдареАрдХ рд▓рдЧрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЖрдИрдЖрдИрдЖрд░рд╕реА рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
(рдпрд╣ рдПрдХ рдФрд░ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ, рдФрд░ рдмрд╛рдж рдореЗрдВ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ред)
@nagisa if let
рд╕рдВрдмрдВрдз рдореЗрдВ рдХреЛрдИ рд╡рд┐рд░реЛрдз рдирд╣реАрдВ рд╣реИ рдпрджрд┐ рд░реЗрдВрдЬрдлреНрд░реЙрдо рдкреИрдЯрд░реНрди рд╕рдорд░реНрдерд┐рдд рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЯреЛрдХрди ..=
рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЛрдИ рднреА ..
рдФрд░ =
рдмреАрдЪ рдПрдХ рд╕реНрдерд╛рди рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ x <- y
(рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рдЗрди) рдмрдирд╛рдо x < -y
(+ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕реЗ рдХрдо)ред
(рдЪреВрдВрдХрд┐ ^
рдЕрдирдиреНрдп -рдпрд╛ рдСрдкрд░реЗрдЯрд░ рд╣реИ, ^
рдореБрдЭреЗ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП ..^
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╡рд┐рдбрдВрдмрдирд╛рдкреВрд░реНрдг рд▓рдЧрддрд╛ рд╣реИ)
рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦреА рдЧрдИ рд╣рдЬрд╝рд╛рд░реЛрдВ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдореЗрдВ, рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрдВрдж рд╣реИрдВ, рд╢рд╛рдпрдж рдПрдХ рдпрд╛ рджреЛ рдЖрдзреЗ-рдЕрдзреВрд░реЗ рд░рд╛рд╕реНрддреЗ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдЦреБрд▓реЗ рд╣реИрдВ, рдореБрдЭреЗ рдЕрднреА рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣реА рд╣реИред 1..(n+1)
рд▓рд┐рдЦрдирд╛ рдЗрддрдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реИред
рдпрд╣ рдЕрдВрдд = рдЯреА :: max_value() рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
29 рдордИ, 2017 рдХреЛ 16:33 рдкрд░, "рдбрд┐рдЧрд░реА рд╣рд╛рд░реНрдбреА" рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:
рдореИрдВрдиреЗ рдЬрд┐рди рд╣рдЬрд╛рд░реЛрдВ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдореЗрдВ рд▓рд┐рдЦрд╛ рд╣реИ, рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрдВрдж рд╣реИрдВ,
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдпрд╛ рджреЛ рдЖрдзреЗ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдЦреБрд▓реЗ рд╣реЛрдВ, рдореИрдВ рдЕрднреА рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рд╣реВрдВ
рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рджреЗрдЦреЗрдВред 1..(n+1) рд▓рд┐рдЦрдирд╛ рдЗрддрдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реИред-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-304662258 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AApc0ipynL_qrZqUBldOJOX046RNY2H_ks5r-skwgaJpZM4F4LbW
.
рдореИрдВ рдЖрдзрд╛ рдмрдВрдж рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдкрд░ ..= рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рд╡рд┐рдзрд┐ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред
29 рдордИ 2017 рдХреЛ 16:35 рдХреЛ, "рд╕рд╛рдЗрдореЛрдирд╕ рдХрдЬрд╝рд▓реМрд╕реНрдХрд╕" [email protected] рдиреЗ рд▓рд┐рдЦрд╛:
рдпрд╣ рдЕрдВрдд = рдЯреА :: max_value() рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
29 рдордИ, 2017 рдХреЛ 16:33 рдкрд░, "рдбрд┐рдЧрд░реА рд╣рд╛рд░реНрдбреА" рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:
рдореИрдВрдиреЗ рдЬрд┐рди рд╣рдЬрд╝рд╛рд░реЛрдВ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдореЗрдВ рд▓рд┐рдЦрд╛ рд╣реИ, рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣реИрдВ
рдмрдВрдж, рд╢рд╛рдпрдж рдПрдХ рдпрд╛ рджреЛ рдЖрдзреЗ-рдЕрдзреВрд░реЗ рд░рд╛рд╕реНрддреЗ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдЦреЛрд▓реЗрдВ, рдореИрдВ рдЕрднреА рднреА рдирд╣реАрдВ рдХрд░рддрд╛
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рд╕реА рднреА рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рджреЗрдЦреЗрдВред 1..(n+1) рдЗрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИ
рд▓рд┐рдЦреЛред-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-304662258 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AApc0ipynL_qrZqUBldOJOX046RNY2H_ks5r-skwgaJpZM4F4LbW
.
рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдо рдЙрдирдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рдХреНрд╖рдгреЛрдВ рдФрд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░ рджреЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрд╕рд╣рдорддрд┐ рдирд╣реАрдВ рд╣реИред рдХреГрдкрдпрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░ рдмрд╛рдЗрдХрд╢реЗрдбрд┐рдВрдЧ рдХреЛ рдореВрд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╕реНрдерд┐рд░реАрдХрд░рдг рдХреЛ рд░реЛрдХрдиреЗ рди рджреЗрдВред
рдпрд╣ рдЕрдВрдд = рдЯреА :: max_value() рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ 2^64 рдорд╛рдиреЛрдВ рдпрд╛ 2^8 рдорд╛рдиреЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рдорд╛рдиреЛрдВ рдЬреИрд╕реЗ u32
рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд▓реВрдк рдХреЗ рдЕрдВрджрд░ рдПрдХ рдЬреЛрдбрд╝рдирд╛ рдЕрдХреНрд╕рд░ рдЖрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рд╕реА рдЕрд╕реНрдкрд╖реНрдЯ рдХрд╛рд░рдг рд╕реЗ 2^B-1
рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд▓реВрдк рдХреЗ рдЕрдВрдд рдореЗрдВ рд╣рдореЗрд╢рд╛ if i == END { break; }
рдЪрд┐рдкрдХрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдорд╛рдирдХ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ 2^32 рдпрд╛ 2^64 рдорд╛рдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдЪреНрдЪрддрдо рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдпреЛрдЧреНрдп рдореВрд▓реНрдп рдмрд╣реБрдд рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдпрджрд┐ рдЖрдк u8
рд╕рд╛рде рдХреБрдЫ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдпрд╣ рди рднреВрд▓реЗрдВ рдХрд┐ рд╕реАрдкреАрдпреВ рдХреЗ рд▓рд┐рдП рдХрд╛рдЙрдВрдЯрд░ рдХреЗ рд▓рд┐рдП u32
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢рд╛рдпрдж рдЖрд╕рд╛рди рд╣реИред
рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдореБрдЭреЗ рдХреНрд▓реЛрдЬреНрдб рд░реЗрдВрдЬ рдЬрдирд░реЗрдЯрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рджрд┐рдЦрддреА рд╣реИ, рддреЛ рднреА рдореИрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП рдЯреАрдо рдХреЗ рддрд░реНрдХреЛрдВ рдХрд╛ рдЦрдВрдбрди рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдУрд╣ рдЕрдЪреНрдЫрд╛ :/
рдЗрди рдЪрд╛рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рд╕рдорд╛рд╡реЗрд╢ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдХреИрд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП?
1...10
1>..10
1..<10
1>.<10
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдХреЛ рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╡реЗ рдЖрдЧреЗ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рдмрд┐рдирд╛ рдХреНрдпрд╛ рдХрд╣рддреЗ рд╣реИрдВ, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдЕрд╕рдорд╛рдирддрд╛ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рдХрд┐рдВрдбрд░рдЧрд╛рд░реНрдЯрди рд╕реЗ рд╣рд░ рдХрд┐рд╕реА рдХреЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЕрдВрдХрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ... рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпреЗ рдЕрдиреНрдп рддрд░реАрдХреЛрдВ рд╕реЗ рджрд░реНрдж рд╣реЛрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рд╣рдо рдЕрд╕рдорд╛рдирддрд╛рдУрдВ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ:
1...10
1<..10
1..>10
1<.>10
... рдмрд╕ рдЗрд╕рд▓рд┐рдП рдХрд┐ рдЖрдЦрд┐рд░реА рд╡рд╛рд▓рд╛ рдирд╛рд░рд╛рдЬ рдХрд╛рд░реНрдЯрдореИрди рдХреА рддрд░рд╣ рди рджрд┐рдЦреЗред
@vegai рдФрд░ рдореМрдЬреВрджрд╛ a..b
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? рдирд╣реАрдВ, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдирдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рд╕реЗ рдХреБрдЫ рднреА рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рд╣рдореНрдо, рдЗрд╕рд▓рд┐рдП рджреЛ "рд╕рдВрднрд╛рд╡рд┐рдд рдЕрд╕реНрдкрд╖реНрдЯрддрд╛рдПрдВ" рдЙрдард╛рдИ рдЧрдИ рд╣реИрдВ:
if let 5..= x
-- рдЬреИрд╕рд╛ рдХрд┐ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдм рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рддрд░рд╣ рд╕реЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рджреВрд╕рд░реА рдУрд░, рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдЕрдХреНрд╕рд░ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ, рдФрд░ рдЯреЛрдХрдирдирд╛рдЗрдЬрд╝рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН, рдпрджрд┐ рд╣рдо рдЕрдкрдиреЗ рдкрд╛рд░реНрд╕рд░ рдореЗрдВ ..=
рдХреЛ рдПрдХ рдЯреЛрдХрди рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЕрд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рднрд▓реЗ рд╣реА рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ 5..
рдкреИрдЯрд░реНрди рдЬреЛрдбрд╝ рджреЗрдВ; рдЖрдкрдХреЛ рдмрд╕ ..
рдФрд░ =
(рдЬреИрд╕реЗ, let 5.. = x
) рдХреЗ рдмреАрдЪ рдПрдХ рд╕реНрдкреЗрд╕ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛редmacro_rules!
back-compat рдХреЛ рд╕рдВрднрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ; рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ...
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдмрдЪрдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИредрд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╕рдорд╕реНрдпрд╛ # 42401 рдХреЛ рднреА рдЗрдореЛ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рд╕реНрдерд┐рд░реАрдХрд░рдг рдХреЗ рдмрд╛рдж рдлрд┐рдХреНрд╕ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдЧрд╛ред
@ est31 рдЕрдЪреНрдЫрд╛ рдмрд┐рдВрджреБ, рдореИрдВрдиреЗ рдЗрд╕реЗ рдореБрджреНрджреЗ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдЪреЗрдХрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдЬреЛрдбрд╝рд╛
рдЪреЗрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ str рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдЕрд╕реНрдерд┐рд░ рд╣реИ рдФрд░ рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЕрд╡рд░реБрджреНрдз рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдУрд╣, @nagisa рд╕рд╣реА рд╣реИ, рдЗрд╕рдХрд╛ рд░реЗрдВрдЬ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рд╕рд┐рд░ рд╕реЗ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВ? рдореЗрд░реА рдЧрд▓рддреАред рдмрдЧ рдмрд▓реНрдХрд┐ get
рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП str_checked_slicing
рд╕реБрд╡рд┐рдзрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд░рдХреНрд╖рд┐рдд рд╣реИ:
impl SliceIndex<str> for ops::RangeToInclusive<usize> {
type Output = str;
#[inline]
fn get(self, slice: &str) -> Option<&Self::Output> {
if slice.is_char_boundary(self.end + 1) {
Some(unsafe { self.get_unchecked(slice) })
} else {
None
}
}
[...]
рдирд┐рдХрд╛рд▓рд╛ рдЧрдпрд╛
рдПрдХ рдФрд░ рдЪреЗрдХрдмреЙрдХреНрд╕ рдЕрдкрдбреЗрдЯ: рдкреАрдЖрд░ https://github.com/rust-lang/rust/pull/42134 рдиреЗ https://github.com/rust-lang/rfcs/pull/1980 рдЯреНрд╡реАрдХ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛
рдЯрдХреНрдХрд░: рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╣рдо 1.20 рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо structs рдХреЛ рд╕реНрдерд┐рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рд╣рдо рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕рд┐рджреНрдз рдЧреЛ-рдЯреВ рдСрдкрд░реЗрдЯрд░ рдХреЛ C++ рд╕реЗ рдХреИрд╕реЗ рдЙрдзрд╛рд░ рд▓реЗрддреЗ рд╣реИрдВ? рдореИрдВ
@nikomatsakis рдФрд░ @
cc @rust-lang/libs (рдХреЗрд╡рд▓ рдПрдХ рдЯреАрдо рдХреЗ рд▓реЛрдЧ рд╣реА рдЕрдкрдиреА рдпрд╛ рдЕрдиреНрдп рдЯреАрдореЛрдВ рдХреЛ рдЯреИрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)
рдзрдиреНрдпрд╡рд╛рдж, @eddyb!
@clarcharr https://github.com/rust-lang/rust/pull/42275#discussion_r119211211 рдкрд░ рдЖрдзрд╛рд░рд┐рдд, рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреАред
рдХреНрдпрд╛ рдореБрдЭреЗ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЗ рд▓рд┐рдП рдЯреНрд░реЗрди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рджреЗрд░ рд╣реЛ рдЪреБрдХреА рд╣реИ?
рдХрд░рдВрдЯ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХреЛрдИ рд╕реНрд▓рд╛рдЗрд╕ рдХреЛ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред
for i in a..b {} // [a..b)
for i in a..+b {} //[a..b]
for i in a-..b {} //(a..b)
for i in a-..+b {} // (a..b]
рдпрд╣ рд╕рд┐рдВрдЯреИрдХреНрд╕ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА Add
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдЕрд╕рдВрднрд╡ рдмрдирд╛ рджреЗрдЧрд╛ред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ Add
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреНрдпрд╛ рдХрд░реЗрдЧрд╛ред
рдЕрдиреБрдЧрд╛рдореА рдкреНрд▓рд╕ рдХреЗ рд▓рд┐рдП рд╕рд╣рдордд рд╣реИрдВред рдЙрдкрд╕рд░реНрдЧ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ред
рдХреНрдпреЛрдВрдХрд┐ a..
, ..b
рдФрд░ ..
рдЬрдВрдЧ рдореЗрдВ рдорд╛рдиреНрдп рдирд┐рд░реНрдорд╛рдг рд╣реИрдВ, рдпрд╣ рдЕрднреА рднреА рдЧрдгрд┐рддреАрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИ: /
a...
/ a..=
/ a..+
рд╕рд╣реА рд╣рд╛рд▓рд╛рдВрдХрд┐ рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реЛрдЧрд╛? рдЪреВрдВрдХрд┐ рдПрдХ рдЕрд╕реАрдорд┐рдд рд╕реАрдорд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЕрдВрдд рдмрд┐рдВрджреБ рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред
рдореИрдВ Add
рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЪрд┐рдВрддрд┐рдд рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдРрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрдо рд╣реЛрдЧрд╛, рдФрд░ рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк (x..+y) + z
?
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ, рдмрд╕ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред рдпрд╣ a..+b
рдЬреЛ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реЛрдЧрд╛, рд╣реИ рдирд╛? рдЪреВрдВрдХрд┐ рдЕрднреА рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ a.. + b
ред
@daboross рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдпрд╛ рдмреБрд░рд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (рдпрд╛ рдЗрд╕ рдкрд░ рдХреБрдЫ рдмрджрд▓рд╛рд╡) рдХреБрдЫ рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЪрд╛рд╣рддреЗ рд╣реИрдВ:
impl<T> Add<T> for RangeFrom<T> where T: Add<T> {
type Output = RangeFrom<T>;
fn add(self, rhs: T) -> RangeFrom<T> {
(self.start + rhs)..
}
}
рдпрд╣ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рд╣рд┐рддрд╛рд░реНрде рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рдорд╛рдорд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдореЗрдВ рдореБрдЭреЗ рдмрд╣реБрдд рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореМрдЬреВрджрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд┐рд░реНрдгрдпреЛрдВ рдХреЗ рдХрд╛рд░рдг рдЗрд╕ рдпрд╛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдирд╛ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдЪрд╛рд░ рд╣реЛрдЧрд╛ред
рдореЗрд░реА рджреВрд╕рд░реА рдЪрд┐рдВрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ ...
рдХреЛ рдЦрд╛рд░рд┐рдЬ рдХрд░рдиреЗ рдХрд╛ рдкреВрд░рд╛ рдмрд┐рдВрджреБ рдЯрд╛рдЗрдкреЛ рдХреЛ рдкрд╣рдЪрд╛рдирдиреЗ рдореЗрдВ рдХрдард┐рдирд╛рдИ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдХрдо рдХрд░рдирд╛ рд╣реИ рдФрд░ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЛ рдЕрдореВрд░реНрдд a..+b
рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрд░реНрдереЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИред рдЙрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рд╡рд╛рдкрд╕ рдЬрд╛ рд░рд╣реЗ рд╣реЛрдВрдЧреЗред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдЕрднреА рддрдХ a-..b
рдФрд░ a-..+b
рдХреЗ рд▓рд┐рдП "рдкреВрд░реНрдгрддрд╛ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛" рд╕реЗ рдкрд░реЗ рдПрдХ рдареЛрд╕ рдФрдЪрд┐рддреНрдп рджреЗрдЦрдирд╛ рдмрд╛рдХреА рд╣реИ, рдЬрдмрдХрд┐ рд╡рд░реНрддрдорд╛рди ..
рдФрд░ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд ..=
рджреЛрдиреЛрдВ рдХреЛ рдЬреНрдЮрд╛рдд, рдорд╛рдиреНрдп рддрд░реНрдХ рд╣реИрдВред
рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП +
рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдЕрд╕реНрдкрд╖реНрдЯ рдмрдирд╛рддрд╛ рд╣реИред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛ рджреЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк <Range as Add<{integral}>>::Output = InclusiveRange
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрдВрдЧреЗред
рдореИрдВ ..!
рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддрд╛ рд╣реВрдВред рдЗрд╕рдореЗрдВ ..
рд╕рд╛рде рдЙрддреНрдкрд╛рджрдХ рддреБрдХрдмрдВрджреА рд╣реИ рдФрд░ рдЕрдВрддрд┐рдо рдмрд┐рдВрджреБ рдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬреЛрд░ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдпрд╣ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдмреЗрд╢рдХ рдпрд╣ рдСрдкрд░реЗрдЯрд░ !
рдЯрдХрд░рд╛рдПрдЧрд╛ рд▓реЗрдХрд┐рди, рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдХрд╣реВрдВ рддреЛ, рдореИрдВ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдХреА рдХрд▓реНрдкрдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдерд╛ рдЬрд╣рд╛рдВ рдХрд┐рд╕реА рдХреЛ !
рдХреЛ рдмрд╛рдзреНрдп рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
..!
рдореЗрдВ рд╕рд╣рдЬрддрд╛ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИред рдПрдХ рдирд╡рд╛рдЧрдВрддреБрдХ рдЬреЛ рдЕрднреА рддрдХ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реИ, рдЖрд╕рд╛рдиреА рд╕реЗ ..!
рдХрд╛ рдЕрд░реНрде "рдЕрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реЗрдХрд┐рди рдирд╣реАрдВ ..." рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдЧрд▓рдд рд╕рдордЭ рд╕рдХрддрд╛ рд╣реИред
рдпрд╣ "рд░реЗрдВрдЬ рдЕрдк рдЯреВ рдмрд┐рдЯрд╡рд╛рдЗрдЬ рдХреЙрдореНрдкреНрд▓реАрдореЗрдВрдЯ..." рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕реЗ рднреА рдЯрдХрд░рд╛рддрд╛ рд╣реИ (рдЬреЛ рдЗрд╕реЗ +
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдЬреИрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдбрд╛рд▓ рджреЗрдЧрд╛)
рд╕рд╣рдорддред рд▓реЗрдХрд┐рди рджреВрд╕рд░реА рдУрд░ ..=
рдХреЛ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдЧрд▓рдд рд╕рдордЭрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдпрд╣ рдПрдХ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рд╣реЛрддрд╛ рддреЛ рдЖрдк рдХреНрдпрд╛ рдЕрд╕рд╛рдЗрди рдХрд░рддреЗ?
@ snuk182 рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЗ рдЖрдзрд╛рд░ рдкрд░:
a...b // [a; b] shorthand for RangeIncusive
a..-b // [a; b) new Range shorthand
a..b // [a; b) old Range shorthand exists for compatibility
рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдореЗрдВ рдЕрдиреНрдп рд╕рдВрдпреЛрдЬрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
a-..b // (a; b]
a-.-b // (a; b)
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдЦрд┐рд░реА рд╡рд┐рдХрд▓реНрдк рдереЛрдбрд╝рд╛ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИред ^_^
рдХреГрдкрдпрд╛ рдХрд┐рд╕реА рднреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджреЗрдирд╛ рдмрдВрдж рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдпреВрдирд░реА рдСрдкрд░реЗрдЯрд░ рд╣реЛ, рдЬреИрд╕реЗ a..-b
, a..!b
, a..*b
, a..&b
рдпрд╛ a?..b
, рдпреЗ рдХрднреА рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
..! рдЕрдВрддрд░реНрдЬреНрдЮрд╛рди рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рд╣реИред рдПрдХ рдирд╡рд╛рдЧрдВрддреБрдХ рдЬреЛ рдЕрднреА рддрдХ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реИ, рдЖрд╕рд╛рдиреА рд╕реЗ рдЧрд▓рдд рд╕рдордЭ рд╕рдХрддрд╛ рд╣реИ ..! рдХрд╛ рдЕрд░реНрде рд╣реИ "рдЕрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реЗрдХрд┐рди рдирд╣реАрдВ ..."
..=
рдореЗрдВ рд╕рд╣рдЬрддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рдЬреЛ рдХреЛрдИ рднреА =
рджреЗрдЦрддрд╛ рд╣реИ, рд╡рд╣ рдкреНрд░рднрд╛рд╡ рдпрд╛ рддреБрд▓рдирд╛ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред рдореИрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рд░ рдмрд╛рд░ рдЬрдм рдореИрдВ ..=
рджреЗрдЦрддрд╛ рд╣реВрдВ, рддреЛ рдореИрдВ рдЦреБрдж рдХреЛ рдпрд╣ рд╕реЛрдЪрдиреЗ рд╕реЗ рдирд╣реАрдВ рд░реЛрдХ рд╕рдХрддрд╛ рдХрд┐ рдпрд╣ рд╕рдорд╛рди рдЪрд┐рд╣реНрди рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред
рдПрдХрдорд╛рддреНрд░ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕рд╣рдЬ рдФрд░ рд╕реБрд╕рдВрдЧрдд рджреЛрдиреЛрдВ рд╣реИ ...
ред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрд╣рд╛рдЬ рд░рд╡рд╛рдирд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИред
рдирд╡рд╛рдЧрдВрддреБрдХреЛрдВ рдХреЛ рд╡реИрд╕реЗ рднреА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рдмрд╛рд░-рдмрд╛рд░ рджреЗрдЦрдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ ...
рд╡реЗ рдбреЙрдХреНрд╕ рдХреЛ рджреЗрдЦреЗрдВрдЧреЗред рдпрд╣ рдЯрд╛рд▓рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди ..=
рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛ рдирд┐рдореЛрдирд┐рдХ ( up to
рдФрд░ equal to
) рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдСрдкрд░реЗрдЯрд░ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рдмрд╛рд░-рдмрд╛рд░ рджреЗрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред
рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ ...
рдСрдкрд░реЗрдЯрд░ рдЬреИрд╕рд╛ рд╣реИ рд╡реИрд╕рд╛ рд╣реА рд░рд╣реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣рдо ..
рдСрдкрд░реЗрдЯрд░ рдХреЛ ..тО╡
, рдпрд╛рдиреА рджреЛ рдмрд┐рдВрджреБ рдФрд░ рдПрдХ рд╕реНрдерд╛рди (рдореБрдЭреЗ рд╡рд╣ рд░рдЦрдирд╛ рдерд╛ 'тО╡ ' рд╡рд╣рд╛рдБ рдЪрд░рд┐рддреНрд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рд╡реЗрдмрдкреЗрдЬ рдкрд░ рдПрдХ рдирд┐рдпрдорд┐рдд рд╕реНрдерд╛рди рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛)ред рдпрд╣ рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рд╕реНрдерд╛рди рд╣реЛрдЧрд╛ рдЬрд╣рд╛рдВ рд╕рдлреЗрдж рд╕реНрдерд╛рди рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдмрджрд▓рд╛рд╡ рднреА рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ a..b
рдЬреИрд╕реЗ рд╕рднреА рдХреЛрдб рд╢рд┐рдХрд╛рдпрдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ ..
рдЬреИрд╕рд╛ рдХреЛрдИ рдСрдкрд░реЗрдЯрд░ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдбреЙрдЯреНрд╕ рдХреЗ рдмрд╛рдж рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╕реНрдерд╛рди рдЬреЛрдбрд╝рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдВрддрд░рд┐рдХреНрд╖ рдЙрдиреНрд╣реЗрдВ рджреГрд╖реНрдЯрд┐ рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рдмрдирд╛рддрд╛ рд╣реИ:
a.. b
a...b
@tommit рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реЛрдЧрд╛ред
рд╕рдлреЗрдж рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдСрдкрд░реЗрдЯрд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд╛рдлреА рд▓рдЪреАрд▓рд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: a..b
рдФрд░ a .. b
рд╕рдорд╛рди рд╣реИрдВред рдпрд╣ рд╕рдВрднрд╡рддрдГ рдЗрд╕реЗ рдЕрдиреНрдп рдСрдкрд░реЗрдЯрд░реЛрдВ, рдЬреИрд╕реЗ a+b
рдФрд░ a + b
рдЕрдиреБрд░реВрдк рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдпреЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡рд╣реА рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдЕрдЧрд░ рдЖрдк рдореБрдЭрд╕реЗ рдкреВрдЫреЗрдВ рддреЛ рдпрд╣ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ!
рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, ..=
рдиреЛрдЯреЗрд╢рди <=
рдФрд░ >=
рдиреЛрдЯреЗрд╢рди (рдЬрд┐рдиреНрд╣реЗрдВ _inclusive_ рднреА рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ) рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИред
рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рд╣рдореЗрд╢рд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рд╕рдВрднрд╛рд╡рдирд╛рдПрдВ рдХреНрдпрд╛ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╢рд╛рдпрдж рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред
рд╕рд╣рдорддред <=
рдФрд░ >=
, ..=
рдкреНрд░рд╢рдВрд╕рдиреАрдп рд▓рдЧрддрд╛ рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рддрд╛рд░реНрдХрд┐рдХ рднреАред
рд╡реИрд╕реЗ, рдпрджрд┐ рдЖрдк ...
рдкреНрд░рд╢рдВрд╕рдХ рд╣реИрдВ рдпрд╛ рд╕рд┐рд░реНрдл ..=
рдХреЛ рдирд╛рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдордЭреМрддрд╛ рд╕рдорд╛рдзрд╛рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд▓рд┐рдЧрдЪрд░ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдлрд╝реЙрдиреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬреИрд╕реЗ FiraCode ..=
рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╕рдВрдпреБрдХреНрддрд╛рдХреНрд╖рд░ рдХреЗ рд╕рд╛рде ...
, рдпрд╛ рдХреБрдЫ рдЕрдЬреАрдм рднреА, рдЬреИрд╕реЗ , рдпрд╛ ред
рд░реЗрдВрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рднреА рдореМрдЬреВрджрд╛ рд░рд╕реНрдЯ рдХреЛрдб рдореЗрдВ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди... рдЖрдЧрдорди рдкрд░ рдореГрдд,
рдХреНрд╖рдорд╛ рдорд╛рдВрдЧрдирд╛ред рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЧрдВрднреАрд░ рдкрд┐рдЫрдбрд╝рд╛ рд╕рдВрдЧрдд рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИ
рдЙрдард╛рдП рдЧрдП рдореБрджреНрджреЛрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░реЗрдВ, рдФрд░ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИ
рдкрд╣рд▓реЗ рд╕реЗ рд╣реА, рдЖрдЗрдП рдЗрд╕реЗ рд╕реБрдирддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдЗрдП рдЗрд╕реЗ рдХрдо рд╕реЗ рдХрдо рдорд╛рдирдХ рдХреЗ рд░реВрдк рдореЗрдВ рд░рдЦреЗрдВ, рд╣рд╛рдБ?
рдпрд╣ рдзрд╛рдЧрд╛ рдмрд╛рдЗрдХ рд╢реЗрдб рд╕реЗ рднрд░рд╛ рд╣реИ рдФрд░ рдЯреАрдо рдиреЗ рдкрд╣рд▓реЗ рд╣реА рдирд┐рд░реНрдгрдп рд▓реЗ рд▓рд┐рдпрд╛ рд╣реИ
рдпрд╣ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдЪреНрдЪ рдмрд╛рд░ рд╣реИред
рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрднреА рднреА рдмрд╣реБрдд рд╕рд╛рд░реЗ рдмрд╛рдЗрдХрд╢реЗрдб рдЪрд▓ рд░рд╣реЗ рд╣реИрдВред рдореИрдВрдиреЗ рдХрдо рд╕реЗ рдХрдо рд╕рдВрд░рдЪрдирд╛рдУрдВ рдФрд░ рд▓рдХреНрд╖рдгреЛрдВ рдФрд░ рдирд┐рд╣рд┐рддрд╛рд░реНрдереЛрдВ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП # 43086 рджрд╛рдпрд░ рдХрд┐рдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдореБрдЦреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ (рдорд╛рдВрдЧ рд▓рдЧрддреА рд╣реИ, рдКрдкрд░ @ retep998 рджреНрд╡рд╛рд░рд╛ рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВ)ред
рдХрдорд░реЗ рдореЗрдВ рд╣рд╛рдереА рдпрд╣ рд╣реИ рдХрд┐ ..
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреЗ рд╕рдордорд┐рдд рд░реВрдк рд▓реЗрдХрд┐рди рдЕрд╕рдордорд┐рдд рдЕрд░реНрде рдХреЗ рдХрд╛рд░рдг рдпрд╣рд╛рдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред "рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдХрд╛рдо" рд╢рд╛рдпрдж рдЗрд╕реЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░ рджреЗрдЧрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЗрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрддрдирд╛ рдХреЛрдб рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реБрд╕рдВрдЧрдд ...
(рд╕рдордорд┐рдд рд░реВрдк, рд╕рдордорд┐рдд рдЕрд░реНрде) рдХреЛ рд╣рдЯрд╛рдирд╛ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИ, рд▓реЗрдХрд┐рди ..=
рдореЗрдВ рдПрдХ рдФрд░ рдЕрд╕рдВрдЧрдд рдСрдкрд░реЗрдЯрд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреАрдордд рдкрд░ред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд┐рдЫрд▓реЗ рдЦрд░рд╛рдм рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд░рд╛рдм рдбрд┐рдЬрд╝рд╛рдЗрди рдЬреЛрдбрд╝рдирд╛ред
рдЗрд╕ рджреЛрд╣рд░реА рдЕрд╕рдВрдЧрддрд┐ рдХреЗ рдХрд╛рд░рдг рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рд╕рдорд╕реНрдпрд╛ рд╣реИ: рдЕрдВрддрд┐рдо рджреЛ рд╢реЗрд╖ рд╕рдорд╛рд╡реЗрд╢рди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ (рджреЛрдиреЛрдВ рдкрдХреНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдирдиреНрдп рдФрд░ рдХреЗрд╡рд▓ рдмрд╛рдИрдВ рдУрд░ рдЕрдирдиреНрдп)ред рдЪреВрдВрдХрд┐ ..
рдФрд░ ..=
рджреЛрдиреЛрдВ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрд╛рдИрдВ рдУрд░ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд =
рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЗрд╕реЗ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд╕рдВрднрд╡рддрдГ <
ред рддреЛ рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рд╣реЛрдЧрд╛:
<..=
рд▓рд┐рдП (a; b]
<..
рд▓рд┐рдП (a; b)
рдЧреБрдб рд▓рдХ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдПрдХ рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрдирдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИред рддреЛ рд╡реЗ рд╢рд╛рдпрдж (рд╕рд╣реА рдврдВрдЧ рд╕реЗ) рдХрднреА рднреА рдЬреЛрдбрд╝реЗ рдЬрд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред
рдпрджрд┐ ..
рдЗрддрдирд╛ рдЧрд╣рд░рд╛ рдирд╣реАрдВ рдерд╛ рдпрд╛ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рднреА рдирд╣реАрдВ рдерд╛, рддреЛ рдЦрд░реЛрдВрдЪ рд╕реЗ рдЗрд╕ рд╕рдм рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╕рдВрдЧрдд рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд╕рд╛рде рдЖрдирд╛ рдЗрддрдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд▓рдЧрддрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
..
(рдпрд╛ ...
) [a; b]
..<
рд▓рд┐рдП [a; b)
<..
рд▓рд┐рдП (a; b]
<..<
рд▓рд┐рдП (a; b)
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд┐рдЫрд▓реЗ рджреЛ рдкреНрд░рдХрд╛рд░ рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпрд╛ рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдирдХреЗ рд▓рд┐рдП рдкрде рдХреЛ рдЗрддрдиреА рдЬрд▓реНрджреА рдЕрд╡рд░реБрджреНрдз рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, ..=
рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп ..
рдХреЛ рдЪреБрдирдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдЕрдЪреНрдЫрд╛ рдХрд╛рд░рдг рдмрд╣реБрдд рдХрдо рдкреБрд░рд╛рдиреЗ рдХреЛрдб рдХреЛ рддреЛрдбрд╝рдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдПрдХ рдЖрд╡рд╢реНрдпрдХ рдмреБрд░рд╛рдИ рд╣реЛрдЧреА, рдХреБрдЫ рднреА рдирд╣реАрдВ рдордирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
_рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рдФрд░ рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдЬреЛрдбрд╝реА рдЧрдИрдВред_
рдореИрдВ @rkarp рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ ..
рдпрд╣рд╛рдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, ...
рдпрд╛ ..=
ред рдЕрд╕рдордорд┐рдд рдЕрд░реНрде рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмреБрд░рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЕрдиреНрдп (рдЕрдзрд┐рдХ рд▓реЛрдХрдкреНрд░рд┐рдп) рднрд╛рд╖рд╛рдПрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдПрдХ рд╕рдордорд┐рдд рдЕрд░реНрде рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХреЛрдЯрд▓рд┐рди, рд░реВрдмреА рдФрд░ рд╣рд╛рд╕реНрдХреЗрд▓ рджреЛрдиреЛрдВ 5 рдХреЛ 3.5 рдХреА рд╕реАрдорд╛ рдореЗрдВ рдорд╛рдирддреЗ рд╣реИрдВред рдЧрдгрд┐рдд рдХреЗ рдкреЗрдкрд░ рднреА рдЗрд╕рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдирдЬрд░ рдЖ рд░рд╣реЗ рд╣реИрдВред рдпрд╣рд╛рдВ рд╕рдмрд╕реЗ рдмреБрд░реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рдкрд╛рд╕ рд░рд╕реНрдЯ рдореЗрдВ 3.5 рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдиреЗ рдХрд╛ рдХреЛрдИ рдореМрдХрд╛ рдирд╣реАрдВ рд╣реИ: рдЖрдк рдпрд╛ рддреЛ рддрдп рдХрд░реЗрдВрдЧреЗ рдХрд┐ 4 рдФрд░ рдХреЗрд╡рд▓ 4 рд░реЗрдВрдЬ 3.5 (рдбреЙрдЯреНрд╕ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐) рдХрд╛ рд╕рджрд╕реНрдп рд╣реИ рдпрд╛ рджреЛрдиреЛрдВ рдЗрд╕рдореЗрдВ 3 рдФрд░ 5 рднреА рд╣реИрдВ ('рд╕рдм рдХреБрдЫ рдЬреЛ рд╣рдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ' рдФрд░ рдбреЙрдЯреНрд╕ рдХреЗ рдПрдХреНрд╕рдЯреНрд░рдкрд▓реЗрд╢рди рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐)ред
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдХрдард┐рдирд╛рдИ рдкрд░ рдЕрд╕рд╣рдордд рд╣реВрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ @adelarsq рд╕реБрдЭрд╛рд╡ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рджрд░реНрдж рд░рд╣рд┐рдд рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рдиреНрджрд░реНрдн рдХреЗ рд▓рд┐рдП:
[1..4] // 1, 2, 3, 4
[1..4[ // 1, 2, 3
]1..4] // 2, 3, 4
]1..4[ // 2, 3
x..y
(рд╡рд░реНрдЧ рдХреЛрд╖реНрдардХ рдХреЗ рдмрд┐рдирд╛) рдХреА рдХрд┐рд╕реА рднреА рдШрдЯрдирд╛ рдХрд╛ рдЕрдиреБрд╡рд╛рдж [x..y[
рдФрд░ рдПрдХ рд╕рдВрдХрд▓рдХ рдЪреЗрддрд╛рд╡рдиреА рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдХреБрдЫ рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рдХрдВрдкрд╛рдЗрд▓рд░ "рдирдВрдЧреЗ" рд╢реНрд░реЗрдгреА рдиреЛрдЯреЗрд╢рди рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдЗрдВрдХрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╢рд╛рдпрдж рдирдП рдиреЛрдЯреЗрд╢рди рдореЗрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрдирд╡рд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреВрд▓ рднреА рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИред
https://github.com/rust-lang/rust/issues/28237#issuecomment -274216603 рдпрд╣ рдХреЛрдИ рдирдпрд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИ рдФрд░ рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрди рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред
рдореИрдВ рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐, рдЕрдЧрд░ рд╣рдо рджреГрд╖реНрдЯрд┐ рдХреЗ рд▓рд╛рдн рдХреЗ рд╕рд╛рде рднрд╛рд╖рд╛ рдХреЛ рдЦрд░реЛрдВрдЪ рд╕реЗ рдбрд┐рдЬрд╛рдЗрди рдХрд░ рд░рд╣реЗ рдереЗ, рддреЛ рд╣рдо рдЕрдирдиреНрдп рдФрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕реЛрдВ рдкрд░ рдПрдХ рд╕рд╛рде рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ..=
рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рдСрдкрд░реЗрдЯрд░ рдирд╣реАрдВ рд╣реИ; рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореЗрдЬ рдкрд░ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред рд▓реЗрдХрд┐рди рдореМрдЬреВрджрд╛ рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рд░реЗрдВрдЬ рдСрдкрд░реЗрдЯрд░ рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдирд╛ рдЕрддреНрдпрдзрд┐рдХ рджрд░реНрджрдирд╛рдХ рд╣реЛрдЧрд╛, рдФрд░ рдореМрдЬреВрджрд╛ рд░рд╕реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдмрдВрдж рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдХрдИ рдЕрдиреНрдп рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИрдВ рдЬреЛ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ ..@
рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ, рдФрд░ x..@y
рд╡рд┐рдЪрд╛рд░реЛрддреНрддреЗрдЬрдХ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдХреА рдХрдореА рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП, рд╡рд░реНрддрдорд╛рди рдкреНрд░рд╕реНрддрд╛рд╡ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреБрдЫ рдЕрдзрд┐рдХ рд╕рдореНрдореЛрд╣рдХ рдЦреЛрдЬрдиреЗ рдХреА рдЪреБрдиреМрддреА рд╣реИред
рдореИрдВ рд╕рдорд░реВрдкрддрд╛ рдХреЗ рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рджреГрд╢реНрдп рдХреЗ рд░реВрдк рдореЗрдВ 2 рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ @ssokolow рдХреА рдЯрд┐рдкреНрдкрдгреА рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛:
..4
рдореЗрдВ рдЪреАрдЬреЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ < 4
..=4
рдореЗрдВ рдЪреАрдЬреЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ <= 4
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдХреЗрд╡рд▓ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╣ рдЕрдзрд┐рдХ рд╕рд░рд▓ рд╣реИред
рд╢реНрд░реЗрдгреА рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рд╣рдореЗрд╢рд╛ + 1 рдпрд╛ -1 рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдФрд░..рдмреЗрд╣рддрд░ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐..рд╕реЗ рдЖрд╕рд╛рди рд╣реИ...!
@AlexanderChen1989 рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рдереНрд░реЗрдб рдкрд░ рдкрд╣рд▓реЗ рдХрдИ рдкреЛрд╕реНрдЯ рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ ..
рдХрд╛ рдЕрд░реНрде рдмрджрд▓рдиреЗ рд╕реЗ рдореМрдЬреВрджрд╛ рдХреЛрдб рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИред рд╕рдмрд╕реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, +1
рдФрд░ -1
рдкреВрд░реНрдгрд╛рдВрдХ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣/рдЕрдВрдбрд░рдлреНрд▓реЛ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддреЗ рд╣реИрдВред)
рдпрд╣рд╛рдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ nightly
(рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдкреБрд░рд╛рдиреЗ рдЙрдореНрдореАрджрд╡рд╛рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ...
#![feature(inclusive_range_syntax)]
fn main() {
let max = 255u8;
let user_provided = 0u8;
for x in 0...user_provided-1 {
println!("(0 to 0, exclusive via 'inclusive - 1'): {}", x);
}
for x in 0..max+1 {
println!("(0 to 255, inclusive via 'exclusive + 1'): {}", x);
}
}
рднрд╛рд╖рд╛ рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рдЕрдкрдирд╛ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдЖрдЧрдорди рдкрд░ 8 рдореГрдд рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдирд╡рд╛рдЧрдВрддреБрдХ рдХреГрдкрдпрд╛ рдзрд╛рдЧрд╛ рдкрдврд╝реЗрдВред рд╣рдордиреЗ рдЬреЛ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛ рдерд╛, рдЙрд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ рдХрд╛рд░рдг рдереЗред
рдЖрдИрдПрдордПрдЪрдУ рдУрдкреА рдХреЛ рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдХреЛрдИ рдФрд░ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ (рдпрд╛рдиреА (рдП, рдмреА) рдФрд░ (рдП, рдмреА] рд╢реНрд░реЗрдгрд┐рдпреЛрдВ) рдХреЗ рдХрд┐рд╕реА рднреА рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рджреВрд╕рд░реЗ рдзрд╛рдЧреЗ рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрд╣ рдХреЗрд╡рд▓ рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП рдЬреЛ рд╡рд░реНрддрдорд╛рди рдпреЛрдЬрдирд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
@clarcharr рдореИрдВрдиреЗ рдЬреНрдпрд╛рджрд╛рддрд░ рдПрдХрддрд░рдлрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рдУрдкреА рдореЗрдВ рдЬреЛрдбрд╝рд╛, рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ред рдЕрдЧрд░ рд╢реЛрд░ рдЬрд╛рд░реА рд░рд╣рддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдзрд╛рдЧреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЛрдЯ рджреВрдВрдЧрд╛ред
рдирдорд╕реНрддреЗ, рдореИрдВ рдирдпрд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореИрдВ рдкреИрдЯрд░реНрди рдореЗрдВ ...
рдкрд░реНрдпрд╛рдп рдХреЗ рд░реВрдк рдореЗрдВ ..=
рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ ...
рдХреЛ рд╣рдЯрд╛ рджреВрдВрдЧрд╛, рдФрд░ рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдПрдХ рддреНрд░реБрдЯрд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реВрдВрдЧрд╛ рдХрд┐ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ..=
ред рдХреНрдпрд╛ рдпрд╣ рд╕рд╣реА рд▓рдЧрддрд╛ рд╣реИ?
@ рдмреИрдбреЗрд▓ 2 рдХреВрд▓ред рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╢реБрд░реБрдЖрдд рдХрд░ рджреА рд╣реИ -- рдореИрдВ рдЬрд▓реНрдж рд╣реА рдЕрдкрдиреА рд╢рд╛рдЦрд╛ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдКрдВрдЧрд╛ рдФрд░ рдЗрд╕реЗ рдпрд╣рд╛рдВ рд▓рд┐рдВрдХ рдХрд░реВрдВрдЧрд╛ред
@durka рд╕рд┐рд░реНрдл рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП - рдХреНрдпрд╛ рдЖрдк @ Badel2 рдХреЛ рдЕрдкрдиреА рд╢рд╛рдЦрд╛ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдХреНрдпрд╛ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдирд┐рд╣рд┐рдд рдЕрд╡рдзрд┐ рдХреЗ рдХрд╛рдо рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд▓рд╛рд╣ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ? рд╡реЗ Gitter рдЪреИрдирд▓ рдореЗрдВ рд╣реИрдВред
рдореИрдВ рдпрд╣ рднреА рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ ..
ред рддреЛ, рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓ рд╕рдорд╛рдзрд╛рди рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░ рд░рд╣рд╛ рд╣реИ (рдПрдХ рдмрд╛рд░ рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдореМрдЬреВрджрд╛ рдХреЛрдб рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛) ..
..<
рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ ( a..<b
рдмреАрдЪ рдХреЛрдИ рднреНрд░рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛) (a..)<b
, рдХреНрдпреЛрдВрдХрд┐ ..
рдХрд╛ рдЕрд╕реНрддрд┐рддреНрд╡ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛)ред
@ hyst329 рдХреГрдкрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рдмрдиреА рдкреЛрд╕реНрдЯ рдХреЛ рдкрдврд╝реЗрдВред
рдкрд╣рд▓реА рдкреЛрд╕реНрдЯ рдмреЛрд▓реНрдбрдлреЗрд╕ рдЯреЗрдХреНрд╕реНрдЯ рдореЗрдВ рдХрд╣рддреА рд╣реИ, "рдЗрд╕ рдереНрд░реЗрдб рдореЗрдВ рдХреЛрдИ рдФрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред"
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдЬреЛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ рд╡рд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрдИ рдмрд╛рд░ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдореМрдЬреВрджрд╛ рдЪрд░реНрдЪрд╛ рдХреЛ рдирд╣реАрдВ рдкрдврд╝рд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ рдХрдИ рдХрд╛рд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ рдХрд┐ рдпрд╣ рдПрдХ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╡рд┐рдХрд▓реНрдк рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИред
рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдпрд╣ рдмрд╣реБрдд рд░рдЪрдирд╛рддреНрдордХ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рд░ рдмрд╛рд░ рдЬрдм рдореИрдВ ..=
рджреЗрдЦрддрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдпрд╛рдж рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рд╣реИ, рддреЛ рдпрд╣ +=
рдпрд╛ <<=
рд╕рдорд╛рди рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрджрд░реНрдн рд╕реЗ рдмрд╛рд╣рд░ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП " ..=
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдорд░реНрдерди" https://this-week-in-rust.org/blog/2017/10/03/this-week- рдЗрди-рдЬрдВрдЧ-202/)
@SimonSapin рдореИрдВрдиреЗ рдКрдкрд░ рдФрд░ рдЕрдзрд┐рдХ рд░рдЪрдирд╛рддреНрдордХ рдлреИрд╢рди рдореЗрдВ рдЙрд╕реА рдЖрд▓реЛрдЪрдирд╛ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп ..^
рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рд╣реИ: https://github.com/rust-lang/rust/issues/28237#issuecomment -304325663
рдореЗрд░реЗ рд▓рд┐рдП, рдПрдХ рдмрдбрд╝рд╛ рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдХреЗ рд▓рд┐рдП рдмреЛрд▓рддрд╛ рд╣реИ ..=
рддреЗрдЬ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрддрд┐ рддрд░рд╣-рдХреА (рдЬреЛ рд╣реИ ..<
рд╡рд┐рд╢реЗрд╖ рдХреЗ рд▓рд┐рдП рдФрд░ ..
рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП)ред рдЗрд╕рдиреЗ рдореБрдЭреЗ ..=
рдХреА рдкрд╕рдВрдж рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд░ рджрд┐рдпрд╛ред
@SimonSapin рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдРрд╕рд╛ рдХреЛрдИ рд╣реИ рдЬреЛ рдЗрд╕рд╕реЗ рдкреВрд░реА рддрд░рд╣ рдЦреБрд╢ рд╣реИред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕реИрдХрдбрд╝реЛрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдиреЗ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдкреБрд╖реНрдЯрд┐ рдХреА рд╣реИ рдХрд┐ рдХреЛрдИ рдмреЗрд╣рддрд░ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред
рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдореБрдЭреЗ рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд╛рд╕рд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдпрд╣ рдкреИрдЪ рдХреЗрд╡рд▓ рдХрд┐рдирд╛рд░реЗ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрджрд╛ рдкреИрдЯрд░реНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдЧрдбрд╝рдмрдбрд╝рд╛рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред
..
рдкреИрдЯрд░реНрди рдореЗрдВ рдмрд╣реБрдд рдХрдо рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдФрд░ рдЖрдк рд╣рдореЗрд╢рд╛ рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рд╕реМрджрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
...
рдХреЛ RangeInclusive
рдпрд╛ (Bound<T>, Bound<T>)
рдЙрди рднрд╛рд╡реЛрдВ рдореЗрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рдирдХреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрд╣ рдЕрдзрд┐рдХ рд╡рд░реНрдмреЛрдЬрд╝ рд╣реИ рд▓реЗрдХрд┐рди рд╕рдордЭрдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИред
@UtherII
... рдФрд░ рдореИрдВ рдЖрд╢реНрд╡рд╕реНрдд рдерд╛ рдХрд┐ ...
рд╕рдВрдХрд▓рдХ рдХреЗ "рдЖрдк рд╕реНрдерд┐рд░ рдкрд░ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ" рд╕рдВрджреЗрд╢ рджреНрд╡рд╛рд░рд╛ рд╕реВрдХреНрд╖реНрдо рдмрдЧ рд╕реЗ рд╕рд╣реЗрдЬреЗ рдЬрд╛рдиреЗ рдХреЗ рд╕рдордп рддрдХ рдЕрд╕реНрдерд┐рд░ рд╣реИред
рдЬрдм рдЖрдк рддреЗрдЬреА рд╕реЗ рд▓рдЧрд╛рддрд╛рд░ рдХрдИ рдмрд╛рд░ рджрдмрд╛ рд░рд╣реЗ рд╣реЛрдВ рддреЛ рдЧрд▓рддреА рд╕реЗ .
рдПрдХ рдмрд╛рд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ (рдпрд╛, рд╢рд╛рдорд┐рд▓ рдпрд╛рдВрддреНрд░рд┐рдХреА рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдПрдХ рдмрд╛рд░ рдмрд╣реБрдд рдХрдо) рд╣рд┐рдЯ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред
рдореИрдВрдиреЗ "рдмрджрд▓рд╛рд╡ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ..=
рдХреЛ рдкреИрдЯрд░реНрди рдореЗрдВ ...
рдкрд░реНрдпрд╛рдп рдХреЗ рд░реВрдк рдореЗрдВ рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ ..=
рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреЗрдХ рдХрд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА #44709 рдХреЗ рдмрд╛рдж рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣реИ рдХреНрд░рдорд╢рдГ dotdoteq_in_patterns
рдФрд░ inclusive_range_syntax
рд╕реБрд╡рд┐рдзрд╛рдПрдБред рдЬреЛ рдХреБрдЫ рдмрдЪрд╛ рд╣реИ рд╡рд╣ рд╕рд┐рд░реНрдл рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдФрд░ рд╕реНрдерд┐рд░реАрдХрд░рдг рд╣реИред
рдореИрдВ рд╕рдорд╛рд╡реЗрд╢реА рд╕реАрдорд╛ рдХреЛ 1.26 (30 рдорд╛рд░реНрдЪ рдХреЛ рдмреАрдЯрд╛, 11 рдордИ рдХреЛ рд╕реНрдерд┐рд░) рдпрд╛ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рд╕реНрдерд┐рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдПрдХ рд╕реНрдерд┐рд░реАрдХрд░рдг рдкреАрдЖрд░ #47813 рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд 3 рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╕реНрдерд┐рд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:
inclusive_range_syntax
тАФ рдПрдХ рд╡реНрдпрдВрдЬрдХ рдореЗрдВ a..=b
рдФрд░ ..=b
рд╕рд┐рдВрдЯреИрдХреНрд╕:
for i in 1..=10 {
println!("{:?}", &a[..=i]);
}
dotdoteq_in_patterns
тАФ рдПрдХ рдкреИрдЯрд░реНрди рдореЗрдВ a..=b
рд╕рд┐рдВрдЯреИрдХреНрд╕:
match c {
b'0'..=b'9' => c - b'0',
b'a'..=b'z' => c - b'a' + 10,
b'A'..=b'Z' => c - b'A' + 10,
_ => unreachable!(),
}
(рдиреЛрдЯ: a...b
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрднреА рднреА рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЗ рдмрд┐рдирд╛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)
inclusive_range
тАФ std::ops::{RangeInclusive, RangeInclusiveTo}
рдкреНрд░рдХрд╛рд░ рдФрд░ рдЙрдирдХреЗ рдХреНрд╖реЗрддреНрд░:
let r = 1..=10;
assert_eq!(r.start, 1);
assert_eq!(r.end, 10);
@alercah рджреНрд╡рд╛рд░рд╛ рдХрдИ рджрд╕реНрддрд╛рд╡реЗрдЬ
рдЖрдк рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдорд▓реЗ рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВ:
run-pass/range_inclusive.rs
тАФa..=b
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдПрдХ рдкреБрдирд░рд╛рд╡рд░реНрддрдХ рдХреЗ рд░реВрдк рдореЗрдВ, рдПрдХ рд╕реНрд▓рд╛рдЗрд╕ рдЗрдВрдбреЗрдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ, рдФрд░ ..=
рдСрдкрд░реЗрдЯрд░ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛, рдФрд░ рдЯрд╛рдЗрдк-рдЪреЗрдХрд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░редlibcore/tests/iter.rs
тАФa..=b
рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрд░реАрдХреНрд╖рдг; рдЬрд╛рдВрдЪрддрд╛ рд╣реИ рдХрд┐ nth()
, min()
, max()
рдФрд░ last()
рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдФрд░ (5..=5).next()
рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕реАрдорд╛ 1..=0
рд╣реЛ рдЬрд╛рддреА рд╣реИ liballoc/tests/str.rs
, liballoc/tests/btree/map.rs
рдФрд░ liballoc/tests/vec.rs
тАФa..=b
рд╡рд┐рднрд┐рдиреНрди рд╕рдВрдЧреНрд░рд╣ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИредparse-fail/range_inclusive.rs
рдФрд░ ui/impossible_range.rs
тАФa..=
рдФрд░ ..=
рдЬреИрд╕реЗ рдмрдХрд╡рд╛рд╕ рдирд┐рд░реНрдорд╛рдг рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИparse-fail/range_inclusive_dotdotdot.rs
тАФa...b
рдФрд░ ...b
рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВредrun-pass/inc-range-pat.rs
тАФa..=b
рдФрд░ a...b
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ, рджреЛрдиреЛрдВ рд╕реНрд╡реАрдХреГрдд рд╣реИрдВ рдФрд░ рд╕рдордХрдХреНрд╖ рд╣реИрдВредcompile-fail/range_traits-1.rs
рдФрд░ compile-fail/range_traits-6.rs
тАФRangeInclusive
рдФрд░ RangeInclusiveTo
PartialOrd
(рдЕрдиреНрдп рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреА рддрд░рд╣) рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ RangeInclusive
Copy
рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреЙрдкреА рд▓рд╛рдЧреВ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЗрдЯрд░реЗрдЯрд░ рд╣реИрдВ)редlibcore/tests/ops.rs
тАФRangeInclusive
рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЛ рдкреБрдирд░рд╛рд╡реГрддреНрдд рдХрд░рдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИредрдлреЙрд░-рд▓реВрдк рдореЗрдВ a..=b
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ a..(b+1)
рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдкреНрд░рджрд░реНрд╢рди рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ next()
рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдФрд░ рдХрдо рдЕрдиреБрдХреВрд▓рдХ-рдЕрдиреБрдХреВрд▓ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдгред рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ #45222 рдореЗрдВ рдЯреНрд░реИрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдлрд╝реЛрд░-рд▓реВрдк рдХреЗ рдмрдЬрд╛рдп рдЗрдЯрд░реЗрдЯрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЗрд╕реЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ #48012 рджреНрд╡рд╛рд░рд╛ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЕрдЧрд░ рд╣рдо рдЕрднреА рддрдХ рд░рд╕реНрдЯ-рд▓реИрдВрдЧ/рдЖрд░рдПрдлрд╕реАрдПрд╕#1980 рдореЗрдВ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рд╣рдореЗрдВ RangeInclusive
рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЕрд╕реНрдерд┐рд░ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдЕрдЧрд░ рд╣рдо рдЕрднреА рддрдХ рд░рд╕реНрдЯ-рд▓реИрдВрдЧ/рдЖрд░рдПрдлрд╕реАрдПрд╕#1980 рдореЗрдВ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рд░реЗрдВрдЬрдЗрдирдХреНрд▓реВрд╕рд┐рд╡ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЕрд╕реНрдерд┐рд░ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
+1
рдХреНрдпрд╛ рдХреБрдЫ рд╡рд┐рдзрд┐-рдЖрдзрд╛рд░рд┐рдд рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдмрдЬрд╛рдп рд╕реАрдзреЗ рд╢реНрд░реЗрдгреА рдлрд╝реАрд▓реНрдб рдХреЛ рдмреЗрдирдХрд╛рдм рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?
@rfcbot fcp рдорд░реНрдЬ
@kennytm рдХреЗ рд╕рд╛рд░рд╛рдВрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдореЗрд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИ рдХрд┐ рд╣рдо рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ ( ..=
) рдХреЛ рд╕реНрдерд┐рд░ рдХрд░реЗрдВред
(рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдореБрдЭреЗ ..=
рдХреЗ рдирд┐рдЪрд▓реЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рд╣рд▓реНрдХреЗ рдврдВрдЧ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд▓рдЧрддрд╛ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ ..=
рдХреЛ рд╕реАрдзреЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ Iterator
рдлрд┐рд▓рд╣рд╛рд▓, рдореЗрдВ рдЗрд╕реЗ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред)
рдЯреАрдо рдХреЗ рд╕рджрд╕реНрдп @nikomatsakis рдиреЗ рдЗрд╕реЗ рдорд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛ рд╣реИред рдЕрдЧрд▓рд╛ рдЪрд░рдг рдмрд╛рдХреА рдЯреИрдЧ рдХреА рдЧрдИ рдЯреАрдореЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдореАрдХреНрд╖рд╛ рд╣реИ:
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЛрдИ рдЪрд┐рдВрддрд╛ рд╕реВрдЪреАрдмрджреНрдз рдирд╣реАрдВ рд╣реИред
рдПрдХ рдмрд╛рд░ рдЬрдм рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдореАрдХреНрд╖рдХреЛрдВ рдиреЗ рд╕реНрд╡реАрдХреГрддрд┐ рджреЗ рджреА (рдФрд░ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ), рддреЛ рдпрд╣ рдЕрдкрдиреА рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдЕрд╡рдзрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЖрдкрдХреЛ рдХреЛрдИ рдмрдбрд╝рд╛ рдореБрджреНрджрд╛ рдорд┐рд▓рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрд┐рд╕реА рднреА рдмрд┐рдВрджреБ рдкрд░ рдирд╣реАрдВ рдЙрдард╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдмреЛрд▓реЗрдВ!
рдЯреИрдЧ рдХреА рдЧрдИ рдЯреАрдо рдХреЗ рд╕рджрд╕реНрдп рдореБрдЭреЗ рдХреНрдпрд╛ рдЖрджреЗрд╢ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП
рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ ..= рдЗрд╕реЗ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдордп рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рдЗрдЯрд░реЗрдЯрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдпреЗ рд╕реНрдерд┐рд░ рд▓рдХреНрд╖рдг RangeInclusive<T>
рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рдирд╛рдЗрдЯрд▓реА рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ T
s рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдП рдЧрдП рд╣реИрдВ: Iterator
, FusedIterator
, ExactSizeIterator
, Debug
, Clone
, Eq
, PartialEq
, Hash
, TrustedLen
ред
@SimonSapin рдореИрдВ рднреВрд▓ рдЧрдпрд╛, рдХреНрдпрд╛ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░ рджрд┐рдпрд╛ рд╣реИ? (рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдХреНрдпрд╛ рдпрд╣ рджреЗрдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИ?) рдореИрдВ рдорд╛рди рд░рд╣рд╛ рдерд╛ рдХрд┐ рдпрд╣ рдирд╣реАрдВ рдерд╛ред
рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдореИрдВ рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реЛрдЪрддрд╛ рд╣реВрдВ рдХрд┐ 1..2
рдФрд░ 1..=2
рд╕рднреА рд╕рдорд╛рди рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдпрд╣рд╛рдВ рдХреЛрдИ рднреА рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рддрд░реНрдХ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣рдореЗрдВ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдХреЗрд╡рд▓ рд╢рдорди рдФрд░ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЕрдиреБрдХреВрд▓рдиред
рд╡рд┐рд╢реЗрд╖-рдорд╛рдорд▓рд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИ рдЬрд╣рд╛рдВ end == MAX
? рдЗрд╕рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдЕрдирдиреНрдп рдХреЛрдб рдХреЗ рд╕рдорд╛рди рдХреЛрдб рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде рдХрд┐ рдЬреЛ рд╕реАрдзреЗ рд╕реАрдорд╛ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ рдЙрдирдХреЗ рдкрд╛рд╕ рдЕрдзрд┐рдХ рдХреЛрдб рд╣реЛрддрд╛ рд╣реИред рдХреНрдпреЛрдВрдХрд┐ end != Max
рд╢рд╛рдЦрд╛ рдХрднреА рднреА end
рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧреА, рдЗрд╕реЗ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рджреНрд╡рд╛рд░рд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рдЗрдирд▓рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
@nikomatsakis рдирд╣реАрдВ, рдЗрд╕ рд╕рдордп
@SimonSapin
рдирд╣реАрдВ, рдЗрд╕ рд╕рдордп рд╕рдВрд░рдЪрдирд╛рдПрдВ рдЕрд╕реНрдерд┐рд░ рд╣реИрдВред рд▓реЗрдХрд┐рди @ kennytm рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рд╕реНрдерд┐рд░ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред
рд╕рдордЭрд╛; рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ Iterator
impl рдЕрднреА рдирд╣реАрдВ рддреЛ рдХрднреА рдирд╣реАрдВ рд╣рдЯрд╛рдирд╛ рд╣реЛрдЧрд╛ред =)
@SimonSapin рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдо рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд┐рдП рдмрд┐рдирд╛ a..=b
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рд╣рдо рдЦреЗрддреЛрдВ рдХреЛ рдЕрд╕реНрдерд┐рд░ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдЧрд░ рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред
рдареАрдХ рд╣реИ, рдореЗрд░реЗ рдХрд╣рдиреЗ рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдЗрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рддреЗ рд╕рдордп рд╣рдореЗрдВ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд╕реНрдерд┐рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд░реЗрдВрдЬ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдмрд╛рдЗрдХрд╢реЗрдб рдФрд░ рд╕реНрдерд┐рд░реАрдХрд░рдг рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реБрдЬрд╝рд╛рд╣! рдЯрд╛рдбрд╛:
рдПрдХ рдЯрд╛рдЗрдо рдорд╢реАрди рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВ рддрд░реНрдХ рджреВрдВрдЧрд╛ рдХрд┐ рд░реЗрдВрдЬ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА :Iterator
, рдФрд░ рд╡реЗ рд╕рд┐рд░реНрдл :IntoIterator
ред рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдЕрднреА рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░реЗрдВрдЬ рдХреЗ рд╕рд╛рде рдирд┐рд░рдВрддрд░рддрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред рд╣рдо рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ Chain
рдХреЗ рд╕рд╛рде "рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЖрдВрддрд░рд┐рдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрднреА-рдХрднреА
рдПрдХ рдФрд░ рдмрд╛рдд рдЬреЛ рдЕрдирд╕реБрд▓рдЭреА рдереА, рд╡рд╣ рднреА рдкреБрдирд░рд╛рд╡реГрддрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ: рдХреНрдпрд╛ рд╣рдо рдПрдХ рдмрд╛рд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд░реЗрдВрдЬрдЗрдиреНрдХреНрд▓реВрд╕рд┐рд╡ рдХреЗ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЕрднреА рдпрд╣ 1..=0
рдкрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ , рд▓реЗрдХрд┐рди рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рднреА рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдереА ред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрдХреНрддрд┐ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╕реАрдорд╛ рдХреЛ рдХрд╛рдлреА рдмреЗрдХрд╛рд░ рдмрдирд╛ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдХрдо рд╕реЗ рдХрдо рдЗрд╕реЗ рд╣рддреЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддрд╛ рд╣реИред
рд╣рдо рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рдЪреЗрди рдХреЗ рд╕рд╛рде "рдХреБрдПрдВ рдореЗрдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЖрдВрддрд░рд┐рдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрднреА-рдХрднреА рддреЗрдЬ рд╣реЛрддреА рд╣реИ" рдмрд╛рд▓реНрдЯреАред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╢реНрд░реЗрдгреА рд╕реЗ рдХрдо рдкреНрд░рджрд░реНрд╢рди рди рд╣реЛ; рд╣реЛрдиреЗ рдХрд╛ рдХреЛрдИ рдореМрд▓рд┐рдХ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред
рдЗрд╕рдХреЗ рд╣реЛрдиреЗ рдХрд╛ рдХреЛрдИ _рдореМрд▓рд┐рдХ_ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред
рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХрд┐рди рдЗрдирд╡реЗрд░рд┐рдПрдВрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд░рд╛рдЬреНрдп рдХреЗ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдмрд┐рдЯ рдХреЗ рд╕рд╛рде рдкрд┐рдЫрд▓реЗ рджреЛ рдлреЙрд░реНрдореВрд▓реЗрд╢рди рдореЗрдВ, рдРрд╕рд╛ рдХреБрдЫ рднреА рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдмрд┐рдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрдм рд╣рдо рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░ рд░рд╣реЗ рдереЗ (рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ 100..=0
рдЬреИрд╕реЗ рдЕрдХреНрд╖рд░ рдкрд░ рд╕реЗрдЯ рдирд╣реАрдВ рдерд╛), рдЗрд╕рд▓рд┐рдП рд▓реВрдк рдирд┐рдХрд╛рд╕ рдХреА рд╕реНрдерд┐рддрд┐ рдЬрдЯрд┐рд▓ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ LLVM рдЕрдм рдЗрд╕реЗ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЦрд░рд╛рдм рдкреНрд░рджрд░реНрд╢рди рдорд┐рд▓рддрд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдлрд┐рдХреНрд╕рд┐рдВрдЧ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрд╛ рддреЛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдмрдбрд╝рд╛ рдмрдирд╛рдирд╛ рдФрд░ рдкрдм рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рд╣реЛрдирд╛, RangeInclusive: !Iterator
, рдпрд╛ рдПрд▓рдПрд▓рд╡реАрдПрдо рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓реВрдк рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдмреЗрд╣рддрд░ рдмрдирд╛рдирд╛ред
рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдореИрдВрдиреЗ RangeInclusive::next
рд▓рд┐рдЦрдиреЗ рдХреЗ рдХреБрдЫ рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Option<Ordering>
рдкрд░ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реА рдкрд┐рдЫрд▓реА рд╕реНрд╡рдпрдВ рдХреА рдкрд╕рдВрдж рдПрд▓рдПрд▓рд╡реАрдПрдо рдХреЛ рдмрд╣реБрдд рджреБрдЦреА рдХрд░ рд░рд╣реА рд╣реИ - рдмрд╕ рддреБрд▓рдирд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рджреЗ рд░рд╣рд╛ рд╣реИ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╡рд┐рдзрд╛рдирд╕рднрд╛ред рдкреАрдЖрд░ рдЕрдк рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ : https://github.com/rust-lang/rust/pull/48057
рдПрдХ рдЯрд╛рдЗрдо рдорд╢реАрди рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВ рдХрд┐рд╕реА рднреА рд╢реНрд░реЗрдгреА рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдирд╣реАрдВ рджреВрдВрдЧрд╛: рдЗрдЯрд░реЗрдЯрд░, рдФрд░ рд╡реЗ рд╕рд┐рд░реНрдл: IntoIterator рд╣реИрдВред рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдЕрднреА рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░реЗрдВрдЬ рдХреЗ рд╕рд╛рде рдирд┐рд░рдВрддрд░рддрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред рд╣рдо рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рдЪреЗрди рдХреЗ рд╕рд╛рде "рдХреБрдПрдВ рдореЗрдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЖрдВрддрд░рд┐рдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрднреА-рдХрднреА рддреЗрдЬ рд╣реЛрддреА рд╣реИ" рдмрд╛рд▓реНрдЯреАред
рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдЗрд╕рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред
:рдШрдВрдЯреА: рдЙрдкрд░реЛрдХреНрдд рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпрд╣ рдЕрдм рдЕрдкрдиреА рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдЕрд╡рдзрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ ред рдШрдВрдЯреА:
:рдШрдВрдЯреА: рдЙрдкрд░реЛрдХреНрдд рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпрд╣ рдЕрдм рдЕрдкрдиреА рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдЕрд╡рдзрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ ред рдШрдВрдЯреА:
@rfcbot FCP рд░рджреНрдж рдХрд░реЗрдВ
@withboats рдФрд░ @CodrAus рдиреЗ рдЕрдкрдиреЗ рдмреЙрдХреНрд╕ рдЪреЗрдХ рдирд╣реАрдВ рдХрд┐рдП рд╣реИрдВред
@cramertj рдкреНрд░рд╕реНрддрд╛рд╡ рд░рджреНрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ред
@rfcbot fcp рдорд░реНрдЬ
https://internals.rust-lang.org/t/psa-tweaks-to-fcp-process/6775
рдЯреАрдо рдХреЗ рд╕рджрд╕реНрдп @cramertj рдиреЗ рдЗрд╕реЗ рдорд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛ рд╣реИред рдЕрдЧрд▓рд╛ рдЪрд░рдг рдмрд╛рдХреА рдЯреИрдЧ рдХреА рдЧрдИ рдЯреАрдореЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдореАрдХреНрд╖рд╛ рд╣реИ:
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЛрдИ рдЪрд┐рдВрддрд╛ рд╕реВрдЪреАрдмрджреНрдз рдирд╣реАрдВ рд╣реИред
рдПрдХ рдмрд╛рд░ рдЬрдм рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдореАрдХреНрд╖рдХреЛрдВ рдиреЗ рд╕реНрд╡реАрдХреГрддрд┐ рджреЗ рджреА (рдФрд░ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ), рддреЛ рдпрд╣ рдЕрдкрдиреА рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдЕрд╡рдзрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЖрдкрдХреЛ рдХреЛрдИ рдмрдбрд╝рд╛ рдореБрджреНрджрд╛ рдорд┐рд▓рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрд┐рд╕реА рднреА рдмрд┐рдВрджреБ рдкрд░ рдирд╣реАрдВ рдЙрдард╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдмреЛрд▓реЗрдВ!
рдЯреИрдЧ рдХреА рдЧрдИ рдЯреАрдо рдХреЗ рд╕рджрд╕реНрдп рдореБрдЭреЗ рдХреНрдпрд╛ рдЖрджреЗрд╢ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП
:рдШрдВрдЯреА: рдЙрдкрд░реЛрдХреНрдд рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпрд╣ рдЕрдм рдЕрдкрдиреА рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдЕрд╡рдзрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ ред рдШрдВрдЯреА:
@rfcbot fcp рдЪрд┐рдВрддрд╛ рд░реЗрдВрдЬ рдкреИрдЯрд░реНрди рдореЗрдВ рдПрдХ рдСрдкрд░реЗрдЯрд░ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореБрджреНрджрд╛ рд╣реИ - https://github.com/rust-lang/rust/issues/48501ред
( @petrochenkov рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ <strong i="6">@rfcbot</strong> concern KEYWORD
, рдмрд┐рдирд╛ fcp
ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдЯреИрдЧ рдХреА рдЧрдИ рдЯреАрдо рд╕рджрд╕реНрдп рд╣реА рдЪрд┐рдВрддрд╛ рджрд░реНрдЬ рдХрд░ рд╕рдХрддрд╛ рд╣реИред)
рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдЕрд╡рдзрд┐ рдЕрдм рдкреВрд░реА рд╣реЛ рдЧрдИ рд╣реИред
рдпрджрд┐ #48501 рд╕реНрдерд┐рд░реАрдХрд░рдг рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ #48500 рдХреЗ рд╡рд┐рд▓рдп (рдФрд░ рд╕реНрдерд┐рд░) рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдирд╛ рдмрдВрдж рдХрд░рдирд╛ рд╣реЛрдЧрд╛? рдЙрд╣, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рд╣рдо рдПрдХ рддреЗрдЬрд╝ рд░рд╛рд╕реНрддрд╛ рдЦреЛрдЬ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЖрдиреЗ рдореЗрдВ рдЗрддрдирд╛ рд╕рдордп рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЕрдм рдпрд╣ рдПрдХ рдЕрдирд┐рд╢реНрдЪрд┐рдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ рдЬрд╣рд╛рдБ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрд╕реНрдерд┐рд░ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ рд╣реИрдВред
@рджреБрд░реНрдХрд╛
рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕ рд╕реНрдерд┐рд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП https://github.com/rust-lang/rust/pull/48500 рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
...
рдкреИрдЯрд░реНрди рдореЗрдВ рдЕрднреА рднреА рдореМрдЬреВрдж рд╣реИ рдФрд░ рдЗрд╕рдХреА рдЕрднреА рднреА рдкреБрд░рд╛рдиреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкреИрдЯрд░реНрди рдореЗрдВ &BEGIN ... END
рд╣реИ (рдпрд╣ рдмрд╣реБрдд рджреБрд░реНрд▓рдн рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ) рдЗрд╕реЗ ..=
рдирд╣реАрдВ рдмрджрд▓рдиреЗ рдХрд╛ рд╣рдореЗрд╢рд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛрддрд╛ рд╣реИ
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо #48500 рдХреЛ рдмрд╣реБрдд рдЬрд▓реНрджреА рд╕реНрдерд┐рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореИрдВ рдЗрд╕реЗ "рдЗрдВрд╕реНрдЯрд╛-рд╕реНрдерд┐рд░" w/рд▓реИрдВрдбрд┐рдВрдЧ рдареАрдХ рдХрд░ рджреВрдВрдЧрд╛
inclusive range
рдХреЛ рд╕реНрдерд┐рд░ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ #47813 рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХреЛ рдорд░реНрдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ 1.25 рд░рд┐рд▓реАрдЬ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВ? рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкреБрд▓ рд░рд┐рдХреНрд╡реЗрд╕реНрдЯ рдХреЛ 16 рдорд╛рд░реНрдЪ рдХреЛ рдорд░реНрдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
@mominul рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛ рдореЗрдВ рд╡рд┐рд▓рдп рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╣реА рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдЙрдкрд▓рдмреНрдз рд╣реИ, рдЗрд╕ рдкреНрд░рдХрд╛рд░ ..=
1.26 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ, рди рдХрд┐ 1.25 рд╕реЗред
рдЗрд╕ рддрд░рд╣ рдЖрдк рдЙрдиреНрд╣реЗрдВ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдХреЗрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдмреАрдЯрд╛ рдФрд░ рд░рд╛рдд рдореЗрдВ рдЙрдирдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
@kennytm рдФрд░ @clarcharr рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдХрдо рд╕реЗ рдХрдо рдореЗрд░реЗ рд▓рд┐рдП рд░рд╕реНрдЯ 1.26 рд░рд┐рд▓реАрдЬ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрдмрд╛рдК рдирд╣реАрдВ рд╣реИ! :рдореБрд╕реНрдХреБрд░рд╛рдУ:
рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдЪрд░реНрдЪрд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдореЗрдВ рдмрд╣реБрдд рджреЗрд░ рд╣реЛ рдЪреБрдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВ рди ..
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджреЗрдВ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╢рдмреНрджреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ?
рд╕реНрдХреИрд▓рд╛ рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ 1 to 4
рдЬреЛ [1, 2, 3, 4]
, 1 until 4
рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдЬреЛ [1, 2, 3]
рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ by
рдХреАрд╡рд░реНрдб рдЬреЛ рдЪрд░рдг рдЖрдХрд╛рд░ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ : 1 to 10 by 2 = [1, 3, 5, 7, 9]
ред
рдпрд╣ рджреЛрдиреЛрдВ рдЗрд░рд╛рджреЗ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ "рдСрдл-рдмрд╛рдп-рд╡рди" рддреНрд░реБрдЯрд┐ рд╕реЗ рдмрдЪрд╛рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рд░ рдХреЛрдИ рдЗрддрдирд╛ рдЪрд┐рдВрддрд┐рдд рд▓рдЧрддрд╛ рд╣реИред
рджреА, рдпрд╣ рд╕рднреА рдореМрдЬреВрджрд╛ рдХреЛрдб рдХреЛ рддреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ, рдЕрдЧрд░ рдореВрд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд░рд╣рддрд╛ рд╣реИред
@ElectricCoffee рд░рд╕реНрдЯ рд░реЗрдВрдЬ рдореЗрдВ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЗрд╡рд▓ рд╕рдВрдЦреНрдпрд╛рдПрдВ рдирд╣реАрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП to
рдФрд░ until
рдХреЛ рдХреАрд╡рд░реНрдб рдХреЗ рд░реВрдк рдореЗрдВ рдкреЗрд╢ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдПрдХ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдмреНрд░реЗрдХрд┐рдВрдЧ рдмрджрд▓рд╛рд╡ рд╣реЛрдЧрд╛ред
рдпрд╣ рд╕реНрдХрд╛рд▓рд╛ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд░рд╕реНрдЯ рдХреЗ рдбрд┐рдЬрд╛рдЗрди рд╡рд┐рдХрд▓реНрдк рдХрд╛рдлреА рд╣рдж рддрдХ рднрд┐рдиреНрди рд╣реИрдВред
@ElectricCoffee рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдЗрд╕рдХреА рднрд╛рд╡рдирд╛ рдЪрд╛рд╣рд┐рдП, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдХреАрд╡рд░реНрдб рдЬреЛрдбрд╝рдирд╛ рд╡рд╛рдВрдЫрд┐рдд рд╣реИред
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдмрд┐рд▓реНрдЯ-рдЗрди рд▓реИрдВрдЧреНрд╡реЗрдЬ рдХреАрд╡рд░реНрдбреНрд╕ рдХреЛ рдХрдо рд╕реЗ рдХрдо рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдлрдВрдХреНрд╢рди рдпрд╛ рд╡реЗрд░рд┐рдПрдмрд▓ рдирд╛рдореЛрдВ рд╕реЗ рдЯрдХрд░рд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдВрдХрд┐ to
рдФрд░ until
std
(рдЬрд╣рд╛рдБ рддрдХ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ) рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рд╢рдмреНрдж рдирд╣реАрдВ рд╣реИрдВ, рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рд╡реЗ рдЕрдиреНрдп рдХреНрд░реЗрдЯреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рд╛рдорд╛рдиреНрдп рд╢рдмреНрдж рд╣реИрдВ рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ.
@daboross рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЙрдЪрд┐рдд рдмрд┐рдВрджреБ рд╣реИ рдЬрд┐рд╕ рдкрд░ рдореИрдВрдиреЗ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, a .. b
рдЕрд░реНрде a to b
, рдЪрд╛рд╣реЗ a
рдФрд░ b
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реИрдВред
рдФрд░ рд╣рд╛рдБ, @timvisee рд╡реЗ рд╢рд╛рдпрдж рд╣реИрдВред
@ElectricCoffee рд▓реЗрдХрд┐рди рдЕрдЧрд░ to
рдорддрд▓рдм ..=
рдФрд░ until
рдорддрд▓рдм ..
рддреЛ рдЖрдкрдХреЛ a until b
рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛, рди рдХрд┐ a to b
a .. b
a to b
рдмрдЬрд╛рдп a .. b
ред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрди рд╢рдмреНрджреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдЕрдзрд┐рдХ" рд╕рд╣рдЬ рдирд╣реАрдВ рд╣реИ .. рд▓реЗрдХрд┐рди until
рд╣рд░ рдЬрдЧрд╣ рд▓рд┐рдЦрдирд╛ рдЕрдзрд┐рдХ рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╣реЛрдЧрд╛ рдХрд┐ ..
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ ..=
(рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рд╢рдмреНрджреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ ..
рдХреЛ рдЫреЛрдЯрд╛ рд╢рдмреНрдж рд╕реМрдВрдкрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП)ред
рдФрд░ рдЖрдк рдЙрд╕ @Boscop рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЙрджрд╛рд╣рд░рдг рдерд╛ рдХрд┐ рд╢рдмреНрджреЛрдВ рдХреЛ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдореИрдВрдиреЗ to
рд╡рд┐рд╢реЗрд╖ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреБрдЫ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕рдорд╛рд╡реЗрд╢реА рдХреЗ рд▓рд┐рдП upto
ред
рдпрд╣ рд╕рдм рдПрдХ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдерд╛ред
рд╕реНрдХрд╛рд▓рд╛ рдореЗрдВ, рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдирдиреНрдп рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЗрд╕реЗ рдЫреЛрдЯрд╛ рд╢рдмреНрдж рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
@timvisee рдПрдХ рдмрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ a.to(b)
рдФрд░ a.until(b)
, рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреАрд╡рд░реНрдб рдХреА рдЬрд░реВрд░рдд рд╣реИ (рдФрд░ рдпрд╣ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рднреА рдмрд╣реБрдд рдХреБрдЫ рдЕрдирд╛рдбрд╝реА рдирд╣реАрдВ рд╣реИ)ред
@ hyst329 рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рднреА рдирд╣реАрдВ рдерд╛ред рдореБрдЭреЗ рдХрд╣рдирд╛ рд╣реЛрдЧрд╛, рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд╣ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИ! рдЖрдк рд╡рд╛рдХрдИ рд╕рд╣реА рд╣реИрдВред
рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди (/ рдирдпрд╛) рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд▓рд┐рдП рдЙрдЪрд┐рдд рдкреВрд░реНрдг рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЬреЛрдбрд╝ рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рд╕рд╣рдЬрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреЙрд╕реНрдХреЛрдк рдХреА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд╕рд╣рдордд рд╣реЛрдирд╛ рд╣реИред "рд╕рд╣рд┐рдд" рдФрд░ "рдЫреЛрдбрд╝рдХрд░" рдЬреИрд╕реЗ рд╢рдмреНрджреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рджрд┐рди-рдкреНрд░рддрд┐рджрд┐рди рдХреА рдЕрдВрдЧреНрд░реЗрдЬреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╛рд╡реЗрд╢реА рдФрд░ рдЕрдирдиреНрдп рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рддреИрдпрд╛рд░ рд╢реЙрд░реНрдЯрдХрдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдЕрдВрддрд░ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред
рдЬрдм рддрдХ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ "рдП рд╕реЗ рдмреА" рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдХреНрдпрд╛ "рдП рд╕реЗ рдмреА" рдХрд╛ рдЕрд░реНрде рджрдХреНрд╖рд┐рдгреА рдУрдВрдЯрд╛рд░рд┐рдпреЛ, рдХрдирд╛рдбрд╛ рдореЗрдВ рджрд┐рди-рдкреНрд░рддрд┐рджрд┐рди рдХреЗ рднрд╛рд╖рдг рдореЗрдВ рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рдпрд╛ рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рд╣реИ, рдФрд░ "рдЬрдм рддрдХ" рд╕рдВрдмрджреНрдз рд╣реИ рд╕рдордп рдХреЗ рд╕рд╛рде рджреГрдврд╝рддрд╛ рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдХрд┐, рдЬрдм рдЗрд╕ рд╢рд┐рдерд┐рд▓ рдЕрд░реНрде рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ "рдШрдЯрдирд╛" рдЬреЛ "рдЬрдм рддрдХ" рдХреЗ рд╕рд╛рде рд╕рдВрдмрджреНрдз рд╣реИ "рдЬрдм рддрдХ рд╣рдо рдПрдХреНрд╕ рдирд╣реАрдВ рджреЗрдЦрддреЗ " рдпрд╛ "рдЬрдм рддрдХ рд╣рдо рдПрдХреНрд╕ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ"ред
@ hyst329 рдЙрдиреНрд╣реЗрдВ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд░рдЦрдиреЗ рд╕реЗ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рддрдХ рд╕реАрдорд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд╣рд╛рд▓рд╛рдБрдХрд┐ред рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдФрд░ рджреВрд╕рд░рд╛ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд░реЗрдВрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ рдореЗрдВ рдПрдХ рдирдпрд╛ рдХреИрдЪ-рдСрд▓ рдлреАрдЪрд░ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдмрджрд▓рд╛рд╡ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ to
рдФрд░ until
рддрд░реАрдХреЗ рд╣реИрдВред
рдореИрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдХреАрд╡рд░реНрдб рдХрд╛ рд╕реБрдЭрд╛рд╡ рдПрдХ рдЕрдкреНрд░реИрд▓ рдлреВрд▓ рдордЬрд╛рдХ рдерд╛ред
..= рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЧреБрд░реБ, 5 рдЕрдкреНрд░реИрд▓, 2018 рдХреЛ рджреЛрдкрд╣рд░ 1:53 рдмрдЬреЗ, рдбреЗрд╡рд┐рдб рд░реЙрд╕ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:
@ hyst329 https://github.com/hyst329 рдЙрдиреНрд╣реЗрдВ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд░рдЦрдиреЗ рд╕реЗ рд╕реАрдорд┐рдд рд╣реЛ рдЬрд╛рдПрдЧрд╛
рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдПред рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдирд╣реАрдВ рд╣реЛрдЧрд╛
рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рд╢реНрд░реЗрдгреА рдФрд░ рджреВрд╕рд░рд╛редрдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ рдореЗрдВ рдПрдХ рдирдпрд╛ рдХреИрдЪ-рдСрд▓ рдлреАрдЪрд░ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ
рд░реЗрдВрдЬ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдмрджрд▓рд╛рд╡ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╣реИ
рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддрдХ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рддрдХред-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/rust-lang/rust/issues/28237#issuecomment-379021814 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAC3nwBj-b985q1Ez0OHDEHkG6DWV_5nks5tlloZgaJpZM4F4LbW
.
рд╣рд╛рдБ, рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╣рдорд╛рд░реА 300+ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рд╣реИрдВ, рдФрд░ рдкрд╣рд▓реА рд╣реА рдЯрд┐рдкреНрдкрдгреА рдХрд╣рддреА рд╣реИ:
рдЗрд╕ рд╕реВрддреНрд░ рдореЗрдВ рдХреЛрдИ рдФрд░ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП ред рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рднреА рдореМрдЬреВрджрд╛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рдЙрдирдХреЗ рдФрдЪрд┐рддреНрдп рдХреЛ рдпрд╣рд╛рдВ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдЕрдирдиреНрдп рд╢реНрд░реЗрдгреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдХрд┐рд╕реА рднреА рдЕрд▓рдЧ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдлрд╝реЛрд░рдо рдпрд╛ рдЗрдВрдЯрд░реНрдирд▓ рдлрд╝реЛрд░рдо рдкрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдкрд╢реНрдЪрдЧрд╛рдореА рд╕рдВрдЧрддрддрд╛ рдХреЛ рддреЛрдбрд╝рдирд╛ рдПрдХ рдЧреИрд░-рд╢реБрд░реБрдЖрдд рд╣реИред
рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрднреА рдХреЗ рд▓рд┐рдП рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ, рдЕрдЧрд░ рдореИрдВ рдХрд┐рд╕реА рднреА рдкреИрд░ рдХреА рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдкрд░ рдХрджрдо рд░рдЦ рд░рд╣рд╛ рд╣реВрдВ рддреЛ рдХреНрд╖рдорд╛ рдХрд░реЗрдВ!
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЖрдЪреНрдЫрд╛рджрд┐рдд рд╕рдм рдХреБрдЫ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдЧрд░ рдХреБрдЫ рдФрд░ рд╣реИ рддреЛ рдХреГрдкрдпрд╛ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдореВрд▓ рд╕рдВрджреЗрд╢ рдореЗрдВ рдЪреЗрдХрд▓рд┐рд╕реНрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реЗрдВ рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд▓реИрдВрдЧ рдЯреАрдо рдиреЗ рдЖрдЬ рд╣рдорд╛рд░реА рдмреИрдардХ рдореЗрдВ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдкрд░ рдлрд┐рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХреА, рдФрд░ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореИрдЯреНрд░рд┐рдХреНрд╕ рдкрд░ рдкрд╣реБрдВрдЪреЗ:
рд╕рд╣рд╛рдпрдХ
...
рдкреИрдЯрд░реНрди рдореЗрдВ рдФрд░..
рднрд╛рд╡ рдореЗрдВ, рдФрд░ рдХреБрдЫ рдирд╣реАрдВ, рдПрдХ рдЕрд╕реНрдерд┐рд░ рдбрд┐рдЬрд╛рдЗрди рд╣реИ, рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛редрджреЛрдиреЛрдВ рдЬрдЧрд╣реЛрдВ рдкрд░
...
рдФрд░..
рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреА, рд▓реЗрдХрд┐рди рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЪрд┐рдВрддрд╛ рд╣реИ; рд╣рдо рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЧрд▓рдд рдЕрд╡рдзрд┐ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдореЗрдВ рдШрдВрдЯреЛрдВ рдЦрд░реНрдЪ рдХрд░рдиреЗ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рдирд╣реАрдВ рд╣реИред..=
рдФрд░..
рдЬрд╛рдирд╛ рд╕реМрдВрджрд░реНрдп рдХреА рджреГрд╖реНрдЯрд┐ рд╕реЗ рдХрдо рдЖрдХрд░реНрд╖рдХ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдкрд░реЛрдХреНрдд рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо рдЗрд╕реЗ рдмрд╣реБрдд рд╣реА рд╕реМрдореНрдп рддрд░реАрдХреЗ рд╕реЗ рднреА рд░реЛрд▓ рдЖрдЙрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдкрд╣рд▓реЗ..=
рдХреЛ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкреЗрд╢ рдХрд░реЗрдВ (рдЬрд┐рд╕реЗ rustfmt рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ), рдФрд░ рдЗрд╕рдХреЗ рдореБрд╣рд╛рд╡рд░реЗрджрд╛рд░ рдмрдирдиреЗ рдХреЗ рдмрд╛рдж рд╣реА,...
рд╣рдЯрд╛ рджреЗрдВредрдпрджрд┐ рдЖрдк рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЯреАрдо рдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐
..=
рдФрд░..
рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд╣рдорд╛рд░рд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд░рд╛рд╕реНрддрд╛ рд╣реИред рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рднреА рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдирдП рддрд░реНрдХ рдЙрдард╛рдП рдЬрд╛рдПрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ: рд╣рдо рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП..=
рдЕрдВрдХрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдЧрд╛ред рдкреИрдЯрд░реНрди рдФрд░ рднрд╛рд╡, рдФрд░ рдмрд╛рдж рдореЗрдВ рд╣рдо рдЬрд╛рдПрдБрдЧреЗ FCP!