Skip to content

Commit 12474e1

Browse files
committed
simplify the macro
1 parent 0b4c3ac commit 12474e1

File tree

2 files changed

+17
-188
lines changed

2 files changed

+17
-188
lines changed

tracing/src/macros.rs

Lines changed: 13 additions & 158 deletions
Original file line numberDiff line numberDiff line change
@@ -814,52 +814,6 @@ macro_rules! event {
814814
///
815815
#[macro_export]
816816
macro_rules! enabled {
817-
(target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* } )=> (
818-
if $crate::level_enabled!($lvl) {
819-
use $crate::__macro_support::Callsite as _;
820-
static CALLSITE: $crate::__macro_support::MacroCallsite = $crate::callsite2! {
821-
name: concat!(
822-
"enabled! ",
823-
file!(),
824-
":",
825-
line!()
826-
),
827-
kind: $crate::metadata::Kind::HINT,
828-
target: $target,
829-
level: $lvl,
830-
fields: $($fields)*
831-
};
832-
let interest = CALLSITE.interest();
833-
if !interest.is_never() && CALLSITE.is_enabled(interest) {
834-
let meta = CALLSITE.metadata();
835-
// event with explicit parent
836-
$crate::Event::child_of_enabled(
837-
$parent,
838-
meta,
839-
&$crate::valueset!(meta.fields(), $($fields)*)
840-
)
841-
} else {
842-
false
843-
}
844-
} else {
845-
false
846-
}
847-
);
848-
849-
(target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
850-
$crate::enabled!(
851-
target: $target,
852-
parent: $parent,
853-
$lvl,
854-
{ message = format_args!($($arg)+), $($fields)* }
855-
)
856-
);
857-
(target: $target:expr, parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => (
858-
$crate::enabled!(target: $target, parent: $parent, $lvl, { $($k).+ = $($fields)* })
859-
);
860-
(target: $target:expr, parent: $parent:expr, $lvl:expr, $($arg:tt)+) => (
861-
$crate::enabled!(target: $target, parent: $parent, $lvl, { $($arg)+ })
862-
);
863817
(target: $target:expr, $lvl:expr, { $($fields:tt)* } )=> ({
864818
if $crate::level_enabled!($lvl) {
865819
use $crate::__macro_support::Callsite as _;
@@ -878,144 +832,45 @@ macro_rules! enabled {
878832
let interest = CALLSITE.interest();
879833
if !interest.is_never() && CALLSITE.is_enabled(interest) {
880834
let meta = CALLSITE.metadata();
881-
// event with contextual parent
882-
$crate::Event::enabled(
883-
meta,
884-
&$crate::valueset!(meta.fields(), $($fields)*)
885-
)
835+
$crate::dispatch::get_default(|current| current.enabled(meta))
886836
} else {
887837
false
888838
}
889839
} else {
890840
false
891841
}
892842
});
893-
(target: $target:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
894-
$crate::enabled!(
895-
target: $target,
896-
$lvl,
897-
{ message = format_args!($($arg)+), $($fields)* }
898-
)
899-
);
900-
(target: $target:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => (
901-
$crate::enabled!(target: $target, $lvl, { $($k).+ = $($fields)* })
902-
);
903-
(target: $target:expr, $lvl:expr, $($arg:tt)+ ) => (
904-
$crate::enabled!(target: $target, $lvl, { $($arg)+ })
905-
);
906-
// This cases is added on top of how `event` works
843+
// Just target and level
907844
(target: $target:expr, $lvl:expr ) => (
908-
$crate::enabled!(target: $target, $lvl, { "hint_message" })
909-
);
910-
(parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
911-
$crate::enabled!(
912-
target: module_path!(),
913-
parent: $parent,
914-
$lvl,
915-
{ message = format_args!($($arg)+), $($fields)* }
916-
)
917-
);
918-
(parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($field:tt)*) => (
919-
$crate::enabled!(
920-
target: module_path!(),
921-
parent: $parent,
922-
$lvl,
923-
{ $($k).+ = $($field)*}
924-
)
925-
);
926-
(parent: $parent:expr, $lvl:expr, ?$($k:ident).+ = $($field:tt)*) => (
927-
$crate::enabled!(
928-
target: module_path!(),
929-
parent: $parent,
930-
$lvl,
931-
{ ?$($k).+ = $($field)*}
932-
)
845+
$crate::enabled!(target: $target, $lvl, { })
933846
);
934-
(parent: $parent:expr, $lvl:expr, %$($k:ident).+ = $($field:tt)*) => (
935-
$crate::enabled!(
936-
target: module_path!(),
937-
parent: $parent,
938-
$lvl,
939-
{ %$($k).+ = $($field)*}
940-
)
847+
848+
// These two cases handle fields with no values
849+
(target: $target:expr, $lvl:expr, $($k:ident).+) => (
850+
$crate::enabled!(target: $target, $lvl, $($k).+,)
941851
);
942-
(parent: $parent:expr, $lvl:expr, $($k:ident).+, $($field:tt)*) => (
852+
(target: $target:expr, $lvl:expr, $($k:ident).+, $($field:tt)*) => (
943853
$crate::enabled!(
944-
target: module_path!(),
945-
parent: $parent,
854+
target: $target,
946855
$lvl,
947856
{ $($k).+, $($field)*}
948857
)
949858
);
950-
(parent: $parent:expr, $lvl:expr, %$($k:ident).+, $($field:tt)*) => (
951-
$crate::enabled!(
952-
target: module_path!(),
953-
parent: $parent,
954-
$lvl,
955-
{ %$($k).+, $($field)*}
956-
)
957-
);
958-
(parent: $parent:expr, $lvl:expr, ?$($k:ident).+, $($field:tt)*) => (
959-
$crate::enabled!(
960-
target: module_path!(),
961-
parent: $parent,
962-
$lvl,
963-
{ ?$($k).+, $($field)*}
964-
)
965-
);
966-
(parent: $parent:expr, $lvl:expr, $($arg:tt)+ ) => (
967-
$crate::enabled!(target: module_path!(), parent: $parent, $lvl, { $($arg)+ })
968-
);
969-
( $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
970-
$crate::enabled!(
971-
target: module_path!(),
972-
$lvl,
973-
{ message = format_args!($($arg)+), $($fields)* }
974-
)
975-
);
976-
($lvl:expr, $($k:ident).+ = $($field:tt)*) => (
977-
$crate::enabled!(
978-
target: module_path!(),
979-
$lvl,
980-
{ $($k).+ = $($field)*}
981-
)
982-
);
859+
983860
($lvl:expr, $($k:ident).+, $($field:tt)*) => (
984861
$crate::enabled!(
985862
target: module_path!(),
986863
$lvl,
987864
{ $($k).+, $($field)*}
988865
)
989866
);
990-
($lvl:expr, ?$($k:ident).+, $($field:tt)*) => (
991-
$crate::enabled!(
992-
target: module_path!(),
993-
$lvl,
994-
{ ?$($k).+, $($field)*}
995-
)
996-
);
997-
($lvl:expr, %$($k:ident).+, $($field:tt)*) => (
998-
$crate::enabled!(
999-
target: module_path!(),
1000-
$lvl,
1001-
{ %$($k).+, $($field)*}
1002-
)
1003-
);
1004-
($lvl:expr, ?$($k:ident).+) => (
1005-
$crate::enabled!($lvl, ?$($k).+,)
1006-
);
1007-
($lvl:expr, %$($k:ident).+) => (
1008-
$crate::enabled!($lvl, %$($k).+,)
1009-
);
1010867
($lvl:expr, $($k:ident).+) => (
1011868
$crate::enabled!($lvl, $($k).+,)
1012869
);
1013-
( $lvl:expr, $($arg:tt)+ ) => (
1014-
$crate::enabled!(target: module_path!(), $lvl, { $($arg)+ })
1015-
);
1016-
// This cases is added on top of how `event` works
870+
871+
// Simplest `enabled!` case
1017872
( $lvl:expr ) => (
1018-
$crate::enabled!(target: module_path!(), $lvl, { "hint_message" })
873+
$crate::enabled!(target: module_path!(), $lvl, { })
1019874
);
1020875
}
1021876

tracing/tests/macros.rs

Lines changed: 4 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -337,40 +337,14 @@ fn event() {
337337
#[cfg_attr(target_arch = "wasm32", wasm_bindgen_test::wasm_bindgen_test)]
338338
#[test]
339339
fn enabled() {
340-
enabled!(Level::DEBUG, foo = ?3, bar.baz = %2, quux = false);
341-
enabled!(Level::DEBUG, foo = 3, bar.baz = 2, quux = false);
342-
enabled!(Level::DEBUG, foo = 3, bar.baz = 3,);
343-
enabled!(Level::DEBUG, "foo");
344-
enabled!(Level::DEBUG, "foo: {}", 3);
345-
enabled!(Level::INFO, foo = ?3, bar.baz = %2, quux = false, "hello world {:?}", 42);
346-
enabled!(
347-
Level::INFO,
348-
foo = 3,
349-
bar.baz = 2,
350-
quux = false,
351-
"hello world {:?}",
352-
42
353-
);
354-
enabled!(Level::INFO, foo = 3, bar.baz = 3, "hello world {:?}", 42,);
355-
enabled!(Level::DEBUG, { foo = 3, bar.baz = 80 }, "quux");
356-
enabled!(Level::DEBUG, { foo = 2, bar.baz = 79 }, "quux {:?}", true);
357-
enabled!(Level::DEBUG, { foo = 2, bar.baz = 79 }, "quux {:?}, {quux}", true, quux = false);
358-
enabled!(Level::DEBUG, { foo = ?2, bar.baz = %78 }, "quux");
359-
enabled!(target: "foo_events", Level::DEBUG, foo = 3, bar.baz = 2, quux = false);
360-
enabled!(target: "foo_events", Level::DEBUG, foo = 3, bar.baz = 3,);
361-
enabled!(target: "foo_events", Level::DEBUG, "foo");
362-
enabled!(target: "foo_events", Level::DEBUG, "foo: {}", 3);
363-
enabled!(target: "foo_events", Level::DEBUG, { foo = 3, bar.baz = 80 }, "quux");
364-
enabled!(target: "foo_events", Level::DEBUG, { foo = 2, bar.baz = 79 }, "quux {:?}", true);
365-
enabled!(target: "foo_events", Level::DEBUG, { foo = 2, bar.baz = 79 }, "quux {:?}, {quux}", true, quux = false);
366-
enabled!(target: "foo_events", Level::DEBUG, { foo = 2, bar.baz = 78, }, "quux");
367-
let foo = 1;
368-
enabled!(Level::DEBUG, ?foo);
369-
enabled!(Level::DEBUG, %foo);
340+
enabled!(Level::DEBUG, foo, bar.baz, quux,);
341+
enabled!(Level::DEBUG, message);
342+
enabled!(Level::INFO, foo, bar.baz, quux, messaged,);
370343
enabled!(Level::DEBUG, foo);
371344

372345
enabled!(Level::DEBUG);
373346
enabled!(target: "rando", Level::DEBUG);
347+
enabled!(target: "rando", Level::DEBUG, field);
374348
}
375349

376350
#[cfg_attr(target_arch = "wasm32", wasm_bindgen_test::wasm_bindgen_test)]

0 commit comments

Comments
 (0)