Files
boc/aamos-ledger-rust/target/debug/deps/liblog-d2ed4e8c2a586cf8.rmeta
T

343 lines
164 KiB
Plaintext
Raw Normal View History

rust
#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ÁÀ…|»À|Ñ{ŒÐ{
__log_keyÁLy»kvÁtäx
__log_valueÁ\~»õtó}
__log_value_svalÁ„°‰»kv_svalÁœ
__log_value_serdeÁŒÅŒ»kv_serdeÁ¤¡Œ
__log_value_errorÁŒø»kv_stdÁ”ÖserdeÁ,}»
serde_coreÁ´õ·}»õtž}a$Å~óµ Ì™~ܘ~®D‰óµ ÌÕ~ÜÔ~ AtomicUsizeÁ\Âóµ ÌžÜ KeyValuesÁLâí»õt¹í©
kv_supportÁTç»õtestsÁ,²£$§£ÀmacrosÁ
__logÁ
 log_enabledÁ

__log_enabledÁ
 __log_loggerÁ
à

¢
Ñ
  
LOGGERÁSTATEÁ
UNINITIALIZEDÁ INITIALIZINGÁ INITIALIZEDÁMAX_LOG_LEVEL_FILTERÁLOG_LEVEL_NAMESÁ SET_LOGGER_ERRORÁLEVEL_PARSE_ERRORÁ!#ï
%%þ(×**maxÁ*to_level_filterÁ*as_strÁ*ù// *increment_severityÁ*decrement_severityÁ46ï
88þ;× ==Â=to_levelÁ=â=ùBB =þ=
G'aÁGgetÁ  K
MOï
Q§RT«TbuilderÁTÀTmetadataÁTlevelÁTêT¹ [ Tmodule_path_staticÁTÌ^ T file_staticÁTšb«bæ bÀbb¤bêb¹ bÂbÌbæbšbbuildÁo>q«qq¤qêv«væ v¤vêvÐ|>LogÁ~enabledÁ~logÁ~flushÁ NopLoggerÁ
ÁÏÙˆ¥ˆÁˆÏˆÙ¥ÁÏÙ¥ÁÏÙ
set_max_levelÁset_max_level_racyÁ max_levelÁset_boxed_loggerÁš 
set_loggerÁœ set_logger_innerÁžset_logger_racyÁ¡×¤×loggerÁ§NOPÁ
__private_apiÁ©©©©©©©©©© ©
© © ©KeyÁ·«©ValueÁ¹«©sealedÁ»KVsÁ¼«¼into_kvsÁ©¿«¿ý©Â«Âý©ÅÁÅÏÅÙ©log_implÁÉ©Ï˫˜˩ÁÏ©locÁSTATIC_MAX_LEVELÁ
Ï
errorÁ
Õ
infoÁ

traceÁLevelÁÙErrorÁÚ
Ú ÙWarnÁÝ
ÙInfoÁß
Ùpá
ÙTraceÁã
æƒ !"ê#ìÖ$îï
%ð&ò×'ô§õù LevelFilterÁ÷OffÁø
÷ú
֟
÷ªþ
÷p
ւ
()ƒ*+,-Ö.ï
/0×1§ùMaybeStaticStrÁ«StaticÁ˜
˜ˆBorrowedÁ
ˆ2ž«3 «4¢«¢ƒ5¥«¥×RecordÁ¨«¨¨À¨¹ ¨Ì¨š6¯«¯ƒ7²«²×
RecordBuilderÁµ«µrecordÁ8¸«¸×MetadataÁ»«»¤»ê9¿«¿ƒ:«ÂÖ;Å«<Ç«Ç=Ê«Ê>Í«Íï
?ЫЧÒù@Ô«Ô×MetadataBuilderÁ׫×AÚ«ÚÖBÝ«Cß«ßDâ«âEå«åï
Fè«è§êùGì«ì×SetLoggerErrorÁï
ïˆHò×ParseLevelErrorÁô
ôˆI÷×JKúLüÖ© GlobalLoggerÁþ
©×"
"
$
$
'
)
)
)
-
.
2
3
5
5
7
7
:
<
<
<
@
A
E
F
I
J
K
L
L
M
N
N
O
P
P
Q
R
R
W
X
Y
Z
[
]
^
`
a
e
f
g
h
i
j
k
l
m
n
o
t
u
y
z
{
|














ˆ
Š
Š
Š



Œ














¢
¢
¢
¥
¥
¥
Æ
Æ
Æ
Ç
Ç
Ç
È
É
É
É
É
É
É
É
Ë
Ë
Ë
Ë
Ï
ç
ë
ë
í
ï
ï
ñ
ñ
ó
ó
ó
õ
õ

Š
Š
Œ
Ž
Ž







¤
§
§
§
±
´
´
´
º
º
º
Á
Ä
É
É
Ì
Ì
Ï
Ï
Ò
Ò
Ö
Ö
Ö
Ü
á
á
ä
ä
ç
ç
ê
ê
î
î
î
ó
ó
ó
ø
ø
ø
û
û
ý



ÛÙÚÛÜÝÞßàªáâpãäÇ6.s KØþ+Š þ+Ðìþ+µßþ+þ+þ+íßþ+þ+ºþ+¿cþ+šeþ+µßþ+÷øùÓúûüýþÿªpƒÇULH‘¸füíßþ+Õ-ïyþ+Äcþ+ÛÕ-ØÕ-Š Õ-ÐìÕ-µßÕ-Õ-Õ-íßÕ-Õ-ºÕ-¿cÕ-šeÕ-µßÕ-þ+íßÕ-þ+ïyÕ-ÄcÕ-Š ˜¨šˆœÃˆ_IZÁ?0´«Û’0Ø’0¿c’0˜¨šˆœÃˆ_IZÁ?0´8µß‰1‰1º‰1í߉1‰1še‰1ب¨Ÿª«À¬¹ ­Ì®šsXkH«¿c2¿cµµ·¡›žUÆH𻫳µµ·¡›žUÆHð»8Ø»»Â½¤¾êŽØ¦Õ’â©«ô3Ðìô3µßô3ô3ºô3íßô3ô3šeô3¿cô3×׉!ÙʶGcšÓl«Ðìˆ5µßˆ5ˆ5ºˆ5í߈5ˆ5šeˆ5¿cˆ5³×׉!ÙʶGcšÓl8~ƒå þ¼Ð24·~ 8¥~žBoxÁ¡ˆˆ¢ˆl }.xÏ¥çEçEèEGlobalÁ ¿±‡§í#~†J†JK‰Jµ 7ŠJphantomÁ7J¤7·0ØQdè¾7Ä7¿cïïð»"ñˆ `˜ œà¡AÄcÏ8¾Ï8¿côôõé"öˆ Áü¾ÃÐì›9µß›9›9›9Äc›9¾›9¼ «
 «“:«¼«¿cþþÿµ# {YX­)~¼:åÙ÷ æÙ÷¢¯¨¿»èÙ÷žéÙˆ÷Å»Ý×ùôêÙ!Ù÷4÷KÇ»ß×úôìÙ÷J»Ú×üôîÙ#Ù÷6÷OÍ»å×ðÙ÷MÊ»â×òÙ÷¥²¨¸µÔ»ì×òï÷ôþôÙ÷Qлè×%Ù8÷(Ù;÷¡ï¤ôoµ|׈
†JÅþ£ï¦ô¿
Â
ÛñØŠ #Ðìµß#5íß)º.¿c
"šeFïy"Äc ³~ ¾!¼¼?¼?¼?¼?°HÙœ
øOÇ    øIÿœ' „ª ÷'øJÉ) ”ö ÷'øK—ž( K¾žŒÃž ÷'øLãž( 
LŠŸŒŸ ÷'øM¯Ÿ)  Mן”ÜŸ ÷'øNýŸ) 
N¥ ”ª  ÷',ôŸOå  „ê  ÷' øP…¡!


P¥¡
”ª¡ ÷'
øQÇ¡    Qæ¡ Œë¡ ÷' øR‡¢    R¦¢ Œ«¢ ÷' øSÇ¢!


Sç¢
”ì¢ ÷'
”‰£ ÷ £ü©œöÒÕ-\Åœe oÊw$Ñ~tù¦S4Ø (˜¨šˆœÃˆ_IZÁ?0´~ ŽD§Ø œ(ŸJ3ñJ:AÌÏ‹ ïð&Ï81¬:8?Ôó ôõ&91¬:8?
 ~‚ƒ˜šœž §©ÒÙ»¨÷µ×ïðôõÀâ”|¬Ä,º|ÄÔFromStrÁ<Ï|ïyâ|×ç|¤,íì|ë Û ,™ ç \²k ù lâr
 d´vàLÑ|\釢„åŠÑŒý‚ Œ­‘ 
\ö}„Ä®Dƒ~¼ÀϪÓÕ$º4Õ×$ÕAÖ,ÁM×é,Š[ØüÓüÓ! A lightweight logging facade.ÁõúüùIF The `log` crate provides a single logging API that abstracts over theÁüÃMJ actual logging implementation. Libraries can use the logging API providedÁü‘MJ by this crate, and the consumer of those libraries can choose the loggingÁüß:7 implementation that is most suitable for its use case.ÁšúüžOL If no logging implementation is selected, the facade falls back to a "noop"ÁüîKH implementation that ignores all log messages. The overhead in this caseÁüº>; is very small - just an integer load, comparison and jump.ÁùúüýPM A log request consists of a _target_, a _level_, and a _body_. A target is aÁüÎPM string which defaults to the module path of the location of the log request,ÁüŸ OL though that default may be overridden. Logger implementations typically useÁüï C@ the target to filter requests based on some user configuration.Á³
ú
 # UsageÁÃ
úüÇ
RO The basic use of the log crate is through the five logging macros: [`error!`],Áüš 30 [`warn!`], [`info!`], [`debug!`] and [`trace!`]ÁüÎ ?< where `error!` represents the highest-priority log messagesÁüŽ IF and `trace!` the lowest. The log messages are filtered by configuringÁüØ <9 the log level to exclude messages with a lower priority.Áü•
IF Each of these macros accept format strings similarly to [`println!`].Áß
úã
úüç
" [`error!`]: ./macro.error.htmlÁüŠ  [`warn!`]: ./macro.warn.htmlÁü«  [`info!`]: ./macro.info.htmlÁüÌ" [`debug!`]: ./macro.debug.htmlÁüï" [`trace!`]: ./macro.trace.htmlÁü’IF [`println!`]: https://doc.rust-lang.org/stable/std/macro.println.htmlÁÜúüà]Z Avoid writing expressions with side-effects in log statements. They may not be evaluated.Á¾úœÂ ## In librariesÁÖúüÚGD Libraries should link only to the `log` crate, and use the providedÁü¢NK macros to log whatever information will be useful to downstream consumers.Áñú„õ
### ExamplesÁú ```Áü’.+ # #[derive(Debug)] pub struct Yak(String);ÁüÁ1. # impl Yak { fn shave(&mut self, _: u32) {} }Áüó52 # fn find_a_razor() -> Result<u32, u32> { Ok(1) }ÁÔ© use log::{info, warn};ÁÄúüÈ)& pub fn shave_the_yak(yak: &mut Yak) {ÁüòJG info!(target: "yak_events", "Commencing yak shaving for {yak:?}");Á½ú loop {ÁüÐ" match find_a_razor() {Áôó Ok(razor) => {Áü’41 info!("Razor located: {razor}");ÁüÇ%" yak.shave(razor);ÁÔí break;ÁŒˆìš Err(err) => {Áü¸GD warn!("Unable to locate a razor: {err}, retrying");ÁŒ€÷el’
L ”° # fn main() {}Áù`Ëú¬Ï ## In executablesÁåúüéUR Executables should choose a logging implementation and initialize it early in theÁü¿LI runtime of the program. Logging implementations will typically include aÁüŒ:7 function to do this. Any log messages generated beforeÁüÇ63 the implementation is initialized will be ignored.Áþúü‚A> The executable itself may use the `log` crate to log as well.ÁÄú ### WarningÁØúüÜ41 The logging system may only be initialized once.ÁúÌ• ## Structured loggingÁ¯úü³FC If you enable the `kv` feature you can associate structured valuesÁüúMJ with your log records. If we take the example from before, we can includeÁüÈDA some additional context besides what's in the formatted message:Áú<ù`Ü™ # use serde::Serialize;Áüµ96 # #[derive(Debug, Serialize)] pub struct Yak(String);Áüï1Âaü¡@= # fn find_a_razor() -> Result<u32, std::io::Error> { Ok(1) }Áüâ" # #[cfg(feature = "kv_serde")]ÁŒ… # fn main() {ÁÔ—»b²úü¶)ëbüàIF info!(target: "yak_events", yak:serde; "Commencing yak shaving");Áª úýcü½ "•dôà Àdüÿ 2/ info!(razor; "Razor located");Áü²!%¦eÔØ!ÔeŒó!÷eÜ…" Err(e) => {Áü¡"GD warn!(e:err; "Unable to locate a razor, retrying");ÁŒé"÷elû"”gL‰#ªg,“#¼g<™# # }Áü¡#'$ # #[cfg(not(feature = "kv_serde"))]Á”É#Êg<Ü#ù`ä#úüè#96 See the [`kv`] module documentation for more details.Á¢$úü¦$'$ # Available logging implementationsÁÎ$úüÒ$:7 In order to produce log output executables have to useÁü%74 a logger implementation compatible with the facade.ÁüÅ%<9 There are many available implementations to choose from,Áü‚&+( here are some of the most popular ones:Á®&úì²& * Simple minimal loggers:Á´Ð& * [env_logger]ÁŒç& * [colog]ÁÌù& * [simple_logger]Á¬“' * [simplelog]Áì©' * [pretty_env_logger]Á¬Ç' * [stderrlog]ÁÄÝ' * [flexi_logger]Á¼ö' * [call_logger]Á´Ž( * [std-logger]Áì¥( * [structured-logger]Á¬Ã( * [clang_log]ÁŒÙ( * [ftail]Áüë(&# * Complex configurable frameworks:Á”’) * [log4rs]Á¤¥) * [logforth]Á„º)
* [fern]Á¬Ë) * [spdlog-rs]Áüá)$! * Adaptors for other facilities:Á”†* * [syslog]Á¼™* * [slog-stdlog]Áü±*" * [systemd-journal-logger]Á¼Ô* * [android_log]ÁÔì* * [win_dbg_logger]Á¬‡+ * [db_logger]ÁÄ+ * [log-to-defmt]ÁÔ¶+ * [logcontrol-log]ÁüÑ+ * For WebAssembly binaries:Á¼ñ+ * [console_log]Áä‰, * For dynamic libraries:Áü¦,b_ * You may need to construct an FFI-safe wrapper over `log` to initialize in your librariesÁ„‰-
* Utilities:Áœš- * [log_err]Á´®- * [log-reload]ÁäÅ- * [alterable_logger]Áâ-úÜæ- # Implementing a LoggerÁ.úü†.PM Loggers implement the [`Log`] trait. Here's a very basic example that simplyÁü×.KH logs all messages at the [`Error`][level_link], [`Warn`][level_link] orÁü£/*' [`Info`][level_link] levels to stdout:ÁÎ/ú<Ò/ù`üÚ/'$ use log::{Record, Level, Metadata};Á0úĆ0 struct SimpleLogger;ÁŸ0úü£0$! impl log::Log for SimpleLogger {ÁüÈ085 fn enabled(&self, metadata: &Metadata) -> bool {Áü1+( metadata.level() <= Level::InfoÁL­1ªg·1úü»1(% fn log(&self, record: &Record) {Áüä10- if self.enabled(
 ~‚ƒ˜šœž §©ÒÙ»¨÷µ×ïðôõÀ.&â>&¬ÄR&ÄR&ÔñLz&ïy&× &¤,í³&ë Û Æ& ç Õ& ù ä&
 ó&à''¢!'Ñ1' A' 
Q'„Ä®e'¼ÀÏy'ÓÕ‰'Õ×™'Ö©'×é¹'Ø.&.&.&D|>&Tµ|R&ŒÅ|z&Ü|&& & &³&³&T€}4„}”Œ(|üÆ& Ÿ ´%  Š8Æ4—& , Ÿ8Æ4 & ¦8$ «8ê4­& ³, µ8ê& ¼8$ Á, Ã8lvlÁÄ& Ç8$ Ì, Î Ï ú
, Ð8keyÁÑ& Ô8¯Õ, Ø Ù æ& Ú, Û8captureÁ& ã8¯ä- ç, é ê ø ë, í8»& ó8- ù$ û ü% ý, ÿ  ˆ, 8argÁ& 8¯ *Œ  ü   û 8š8ËÉž ¢, ¤8ËÉ¥% ¨8²8Ëɵ¹, ¼8'Â8¦„ÄÕ8ËÉØÜ, ß8'å8¯ ð ñ ó õ , 8,'8Þl‰'8Ϙ  ê , ­8Æ$ ´, Æ8'Ì8Þ'Û8ë è é ò, ê ë ð, ì8ðËí ñ$ ó8ËÉ$ ˆ š  è, œ8ê4$ £, ¥8'«8Þl­'º8¹  Ç È É$ Ê, Ì8'Ò8Þ'á8œã æ ç$ é û ü Ó , ý þ Ð  ÿ Ï 
, 8, '8àLˆ    , 8Ê$ ˜ , š 8, '  8 ­  ®  Î  , ¯ 8ʰ , ´  µ  ¿ & , · 8ÏÊ<¸ 
À  Â , Ä  Å  Ì , Æ 8»
Í $ Ñ  Ò 8Õ  Ø  Ù  Û 8 Ú $ Ü % ë % ý  Û! ž"8Æ4Ü!& â!, ä!8Æ4å!& ë!8$ì!$ ð!8ê4ò!& ø!, ú!8ê4û!& "8$"$ †", ˆ"8Ëɉ"& Œ"8$"$ ", “" ”" œ", •"8ðË"& ™"8¯š" "* " £" ±% ¤" °%8®"8Ëɲ" ¶", ¸"8Ëɹ"% ¼"8Æ"8ËÉÉ"Í", Ð"8,Ñ"'Ö"8¦„Ø"é"8ËÉì"ð", ó"8,ô"'ù"8¯Lû" „# …# ‡# ª%, •#8,#'#8Þl#'ª#8Ϭ# ¯# Ÿ%, Á#8Æ4Â#$ È#, Ú#8,Û#'à#8Þlâ#'ï#8ë\ñ# ü# ý# †$, þ# ÿ# „$, €$8ðË$ …$$ ‡$8ËÉ™$$ œ$ ®$ ¯$ ü$, °$8ê4±$$ ·$, ¹$8,º$'¿$8ÞlÁ$'Î$8¹ \Ð$ Û$ Ü$ Ý$$ Þ$, à$8,á$'æ$8Þlè$'õ$8œ÷$ ú$ û$$ ý$ % %$ %%  %% ²%Ä¥kü‚cMJ Determines if a message logged at the specified level in that module willÁtÐc be logged.ÁßcúüãcOL This can be used to avoid expensive computation of log message arguments ifÁü³d(% the message would be ignored anyway.ÁÜdútàd # ExamplesÁïdú<ódù`üûd)& use log::{debug, log_enabled, Level};Á¥eúü©e$! # struct Data { x: u32, y: u32 }ÁüÎe96 # fn expensive_call() -> Data { Data { x: 0, y: 0 } }Áüˆf74 # let my_logger = log::__private_api::GlobalLogger;ÁüÀf# if log_enabled!(Level::Debug) {Áüäf$! let data = expensive_call();Áü‰g>; debug!("expensive debug data: {} {}", data.x, data.y);Á,Èg¼gÎgúüÒg52 if log_enabled!(target: "Global", Level::Debug) {Áüˆh# let data = expensive_call();Áü¬hOL debug!(target: "Global", "expensive debug data: {} {}", data.x, data.y);Á,üh¼giúü†i63 if log_enabled!(logger: my_logger, Level::Debug) {Áü½i#©âüáiOÖâ,±j¼g<·jù`¿júüÃjQN This macro accepts the same `target` and `logger` arguments as [`macro@log`].Á(|•kÕ& ¾k ³r l Ãl8Æ4Žl& ”l, l8Æ4—l& l8$žl$ ¢l8ê4¤l& ªl, ¬l8ê4­l& ³l8$´l$ ¸l, ºl8ËÉ»l& ¾l8$¿l*Ål Èl ®m Él ­m, Ól8,Ôl'Ùl8ù lÛl èl él §m8Æ4êl& ðl, òl8,ól'øl8 dúl †m ‡m m, ˆm8Æ4‰m$ m8ê4m& ˜m, šm8ê4m$ ¡m, £m8Ëɤm% ¯m êm Šn 8Æ4ëm& ñm, óm8Æ4ôm& úm8$ûm$ ÿm, n8ËÉn& …n8$†n*Œn n “o n o, šn8,n' n8
,Œ•üÞ•&þ+$ïß$ü™–C\œ– þ+ Õ-Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ¿ßÀßÁßLessÁÂßÃßÄß~Å߯ßÇßGreaterÁÈßåºÝÈnûê7# ¨–#
$$©–¹
,¯–´Ÿ—þ+&'ðyñy'D¼—Á—%%›9üÜ—4Dß— Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
þ+þ+ðy% ï—%
'¤,è—ܬšþ+)Åc)üΚ6Ñšˆ þ+ ˆ c cˆ¢cµ
 `£cbufÁ `àB¤GS
Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¬:ŸÈŸÈ È éBL( Õš(
)$Öš×ÜšT¯›þ++,-./23üÀ›(TÛ¼?Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙþ+**
+À Λ¬žžüà+( Returns the most verbose logging level.Á¥žþ+**
,ü¢Ÿ,üÖž96 Converts the `Level` to the equivalent `LevelFilter`.Á|©ŸŠ Šþ+Õ-* ¹Ÿ*
-$ºŸü¢¡$ü• 52 Returns the string representation of the `Level`.ÁÏ úü× FC This returns the same string as the `fmt::Display` implementation.Á4©¡ þ+Ÿ‡* °¡*
.$±¡üƒ¥+üü¡1. Iterate through all supported logging levels.Á²¢úüº¢KH The order of iteration is from more severe to less severe log messages.ÁŠ£út’£ŽÞ¥£ú<­£ù`œ¹£ use log::Level;ÁÑ£úüÙ£# let mut levels = Level::iter();Á¤úü‰¤2/ assert_eq!(Some(Level::Error), levels.next());ÁüÀ¤2/ assert_eq!(Some(Level::Trace), levels.last());Á<÷¤ù`$Š¥0**
/Ð[”¥//â­â­MapÁå­ùæ­±Å@Iœóë ¶¥££¹ƒ£¹„£þ-'ºˆÉ¬g¼?1¼?þ+¬:Í켚±ùM¼š¬™¥¼šúMþ+\¢¥ù›Ûˆœ"™œ/Ä¥/<closure_kind>Á1<closure_signature>Á1<upvars>Á11/á›ü±ª(üñ¥/, Get the next-highest `Level` from this one.Á¥¦úü­¦`] If the current `Level` is at the highest level, the returned `Level` will be the same as theÁ„’§
current one.Á§§út¯§ŽÞ§ú<ʧù`œÖ§À—î§úäö§ let level = Level::Info;Á—¨úüŸ¨96 assert_eq!(Level::Debug, level.increment_severity());ÁüݨNK assert_eq!(Level::Trace, level.increment_severity().increment_severity());Áü°©pm assert_eq!(Level::Trace, level.increment_severity().increment_severity().increment_severity()); // max levelÁ<¥ªù`”¸ªŒ Œþ+þ+* ˪*
2$̪ü°(üÄ«.+ Get the next-lowest `Level` from this one.Á÷«úüÿ«_\ If the current `Level` is at the lowest level, the returned `Level` will be the same as theÁ„ã¬õø¬út€­ŽÞ“­ú<›­ù`œ§­À—¿­úäÇ­ßžè­úüð­85 assert_eq!(Level::Warn, level.decrement_severity());Áü­®NK assert_eq!(Level::Error, level.decrement_severity().decrement_severity());Áü€¯pm assert_eq!(Level::Error, level.decrement_severity().decrement_severity().decrement_severity()); // min levelÁ<õ¯ù`”ˆ° þ+þ+* ›°*
3$œ°ü÷%Õ-5·ß5üý·#€¸Ž ŽÕ- þ+4 ƒ¸4
5$„¸¹
,Џüø&Õ-7ïß7üþ¸=\¹ Õ- þ+À‹6 ¹6
7$޹¹
,”¹äþ¹Õ-9:ðyñy:D¡º¦º88›9üÁº:Dĺ Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Õ-Õ-ðy8 Ôº8
:¤,ͺü½!Õ-<Åc<üŽ6Ƚ Õ-  c cˆ¢cµ
 `£cõŽ `àB¤GS
œ; ̽;
<$ͽ×Ó½„¦¾Õ->?@ABEFü½¾.TÀ¾¼?Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÕ-==
>À ˾ÜïÁüªÁ2/ Returns the most verbose logging level filter.ÁöÁÕ-==
?ü´Ã'ü³Â.+ Converts `self` to the equivalent `Level`.ÁæÂúüîÂ30 Returns `None` if `self` is `LevelFilter::Off`.ÁD»Ã Õ-‚’= ÄÃ=
@$ÅÃü¦Å$ü“Ä;8 Returns the string representation of the `LevelFilter`.ÁÓÄúüÛÄFÇ”4­Å Õ-Ÿ‡= ´Å=
A$µÅü–É+ü€Æ30 Iterate through all supported filtering levels.Á¸ÆúüÀÆB? The order of iteration is from less to more verbose filtering.Á‡ÇútÇŽÞ¢Çú<ªÇù`̶Ç use log::LevelFilter;ÁÔÇúüÜÇ)& let mut levels = LevelFilter::iter();ÁŠÈúü’È63 assert_eq!(Some(LevelFilter::Off), levels.next());ÁüÍÈ85 assert_eq!(Some(LevelFilter::Trace), levels.last());Á<ŠÉù`$ÉC==
BÐc§ÉBBâ­â­ò™å­ùæ­±Å@Iœóë ¶¥¦›Dì›Õ-¬:Íì·wùM·¬¬É·úMÕ-\µÉ„¸¡“¸"¤¸B×ÉBß›D÷›D”œDDBí·üÏ(ü„Ê52 Get the next-highest `LevelFilter` from this one.Á¾ÊúüÆÊ`] If the current `LevelFilter` is at the highest level, the returned `LevelFilter` will be theÁä«Ë same as the current one.ÁÌËútÔËŽÞçËú<ïËù`ÌûËï³™Ìúü¡Ì)& let level_filter = LevelFilter::Info;ÁÏÌúü×ÌFC assert_eq!(LevelFilter::Debug, level_filter.increment_severity());Áü¢Í[X assert_eq!(LevelFilter::Trace, level_filter.increment_severity().increment_severity());Áü‚Î}z assert_eq!(LevelFilter::Trace, level_filter.increment_severity().increment_severity().increment_severity()); // max levelÁ<„Ïù`”—Ϙ ˜Õ-Õ-= ªÏ=
E$«Ïü²Ö(ü£Ð41 Get the next-lowest `LevelFilter` from this one.ÁÜÐúüäÐ_\ If the current `LevelFilter` is at the lowest level, the returned `LevelFilter` will be theÁäÈÑà¹éÑútñÑŽÞ„Òú<ŒÒù`̘Òï³¶Òúü¾Ò)׺ìÒúüôÒEB assert_eq!(LevelFilter::Warn, level_filter.decrement_severity());Áü¾Ó[X assert_eq!(LevelFilter::Error, level_filter.decrement_severity().decrement_severity());ÁüžÔnk assert_eq!(LevelFilter::Off, level_filter.decrement_severity().decrement_severity().decrement_severity());Áü‘Õ assert_eq!(LevelFilter::Off, level_filter.decrement_severity().decrement_severity().decrement_severity().decrement_severity()); // min levelÁ<¦Öù`”¹Ö Õ-Õ-= ÌÖ=
F$ÍÖܽØ«HH’0IÂØÄíØðØš š’0“:G ôØG
I«$õØô‹Ú8‰1ü®Ú%8œœ‰1L·ßLüÚÚ"ÝÚž ‰1 ž‰1K àÚK
L8$áÚ¹
,çÚüªÛ8ŸŸ‰1N»NüÐÛ2ÓÛ ¡  ‰1 ¡‰1…ŒM ×ÛM
N8$ØÛ¹
,ÞÛü²Ü&8¢¢‰1PïßPüßÜB\âÜ£¤ £‰1 ¤‰1À‹O îÜO
P8$ïܹ
,õÜüËÝ+8¥¥‰1R›eRüýÝ3$€Þ¦§ ¦‰1 §¬:QSS ›ÞQÍìãË …Þ¢eãËŒˆÞ
R8ãË$œÞº,¢Þ46œˆð«UU2VWXYZ[]^`aðüÏð%Ô¢ð Returns a new builder.Á<Öð3TT
V«üÇñ)¬Ÿñ The message body.Á$Îñ¨ ¨‘2 ¨äÈäÈ ArgumentsÁæÈtemplateÁ `çÈÀ `üöMõô]Td«T ÓñT