summaryrefslogtreecommitdiffstats
path: root/extras/emacs/elog-enum-skel.el
diff options
context:
space:
mode:
Diffstat (limited to 'extras/emacs/elog-enum-skel.el')
-rw-r--r--extras/emacs/elog-enum-skel.el35
1 files changed, 35 insertions, 0 deletions
diff --git a/extras/emacs/elog-enum-skel.el b/extras/emacs/elog-enum-skel.el
new file mode 100644
index 00000000000..836ce86a9d9
--- /dev/null
+++ b/extras/emacs/elog-enum-skel.el
@@ -0,0 +1,35 @@
+;;; elog-enum-skel.el - enum elog skeleton
+
+(require 'skeleton)
+
+(define-skeleton skel-elog-enum
+"Insert a skeleton enum event definition"
+nil
+'(setq function-name (skeleton-read "Function: "))
+'(setq label (skeleton-read "Label: "))
+
+"
+
+/* $$$ May or may not be needed */
+#include <vlib/vlib.h>
+#include <vppinfra/elog.h>
+
+static inline void " function-name " (u8 which)
+{
+ ELOG_TYPE_DECLARE (e) =
+ {
+ .format = \"" label ": %s\",
+ .format_args = \"t1\",
+ .n_enum_strings = 2,
+ .enum_strings =
+ {
+ \"string 1\",
+ \"string 2\",
+ },
+ };
+ struct { u8 which;} * ed;
+ ed = ELOG_DATA (&vlib_global_main.elog_main, e);
+ ed->which = which;
+}
+
+")