/*
- macros.h - definitions for a simple macro expander
-
- Copyright (c) 2010, 2014 Cisco and/or its affiliates.
-
- * Licensed under the Apache License, Version 2.0 (the "License");
+ * macros.h - definitions for a simple macro expander
+ *
+ * Copyright (c) 2010-2020 Cisco and/or its affiliates.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
{
uword *the_builtin_eval_hash;
uword *the_value_table_hash;
-} macro_main_t;
-
-int clib_macro_unset (macro_main_t * mm, char *name);
-int clib_macro_set_value (macro_main_t * mm, char *name, char *value);
-void clib_macro_add_builtin (macro_main_t * mm, char *name, void *eval_fn);
-i8 *clib_macro_get_value (macro_main_t * mm, char *name);
-i8 *clib_macro_eval (macro_main_t * mm, i8 * s, i32 complain);
-i8 *clib_macro_eval_dollar (macro_main_t * mm, i8 * s, i32 complain);
-void clib_macro_init (macro_main_t * mm);
-void clib_macro_free (macro_main_t * mm);
+} clib_macro_main_t;
+
+int clib_macro_unset (clib_macro_main_t * mm, char *name);
+int clib_macro_set_value (clib_macro_main_t * mm, char *name, char *value);
+void clib_macro_add_builtin (clib_macro_main_t * mm, char *name,
+ void *eval_fn);
+i8 *clib_macro_get_value (clib_macro_main_t * mm, char *name);
+i8 *clib_macro_eval (clib_macro_main_t * mm, i8 * s, i32 complain,
+ u16 level, u16 max_level);
+i8 *clib_macro_eval_dollar (clib_macro_main_t * mm, i8 * s, i32 complain);
+void clib_macro_init (clib_macro_main_t * mm);
+void clib_macro_free (clib_macro_main_t * mm);
+
+format_function_t format_clib_macro_main;
#endif /* included_macros_h */