36 lines
568 B
C++
36 lines
568 B
C++
/* examples ex3/ex3.cpp */
|
|
|
|
#include "nestlog/scope.hpp"
|
|
|
|
using namespace xo;
|
|
|
|
int
|
|
fib(int n) {
|
|
scope log(XO_ENTER0(), xtag("n", n));
|
|
|
|
int retval = 1;
|
|
|
|
if (n >= 2) {
|
|
retval = fib(n - 1) + fib(n - 2);
|
|
log(xtag("n", n));
|
|
}
|
|
|
|
log.end_scope("<-", xtag("retval", retval));
|
|
|
|
return retval;
|
|
}
|
|
|
|
int
|
|
main(int argc, char ** argv) {
|
|
log_config::style = FS_Pretty;
|
|
log_config::indent_width = 4;
|
|
|
|
int n = 4;
|
|
|
|
scope log(XO_ENTER0(), ":n ", 4);
|
|
|
|
int fn = fib(n);
|
|
|
|
log(xtag("n", n));
|
|
log("<-", xtag("fib(n)", fn));
|
|
}
|