1*8e33eff8Schristos #ifndef JEMALLOC_INTERNAL_STATS_H 2*8e33eff8Schristos #define JEMALLOC_INTERNAL_STATS_H 3*8e33eff8Schristos 4*8e33eff8Schristos /* OPTION(opt, var_name, default, set_value_to) */ 5*8e33eff8Schristos #define STATS_PRINT_OPTIONS \ 6*8e33eff8Schristos OPTION('J', json, false, true) \ 7*8e33eff8Schristos OPTION('g', general, true, false) \ 8*8e33eff8Schristos OPTION('m', merged, config_stats, false) \ 9*8e33eff8Schristos OPTION('d', destroyed, config_stats, false) \ 10*8e33eff8Schristos OPTION('a', unmerged, config_stats, false) \ 11*8e33eff8Schristos OPTION('b', bins, true, false) \ 12*8e33eff8Schristos OPTION('l', large, true, false) \ 13*8e33eff8Schristos OPTION('x', mutex, true, false) 14*8e33eff8Schristos 15*8e33eff8Schristos enum { 16*8e33eff8Schristos #define OPTION(o, v, d, s) stats_print_option_num_##v, 17*8e33eff8Schristos STATS_PRINT_OPTIONS 18*8e33eff8Schristos #undef OPTION 19*8e33eff8Schristos stats_print_tot_num_options 20*8e33eff8Schristos }; 21*8e33eff8Schristos 22*8e33eff8Schristos /* Options for stats_print. */ 23*8e33eff8Schristos extern bool opt_stats_print; 24*8e33eff8Schristos extern char opt_stats_print_opts[stats_print_tot_num_options+1]; 25*8e33eff8Schristos 26*8e33eff8Schristos /* Implements je_malloc_stats_print. */ 27*8e33eff8Schristos void stats_print(void (*write_cb)(void *, const char *), void *cbopaque, 28*8e33eff8Schristos const char *opts); 29*8e33eff8Schristos 30*8e33eff8Schristos #endif /* JEMALLOC_INTERNAL_STATS_H */ 31