tracing: Combine enum and arrays into single macro in filter code
Instead of having a separate enum that is the index into another array, like
a string array, make a single macro that combines them into a single list,
and then the two can not get out of sync. This makes it easier to add and
remove items.
The macro trick is:
 #define DOGS				\
  C( JACK,     "Jack Russell")		\
  C( ITALIAN,  "Italian Greyhound")	\
  C( GERMAN,   "German Shepherd")
 #undef C
 #define C(a, b) a
 enum { DOGS };
 #undef C
 #define C(a, b) b
 static char dogs[] = { DOGS };
Reviewed-by:  Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by:
Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by:  Steven Rostedt (VMware) <rostedt@goodmis.org>
Steven Rostedt (VMware) <rostedt@goodmis.org>
Loading
Please register or sign in to comment
