Files
boc/aamos-ledger-rust/target/debug/deps/libversion_check-267162ef9d9ce546.rmeta
T

161 lines
73 KiB
Plaintext
Raw Normal View History

rust
O##rustc 1.96.0 (ac68faa20 2026-05-25)ÁÀ뉊]!ÜÛê(¹Þ—šên-5be7b69c3ff7b5b8ÁíàÄTËŸ ÜJîÄ)'ß\¥!-3d1337db07d0b3aeÁ¤²XctÔ'ÐÓ©z¨ɽÓ-a4945860e1c53b00Á¤°ð ¾ä-±($²ï=©Ã-7e98a21bfd32b0edÁòÖÀH•‘PIÓHã#£-055f30b747f859b6Árustc_std_workspace_coreÁ­Cçß^ò½èÝ$­Çÿ+Cé-c4878ee60b2242c9ÁŸÃï+Ñ]ŠqB<ÏïW#-8dd1dd90e70d0b6aÁ miniz_oxideÁ€š»J(P>àö÷g\K-1eb618da2918ab7fÁadler2ÁÆ;+Þ®5¥Ìýݰ¦ÛLˆ-f7919172d268e069Á hashbrownÁPäV9ÒÆèÜ"ÊÖVŽ\-0fc2184a5da6723aÁrustc_std_workspace_allocÁs&ØòØy¯s•bæ!‰ýŠ-97e4bf30be240674Á
std_detectÁhŠBîÙºÌI®ËÅš-9dbbf8346ba7ac8bÁrustc_demangleÁûë9´Ç×@Œ’ùXFº-f33013f239bf9f14Ácfg_ifÁÜLhž§Œaã¯>­-0a71c8f33a838301Á addr2lineÁ׎Þ!]8V$É@@-e618e6be60e87ba2ÁgimliÁ¸
°µ~Î1‹Ñt ðÁ€w-1f7768a68858f670ÁobjectÁ
áPÃ?­À¶¼QHJ¥-914cd6a4dbe590d1ÁmemchrÁ›º«8Ór­2Ù $¨ûib-cf21ca6f2bb15dcdÁë
‹ás«LÖ€îâƒ×ɯŒ-ee6f3747e38367f0ÁtestsÁ,¶3$«3'Å,×,$Ì,Å,ùi$îiÀÄreadÁ  parseÁ  from_mmpÁto_mmpÁat_leastÁ at_mostÁ exactlyÁ ××channelÁ¢  µas_strÁsupports_featuresÁis_devÁ
is_nightlyÁis_betaÁ is_stableÁ%×dateÁ'')¢* * )µ- - )from_ymdÁ)to_ymdÁ)å2 )ø4 )Š 6 '8×#version_and_date_from_rustc_versionÁ? ? ? ? +version_and_date_from_rustc_verbose_versionÁD E get_version_and_dateÁG G G tripleÁ is_min_dateÁ is_max_dateÁ
is_exact_dateÁis_min_versionÁis_max_versionÁis_exact_versionÁis_feature_flaggableÁR supports_featureÁT T V TALLOW_FEATURESÁT T T T VersionÁ]
]ˆacÖgƒ iï

kKindÁmDevÁn
mNightlyÁp
mBetaÁr
mStableÁt
v×y{ÖƒChannelÁ
ˆ ×
  Ö
ƒ'DateÁ
ˆ'×'''Ö'''ƒ' ï
'
Ÿ
















!
"
#
$
&
&
&
-
1
2
2
4
4
6
6
9
9
9
?
D
D
L
M
N
O
P
Q
T
b
b
d
h
j
j
l
l
w
w
w
z
z
|




ˆ
ˆ
Š
Ž





˜
œ
ž
ž
 
 
Ðì]]^ß_ˆ $‰hÔô µßÎÎΊ ÎÛÎØÎíßÎκÎÄcοcοcmnoÆpqÔrsætuõ<…gé¬ÐìäµßäääŠ äÛäØä¿c¾ƒˆ ËŠ¸ä8tÐìùµßùùùŠ ùÛùØùÄcù¿cˆ' ÉT‡QÐìüµßüüüŠ üÛüØüíßüüºüÄcü`]xm†a]ym‡c]{m‰e]}mf]~šg]mi]k]%8]vm„Ðìѵߊ ÛØíߺ Äc ¿cœ«#dbH[ Îî«g«n4¹
AKhdfî#-(puh$Î0î7@Jœ««',
ïß««AFNjPwÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ¿ßÀßÁßLessÁÂßÃßÄß~Å߯ßÇßGreaterÁÈßåºÝÈnûê7²î¹îÀ «.†!6ܹ
éó` œ««',
»«=BJl ƒîî†!ƒ†!Š3¹
@Jû!³(%+3 JRÖ#emÖ#8ˆÖ#S¢
êc³¸ÀwÕÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÙŸÈŸÈ ÈErrorÁ O˜éBL\ äg  c cˆ¢cµ
 `£cbufÁ `àB¤GS
®Ö#¾È±ÖáÄ$ëH
(z8=CNý%Uý%\×&c×&js¹
 __self_discrÁ __arg1_discrÁ°¸,|*Ù
ý%'(49 ä+ý%2;E(¼ Ö# óä  ¿cQV
‡dgl\yÁù$ ù¥ˆ&¬Ö#³·*¥ ý%¯ý%Ô±áë³+·*áÑ*û óää',
·ßääAFN̈HÃ
”+”+ý%ý%Ž2¹
?I¬,·ÐŠÎÙ”+$.(ØÝŽ"'ù3”+:CM( Ö#Å ·*GLÑ*X]Mjù$Œ üˆ&Ö#¤·*  /£š0ªÈ±Õߘ0·*ÕÑ*ïÅ//#H
ù/ù//g/n2¹
?I˜Ùù/$.(œ¡œ"'ü3ù/:CMÅ//',
ïß//AFN­žP£Ìù/ù/š0ˆš03¹
@JÝ3¸ Å//',
»/=BJ ²  ¯ù/ù/š0š03¹
@J 5´‘#Ö#"allow-features="Á”‰ ]^#Î.«5<”à %ù0ä7> %ü0/7>'?DGKLMNOPQRTÀµ":¡:CommandÁ<Ì"î1;ß<”]<¾=¢¢üKH This tiny crate checks that the running or installed `rustc` meets someÁüLMJ version requirements. The version is queried by calling the Rust compilerÁüšJG with `--version`. The path to the compiler is determined first via theÁüåLI `RUSTC` environment variable. If it is not set, then `rustc` is used. IfÁü²B? that fails, no determination is made, and calls return `None`.Áõú # ExamplesÁˆúüŒLI **Note:** Please see [feature detection] for a note on enabling unstableÁüÙ/, features based on detection via this crate.Áúü0- [feature detection]: crate#feature-detectionÁ¾úüÂNK * Set a `cfg` flag in `build.rs` if the running compiler was determined toÁü‘# be at least version `1.13.0`:Áµú
```rustÁüÇ*' extern crate version_check as rustc;Áòúüö;8 if rustc::is_min_version("1.13.0").unwrap_or(false) {Áü²=: println!("cargo:rustc-cfg=question_mark_operator");Á ```Áúü†MJ See [`is_max_version`] or [`is_exact_version`] to check if the compilerÁüÔ2/ is _at most_ or _exactly_ a certain version.Á”‡ <br /><br />ÁšúüžLI * Check that the running compiler was released on or after `2018-12-18`:ÁëúŸ?üý*¶?¨ úü¬ .+ match rustc::is_min_date("2018-12-18") {ÁüÛ ,) Some(true) => "Yep! It's recent!",Áüˆ
+( Some(false) => "No, it's older.",Áü´
96 None => "Couldn't determine the rustc version."Á
 };Á
‘A úü… KH See [`is_max_date`] or [`is_exact_date`] to check if the compiler wasÁüÑ 96 released _prior to_ or _exactly on_ a certain date.Á”‹ ÂBž úü¢ =: * Check that the running compiler supports feature flags:Áà ú Ÿ?üò *¶?
úü¡
+( match rustc::is_feature_flaggable() {ÁüÍ
>; Some(true) => "Yes! It's a dev or nightly release!",ÁüŒ41 Some(false) => "No, it's stable or beta.",ÁüÁ9”EÖEL„‘AŽúü’1. Please see the note on [feature detection].Á”ÄÂB×úüÛB? * Check that the running compiler supports a specific feature:ÁžúŸ?ü°*¶?Ûúüß>; if let Some(true) = rustc::supports_feature("doc_cfg") {Áüž1. println!("cargo:rustc-cfg=has_doc_cfg");ÁAAâúüæ1”J”˜ÂB«úü¯?< * Check that the running compiler is on the stable channel:ÁïúŸ?ü*¶?¬úü°$! match rustc::Channel::read() {ÁüÕC@ Some(c) if c.is_stable() => format!("Yes! It's stable."),Áü™EB Some(c) => format!("No, the channel {} is not stable.", c),ÁüßB? None => format!("Couldn't determine the rustc version.")ÁÖE‘Aµúü¹OL To interact with the version, release date, and release channel as structs,Áü‰NK use [`Version`], [`Date`], and [`Channel`], respectively. The [`triple()`]ÁüØ2/ function returns all three values efficiently.Áú¼ # Feature DetectionÁ§úü«NK While this crate can be used to determine if the current compiler supportsÁüúNK an unstable feature, no crate can determine whether that feature will workÁüÉGD in a way that you expect ad infinitum. If the feature changes in anÁü‘GD incompatible way, then your crate, as well as all of its transitiveÁüÙPM dependents, will fail to build. As a result, great care should be taken whenÁüªJG enabling nightly features even when they're supported by the compiler.ÁõúüùMJ One common mitigation used in practice is to make using unstable featuresÁüÇOL transitively opt-in via a crate feature or `cfg` so that broken builds onlyÁü—MJ affect those that explicitly asked for the feature. Another complementaryÁüåNK approach is to probe `rustc` at build-time by asking it to compile a smallÁü´PM but exemplary program that determines whether the feature works as expected,Áü…MJ enabling the feature only if the probe succeeds. Finally, eschewing theseÁüÓOL recommendations, you should track the `nightly` channel closely to minimizeÁü£,) the total impact of a nightly breakages.ÁÐú”Ô # AlternativesÁçúüëNK This crate is dead simple with no dependencies. If you need something moreÁüº OL and don't care about panicking if the version cannot be obtained, or if youÁüŠ!'$ don't mind adding dependencies, seeÁü²!<9 [rustc_version](https://crates.io/crates/rustc_version).Á'?DGKLMNOPQRTÀÉÊ:Ü¡:ƒ8Ãî1;ßÂ]<¾Á=À>?\‡"<"]^× ¤,DÎ
üÍ ü¶IF Reads the version of the running compiler. If it cannot be determinedÁü„?< (see the [top-level documentation](crate)), returns `None`.ÁÈú
# ExampleÁâú ```rustÁüú use version_check::Version;Ážúܦ match Version::read() {ÁüÆ0- Some(d) => format!("Version is: {}", d),Áüû63 None => format!("Failed to read the version.")Á };Á ```Á$ÔÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÎ
<closure_kind>Á<closure_signature>Á<upvars>ÁÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙúHúHßûHÁ‘4Ý­f‰úM÷ggÙ¾eÖeóe“gâgÇeÙüÛ.ü…-* Parse a Rust release version (of the formÁü·HE `major[.minor[.patch[-channel]]]`), ignoring the release channel, ifÁü„HE any. Returns `None` if `version` is not a valid Rust version string.ÁÑúbëú±büƒÆb§úü¯41 let version = Version::parse("1.18.0").unwrap();Áüè'$ assert!(version.exactly("1.18.0"));Áúüœ <9 let version = Version::parse("1.20.0-nightly").unwrap();ÁüÝ '$ assert!(version.exactly("1.20.0"));Áü‰
,) assert!(version.exactly("1.20.0-beta"));Áº
úüÂ
1. let version = Version::parse("1.3").unwrap();Áüø
&# assert!(version.exactly("1.3.0"));Á£ úü« /, let version = Version::parse("1").unwrap();Áüß &# assert!(version.exactly("1.0.0"));ÁŠ úü’ 74 assert!(Version::parse("one.two.three").is_none());ÁüÎ 30 assert!(Version::parse("1.65536.2").is_none());Áü†
.+ assert!(Version::parse("1. 2").is_none());Áü¹
*' assert!(Version::parse("").is_none());Áüè
,) assert!(Version::parse("1.").is_none());Áü™1. assert!(Version::parse("1.2.3.4").is_none());Á§d,â¡ ¡Çe ñ
ÄŒ ¾e
Öe
óe

 
Ö#Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ޓޓ
ParseIntErrorÁíÙ_iQÏ/ôÙ Á  #ü¹>ü‚HE Creates a `Version` from `(major, minor, patch)` version components.ÁÏúbéú±büÆb¥úü­;8 assert!(Version::from_mmp(1, 35, 0).exactly("1.35.0"));Áüí;8 assert!(Version::from_mmp(1, 33, 0).exactly("1.33.0"));Áü­;8 assert!(Version::from_mmp(1, 35, 1).exactly("1.35.1"));Áüí;8 assert!(Version::from_mmp(1, 13, 2).exactly("1.13.2"));Á<­§dDÀtt
majorÁ,ÉminorÁ,ÕpatchÁ,áü¹'üÕEB Returns the `(major, minor, patch)` version components of `self`.ÁŸúb¹ú±büÑÆbõúüýGD assert_eq!(Version::parse("1.35.0").unwrap().to_mmp(), (1, 35, 0));ÁüÉGD assert_eq!(Version::parse("1.33.0").unwrap().to_mmp(), (1, 33, 0));Áü•GD assert_eq!(Version::parse("1.35.1").unwrap().to_mmp(), (1, 35, 1));ÁüáGD assert_eq!(Version::parse("1.13.2").unwrap().to_mmp(), (1, 13, 2));Á<­§d4À¢ ¢Îttt Ç
ü…#-üC@ Returns `true` if `self` is greater than or equal to `version`.ÁÉúüÑLI If `version` is greater than `self`, or if `version` is not a valid RustÁü¢$! version string, returns `false`.ÁËúbåú±büýÆb¡úü©41 let version = Version::parse("1.35.0").unwrap();Áâúüê(% assert!(version.at_least("1.33.0"));Áü— (% assert!(version.at_least("1.35.0"));ÁüÄ (% assert!(version.at_least("1.13.2"));Áñ úüù )& assert!(!version.at_least("1.35.1"));Áü§!)& assert!(!version.at_least("1.55.0"));ÁÕ!úüÝ!41 let version = Version::parse("1.12.5").unwrap();Á"úüž"(% assert!(version.at_least("1.12.0"));ÁüË")& assert!(!version.at_least("1.35.0"));Á<ù"§dDŒ#£¤ £Î ¤ •#
$#Ä<œ#Læ#¾eÖeóe“gÎ îü€),ü«$@= Returns `true` if `self` is less than or equal to `version`.Áð$úüø$IF If `version` is less than `self`, or if `version` is not a valid RustÁüÆ%$~ï%úl÷%b‰&ú\&±bü¡&ÆbÅ&úüÍ&4ù~†'úüŽ''$ assert!(version.at_most("1.35.1"));Áüº''$ assert!(version.at_most("1.55.0"));Áüæ''$ assert!(version.at_most("1.35.0"));Á(úüš((% assert!(!version.at_most("1.33.0"));ÁüÇ((% assert!(!version.at_most("1.13.2"));Á<ô(§d<‡)¥¦ ¥Î ¦ )
$)Ä<)Là)¾eÖeóe“gµ…Á…üÍ.,ü¥*;8 Returns `true` if `self` is exactly equal to `version`.Áå*úüí*LI If `version` is not equal to `self`, or if `version` is not a valid RustÁü¾+$~ç+úlï+b,ú\‰,±bü™,Æb½,úüÅ,4ù~þ,úü†-'$ assert!(version.exactly("1.35.0"));Á²-úüº-(% assert!(!version.exactly("1.33.0"));Áüç-(% assert!(!version.exactly("1.35.1"));Áü”.(% assert!(!version.exactly("1.13.2"));Á<Á.§d<Ô.§¨ §Î ¨ Ü.
$Ý.Ä<ã.L­/¾eÖeóe“gµ…Á…ìð/ÎÅcü”04—0©ª« ©Î ª c cˆ¢cµ
 `£c©% `àB¤GS
«ù$ ›0
$œ0± ¢0ܺ1ÎÀcüÜ14ß1¬­® ¬Î ­ c cˆ¢cµ
 `£c©% `àB¤GS
®ù$ ã1
$ä1± ê1\”"<˜"m× ¤,Dù !"#$ü¹ üŽFC Reads the release channel of the running compiler. If it cannot beÁüÙJG determined (see the [top-level documentation](crate)), returns `None`.Á¨úbÂú±büÚ use version_check::Channel;Áþú܆ match Channel::read() {Áü¦41 Some(c) => format!("The channel is: {}", c),Áüß>; None => format!("Failed to read the release channel.")Á˜d<­§d$ÀÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙù
t“¾eÖeóe“g–gÙ¾eÖeóe“gèh›˜Ùü² .üðKH Parse a Rust release channel from a Rust release version string (of theÁüÀKH form `major[.minor[.patch[-channel]]]`). Returns `None` if `version` isÁü$! not a valid Rust version string.Á¹úbÓú±büë•• úü— 30 let dev = Channel::parse("1.3.0-dev").unwrap();ÁÔÏ  assert!(dev.is_dev());Áî úüö <9 let nightly = Channel::parse("1.42.2-nightly").unwrap();Áü·