රස්ට් 1.46 ක්‍රමලේඛන භාෂා නිකුතුව

පළ කළා පද්ධති ක්‍රමලේඛන භාෂාවේ 1.46 නිකුත් කරන්න මලකඩ, Mozilla ව්යාපෘතිය විසින් ආරම්භ කරන ලදී. භාෂාව මතක ආරක්ෂාව කෙරෙහි අවධානය යොමු කරයි, ස්වයංක්‍රීය මතක කළමනාකරණය සපයයි, සහ කසළ එකතු කරන්නෙකු භාවිතා නොකර ඉහළ කාර්ය සමාන්තරකරණයක් සාක්ෂාත් කර ගැනීම සඳහා මෙවලම් සපයයි. ධාවන කාලය.

රස්ට්ගේ ස්වයංක්‍රීය මතක කළමනාකරණය පොයින්ටර් හසුරුවන විට දෝෂ ඉවත් කරන අතර අඩු මට්ටමේ මතක හැසිරවීමකින් පැන නගින ගැටළු වලින් ආරක්ෂා කරයි, එනම් මතක කලාපයකට නිදහස් වූ පසු ප්‍රවේශ වීම, null pointer dereferences, buffer overruns යනාදිය. ව්‍යාපෘතිය මගින් පුස්තකාල බෙදා හැරීම, එකලස් කිරීම සහතික කිරීම සහ පරායත්තතා කළමනාකරණය කිරීම සඳහා පැකේජ කළමනාකරුවෙකු සංවර්ධනය වෙමින් පවතී. ගුවන් භාණ්ඩ, වැඩසටහනට අවශ්‍ය පුස්තකාල එක ක්ලික් එකකින් ලබා ගැනීමට ඔබට ඉඩ සලසයි. පුස්තකාල සත්කාරකත්වය සඳහා ගබඩාවක් සහාය දක්වයි crates.io.

ප්රධාන නවෝත්පාදන:

  • "const fn" යන ප්‍රකාශය භාවිතයෙන් නිර්වචනය කරන ලද ශ්‍රිතවල හැකියාවන් පුළුල් කර ඇත, එය නිත්‍ය ශ්‍රිත ලෙස පමණක් නොව, නියතයන් වෙනුවට ඕනෑම සන්දර්භයක භාවිතා කළ හැක. මෙම ශ්‍රිතයන් ගණනය කරනු ලබන්නේ සම්පාදනය කරන වේලාවේදී මිස ධාවන වේලාවේදී නොවේ, එබැවින් ඒවා නියත වලින් පමණක් කියවීමේ හැකියාව වැනි යම් සීමාවන්ට යටත් වේ.

    නව නිකුතුව එවැනි කාර්යයන් සඳහා බූලියන් ක්‍රියාකරුවන් ("&&" සහ "||") භාවිතා කිරීමේ තහනම ඉවත් කරයි, සහ "if", "if let", "match" ඉදිකිරීම්, භාවිතයට ඉඩ දෙයි.
    "while", "while let" සහ "loop", සහ "&[T]" ප්‍රකාශනය භාවිතයෙන් පෙති (පෙත්ත, ගතික අරා) බවට පරිවර්තනය කිරීමේ හැකියාව ද සපයයි. "const fn" ශ්‍රිතවල මෙම විශේෂාංග භාවිතා කිරීමෙන් ඔබට සම්පත්-දැඩි මෙහෙයුම් කිහිපයක් සම්පාදන අදියර වෙත ගෙන යාමට ඉඩ සලසයි. උදාහරණයක් ලෙස, "const-sha1" ක්‍රියාත්මක කිරීම මඟින් සම්පාදනය කරන අවස්ථාවේ දී SHA-1 හෑෂ් ගණනය කිරීමට හැකි වන අතර එමඟින් Rust සඳහා WinRT බන්ධන 40 ගුණයකින් පමණ වේගවත් වේ.

  • දෝෂ පණිවිඩ වඩාත් තොරතුරු සහිත කිරීමට, "#[track_caller]" ගුණාංගය සඳහා සහය ස්ථාවර කර ඇත, එය unwrap වැනි කාර්යයන් සඳහා ප්‍රයෝජනවත් වේ, එය වර්ග වැරදි ලෙස භාවිතා කළහොත් භීතියට හේතු විය හැක. දෝෂ පණිවිඩයක ඇමතුම්කරුගේ ස්ථානය මුද්‍රණය කිරීමට සන්ත්‍රාසය හසුරුවන්නා විසින් නිශ්චිත ගුණාංගය භාවිතා කරනු ඇත.
  • නියතයන් වෙනුවට ඕනෑම සන්දර්භයක එය භාවිතා කිරීමේ හැකියාව තීරණය කරන "const" ගුණාංගය, std::mem::forget ක්‍රමයේ භාවිතා වේ.
  • API හි නව කොටසක් ස්ථායී ප්‍රවර්ගය වෙත ගෙන ගොස් ඇත, ස්ථායීකරන ලද විකල්පය::zip සහ vec::Drain::as_slice.
  • පැකේජ කළමනාකරු භාණ්ඩ තුළ එකතු කළා පැකේජයක් සම්පාදනය කිරීමේදී සකසන ලද නව පරිසර විචල්‍යයන් සඳහා සහාය: CARGO_BIN_NAME (ප්‍රතිඵලයක් ලෙස ක්‍රියාත්මක කළ හැකි ගොනුවේ නම), CARGO_CRATE_NAME (පැකේජයේ නම), CARGO_PKG_LICENSE (මැනිෆෙස්ටයේ දක්වා ඇති බලපත්‍රය), CARGO_PKG_LICENSE_FILE (බලපත්‍ර ගොනුව වෙත මාර්ගය).

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න