blob: de8f2c49fc1ffb655325be7a3347b34fd751c444 [file] [log] [blame]
Ed Warnickecb9cada2015-12-08 15:45:58 -07001/*
2 Copyright (c) 2014 Cisco and/or its affiliates.
3
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at:
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15*/
16
17#include <vppinfra/macros.h>
18
19macro_main_t macro_main;
20
Dave Barachc3799992016-08-15 11:12:27 -040021int
22test_macros_main (unformat_input_t * input)
Ed Warnickecb9cada2015-12-08 15:45:58 -070023{
Dave Barachc3799992016-08-15 11:12:27 -040024 macro_main_t *mm = &macro_main;
Ed Warnickecb9cada2015-12-08 15:45:58 -070025
Dave Barachc3799992016-08-15 11:12:27 -040026 clib_macro_init (mm);
Ed Warnickecb9cada2015-12-08 15:45:58 -070027
Dave Barachc3799992016-08-15 11:12:27 -040028 fformat (stdout, "hostname: %s\n",
29 clib_macro_eval_dollar (mm, "hostname", 1 /* complain */ ));
Ed Warnickecb9cada2015-12-08 15:45:58 -070030
31 clib_macro_set_value (mm, "foo", "this is foo which contains $(bar)");
32 clib_macro_set_value (mm, "bar", "bar");
33
34 fformat (stdout, "evaluate: %s\n",
Dave Barachc3799992016-08-15 11:12:27 -040035 clib_macro_eval (mm, "returns '$(foo)'", 1 /* complain */ ));
Ed Warnickecb9cada2015-12-08 15:45:58 -070036
37 clib_macro_free (mm);
38
39 return 0;
40}
41
42#ifdef CLIB_UNIX
Dave Barachc3799992016-08-15 11:12:27 -040043int
44main (int argc, char *argv[])
Ed Warnickecb9cada2015-12-08 15:45:58 -070045{
46 unformat_input_t i;
47 int ret;
48
49 unformat_init_command_line (&i, argv);
50 ret = test_macros_main (&i);
51 unformat_free (&i);
52
53 return ret;
54}
55#endif /* CLIB_UNIX */
56
Dave Barachc3799992016-08-15 11:12:27 -040057
58/*
59 * fd.io coding-style-patch-verification: ON
60 *
61 * Local Variables:
62 * eval: (c-set-style "gnu")
63 * End:
64 */