diff --git a/CMakeLists.txt b/CMakeLists.txt index 97d9fd7..507a7f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 3.10 FATAL_ERROR) project("clutchlog" - VERSION 0.14 + VERSION 0.15 DESCRIPTION "A logging system which targets versatile debugging") enable_language(CXX) # C++ diff --git a/docs/annotated.html b/docs/annotated.html index 02b8c9e..c9f4a52 100644 --- a/docs/annotated.html +++ b/docs/annotated.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/classclutchlog-members.html b/docs/classclutchlog-members.html index b3230cf..fe7c2cb 100644 --- a/docs/classclutchlog-members.html +++ b/docs/classclutchlog-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
@@ -91,8 +91,10 @@ $(document).ready(function(){initNavTree('classclutchlog.html',''); initResizabl

This is the complete list of members for clutchlog, including all inherited members.

- - + + + + @@ -113,41 +115,44 @@ $(document).ready(function(){initNavTree('classclutchlog.html',''); initResizabl - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + +
_format_dumpclutchlogprotected
_format_logclutchlogprotected
_filehash_fmtsclutchlogprotected
_format_dumpclutchlogprotected
_format_logclutchlogprotected
_funchash_fmtsclutchlogprotected
_in_fileclutchlogprotected
_in_funcclutchlogprotected
_in_lineclutchlogprotected
default_hfill_maxclutchloginlineprotectedstatic
default_hfill_minclutchloginlineprotectedstatic
default_strip_callsclutchloginlineprotectedstatic
dump(const level &stage, const In container_begin, const In container_end, const std::string &file, const std::string &func, size_t line, const std::string &filename_template="dump_{n}.dat", const std::string sep=dump_default_sep) constclutchloginline
dump_default_formatclutchloginlineprotectedstatic
dump_default_sepclutchloginlineprotectedstatic
error enum value (defined in clutchlog)clutchlog
file(std::string file)clutchloginline
depth_styles(std::vector< fmt > styles)clutchloginline
dump(const level &stage, const In container_begin, const In container_end, const std::string &file, const std::string &func, size_t line, const std::string &filename_template="dump_{n}.dat", const std::string sep=dump_default_sep) constclutchloginline
dump_default_formatclutchloginlineprotectedstatic
dump_default_sepclutchloginlineprotectedstatic
error enum value (defined in clutchlog)clutchlog
file(std::string file)clutchloginline
filehash_styles(std::vector< fmt > styles)clutchloginline
format(const std::string &format)clutchloginline
format() constclutchloginline
format(std::string row, const std::string &what, const level &stage, const std::string &file, const std::string &func, const size_t line) constclutchloginline
format_comment(const std::string &format)clutchloginline
format_comment() constclutchloginline
func(std::string func)clutchloginline
info enum value (defined in clutchlog)clutchlog
level enum nameclutchlog
level_of(const std::string name)clutchloginline
levels() constclutchloginline
line(std::string line)clutchloginline
locate(const level &stage, const std::string &file, const std::string &func, const size_t line) constclutchloginline
location(const std::string &in_file, const std::string &in_function=".*", const std::string &in_line=".*")clutchloginline
log(const level &stage, const std::string &what, const std::string &file, const std::string &func, size_t line) constclutchloginline
logger()clutchloginlinestatic
note enum value (defined in clutchlog)clutchlog
operator=(clutchlog const &)=delete (defined in clutchlog)clutchlog
out(std::ostream &out)clutchloginline
out()clutchloginline
progress enum value (defined in clutchlog)clutchlog
replace(const std::string &form, const std::string &mark, const std::string &tag) constclutchloginline
replace(const std::string &form, const std::string &mark, const size_t tag) constclutchloginline
style(level stage, FMT... styles)clutchloginline
style(level stage, fmt style)clutchloginline
style(level stage) constclutchloginline
threshold(level l)clutchloginline
threshold(const std::string &l)clutchloginline
threshold() constclutchloginline
warning enum value (defined in clutchlog)clutchlog
xdebug enum value (defined in clutchlog)clutchlog
funchash_styles(std::vector< fmt > styles)clutchloginline
info enum value (defined in clutchlog)clutchlog
level enum nameclutchlog
level_of(const std::string name)clutchloginline
levels() constclutchloginline
line(std::string line)clutchloginline
locate(const level &stage, const std::string &file, const std::string &func, const size_t line) constclutchloginline
location(const std::string &in_file, const std::string &in_function=".*", const std::string &in_line=".*")clutchloginline
log(const level &stage, const std::string &what, const std::string &file, const std::string &func, size_t line) constclutchloginline
logger()clutchloginlinestatic
note enum value (defined in clutchlog)clutchlog
operator=(clutchlog const &)=delete (defined in clutchlog)clutchlog
out(std::ostream &out)clutchloginline
out()clutchloginline
progress enum value (defined in clutchlog)clutchlog
replace(const std::string &form, const std::string &mark, const std::string &tag) constclutchloginline
replace(const std::string &form, const std::string &mark, const size_t tag) constclutchloginline
style(level stage, FMT... styles)clutchloginline
style(level stage, fmt style)clutchloginline
style(level stage) constclutchloginline
threshold(level l)clutchloginline
threshold(const std::string &l)clutchloginline
threshold() constclutchloginline
warning enum value (defined in clutchlog)clutchlog
xdebug enum value (defined in clutchlog)clutchlog
diff --git a/docs/classclutchlog.html b/docs/classclutchlog.html index a487fcc..299f623 100644 --- a/docs/classclutchlog.html +++ b/docs/classclutchlog.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
@@ -129,6 +129,15 @@ void out ()  Get the output stream on which to print.
  +void filehash_styles (std::vector< fmt > styles) + Set the candidate styles for value-dependant file name formatting. More...
+  +void funchash_styles (std::vector< fmt > styles) + Set the candidate styles for value-dependant function name formatting. More...
+  +void depth_styles (std::vector< fmt > styles) + Set the styles for value-dependant depth formatting. More...
void threshold (level l)  Set the log level (below which logs are not printed) with an identifier.
@@ -317,6 +326,14 @@ std::regex _in_line  Current line location filter.
  + +std::vector< fmt_filehash_fmts + List of candidate format objects for value-dependant file name styling.
+  + +std::vector< fmt_funchash_fmts + List of candidate format objects for value-dependant function name styling.
 clutchlog (clutchlog const &)=delete   @@ -356,6 +373,106 @@ void operator= (

Definition at line 296 of file clutchlog.h.

+ + + +

◆ filehash_styles()

+ +
+
+ + + + + +
+ + + + + + + + +
void clutchlog::filehash_styles (std::vector< fmtstyles)
+
+inline
+
+ +

Set the candidate styles for value-dependant file name formatting.

+

Style will be chosen based on the hash value of the filename among the candidate ones.

+

See the {filehash_fmt} template tag.

+ +

Definition at line 1028 of file clutchlog.h.

+ +

References _filehash_fmts.

+ +
+
+ +

◆ funchash_styles()

+ +
+
+ + + + + +
+ + + + + + + + +
void clutchlog::funchash_styles (std::vector< fmtstyles)
+
+inline
+
+ +

Set the candidate styles for value-dependant function name formatting.

+

Style will be chosen based on the hash value of the filename among the candidate ones.

+

See the {funchash_fmt} template tag.

+ +

Definition at line 1036 of file clutchlog.h.

+ +

References _funchash_fmts.

+ +
+
+ +

◆ depth_styles()

+ +
+
+ + + + + +
+ + + + + + + + +
void clutchlog::depth_styles (std::vector< fmtstyles)
+
+inline
+
+ +

Set the styles for value-dependant depth formatting.

+

The given list should be ordered, styles will be applied for the corresponding depth level. If the actual depth is larger than the number of styles, the last one is used.

+

See the {depth_fmt} template tag.

+ +

Definition at line 1045 of file clutchlog.h.

+
@@ -385,11 +502,11 @@ void operator= (Return the log level tag corresponding to the given pre-configured name.

Note
This is case sensitive, see the pre-configured _level_word.
-

Definition at line 1014 of file clutchlog.h.

+

Definition at line 1060 of file clutchlog.h.

-

References _word_level.

+

References _word_level.

-

Referenced by threshold().

+

Referenced by threshold().

@@ -432,11 +549,11 @@ template<class ... FMT>

Set the style (color and typo) of the given log level.

This version accept style arguments as if they were passed to clutchlog::fmt.

-

Definition at line 1048 of file clutchlog.h.

+

Definition at line 1094 of file clutchlog.h.

-

References style().

+

References style().

-

Referenced by style().

+

Referenced by style().

@@ -484,9 +601,9 @@ template<class ... FMT>
log.replace("{greet} {world}", "\\{greet\\}", "hello");
// returns "hello {world}"
-

Definition at line 1137 of file clutchlog.h.

+

Definition at line 1183 of file clutchlog.h.

-

Referenced by dump(), format(), and replace().

+

Referenced by dump(), format(), and replace().

@@ -495,7 +612,7 @@ template<class ... FMT> -
clutchlog::log
void log(const level &stage, const std::string &what, const std::string &file, const std::string &func, size_t line) const
Print a log message IF the location matches the given one.
Definition: clutchlog.h:1301
+
clutchlog::log
void log(const level &stage, const std::string &what, const std::string &file, const std::string &func, size_t line) const
Print a log message IF the location matches the given one.
Definition: clutchlog.h:1356
clutchlog::logger
static clutchlog & logger()
Get the logger instance.
Definition: clutchlog.h:296
diff --git a/docs/classclutchlog_1_1fmt.html b/docs/classclutchlog_1_1fmt.html index 11c15d1..b1bb17c 100644 --- a/docs/classclutchlog_1_1fmt.html +++ b/docs/classclutchlog_1_1fmt.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
@@ -86,6 +86,7 @@ $(document).ready(function(){initNavTree('classclutchlog_1_1fmt.html',''); initR
Public Member Functions | +Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | @@ -223,6 +224,12 @@ std::string fmt (const std::string &f, typo s=typo::none)   + + + +

+Static Public Member Functions

+static fmt hash (const std::string &str, const std::vector< fmt > domain={})
 
diff --git a/docs/clutchlog_8h.html b/docs/clutchlog_8h.html index 832e062..afb9e50 100644 --- a/docs/clutchlog_8h.html +++ b/docs/clutchlog_8h.html @@ -28,7 +28,7 @@ diff --git a/docs/clutchlog_8h__dep__incl.map b/docs/clutchlog_8h__dep__incl.map index 8867224..20f2720 100644 --- a/docs/clutchlog_8h__dep__incl.map +++ b/docs/clutchlog_8h__dep__incl.map @@ -1,5 +1,5 @@ - + @@ -8,6 +8,7 @@ - - + + + diff --git a/docs/clutchlog_8h__dep__incl.md5 b/docs/clutchlog_8h__dep__incl.md5 index 2ebb922..d28cb8a 100644 --- a/docs/clutchlog_8h__dep__incl.md5 +++ b/docs/clutchlog_8h__dep__incl.md5 @@ -1 +1 @@ -2272091813648aca5bb139f5c62184ae \ No newline at end of file +f0599479963670ec59fcd0540b0432ef \ No newline at end of file diff --git a/docs/clutchlog_8h__dep__incl.svg b/docs/clutchlog_8h__dep__incl.svg index c8557a0..9fe6b9c 100644 --- a/docs/clutchlog_8h__dep__incl.svg +++ b/docs/clutchlog_8h__dep__incl.svg @@ -46,7 +46,7 @@ if (edges && edges.length) { @@ -54,13 +54,13 @@ var sectionId = 'dynsection-1'; clutchlog.h - + Node1 - -clutchlog.h + +clutchlog.h @@ -76,8 +76,8 @@ var sectionId = 'dynsection-1'; Node1->Node2 - - + + @@ -91,8 +91,8 @@ var sectionId = 'dynsection-1'; Node1->Node3 - - + + @@ -106,8 +106,8 @@ var sectionId = 'dynsection-1'; Node1->Node4 - - + + @@ -121,8 +121,8 @@ var sectionId = 'dynsection-1'; Node1->Node5 - - + + @@ -136,8 +136,8 @@ var sectionId = 'dynsection-1'; Node1->Node6 - - + + @@ -151,8 +151,8 @@ var sectionId = 'dynsection-1'; Node1->Node7 - - + + @@ -166,8 +166,8 @@ var sectionId = 'dynsection-1'; Node1->Node8 - - + + @@ -181,38 +181,53 @@ var sectionId = 'dynsection-1'; Node1->Node9 - - + + Node10 - - -t-log.cpp + + +t-hash-color.cpp Node1->Node10 - - + + Node11 - - -t-one-line-if.cpp + + +t-log.cpp Node1->Node11 - - + + + + + +Node12 + + +t-one-line-if.cpp + + + + + +Node1->Node12 + + diff --git a/docs/clutchlog_8h__dep__incl_org.svg b/docs/clutchlog_8h__dep__incl_org.svg index d7492c1..df19fdd 100644 --- a/docs/clutchlog_8h__dep__incl_org.svg +++ b/docs/clutchlog_8h__dep__incl_org.svg @@ -4,17 +4,17 @@ - + clutchlog.h - + Node1 - -clutchlog.h + +clutchlog.h @@ -30,8 +30,8 @@ Node1->Node2 - - + + @@ -45,8 +45,8 @@ Node1->Node3 - - + + @@ -60,8 +60,8 @@ Node1->Node4 - - + + @@ -75,8 +75,8 @@ Node1->Node5 - - + + @@ -90,8 +90,8 @@ Node1->Node6 - - + + @@ -105,8 +105,8 @@ Node1->Node7 - - + + @@ -120,8 +120,8 @@ Node1->Node8 - - + + @@ -135,38 +135,53 @@ Node1->Node9 - - + + Node10 - - -t-log.cpp + + +t-hash-color.cpp Node1->Node10 - - + + Node11 - - -t-one-line-if.cpp + + +t-log.cpp Node1->Node11 - - + + + + + +Node12 + + +t-one-line-if.cpp + + + + + +Node1->Node12 + + diff --git a/docs/clutchlog_8h_source.html b/docs/clutchlog_8h_source.html index e3c31b4..fa6a0cb 100644 --- a/docs/clutchlog_8h_source.html +++ b/docs/clutchlog_8h_source.html @@ -28,7 +28,7 @@ Logo @@ -615,7 +615,7 @@ $(document).ready(function(){initNavTree('clutchlog_8h_source.html',''); initRes
798  this->print_on(os);
799  fmt reset(fmt::typo::reset);
800  os << msg;
-
801  reset.print_on(os);
+
801  reset.print_on(os);
802  return os.str();
803  }
804 
@@ -625,831 +625,871 @@ $(document).ready(function(){initNavTree('clutchlog_8h_source.html',''); initRes
810  this->print_on(os);
811  return os.str();
812  }
-
813  }; // fmt class
-
814 
-
820  public:
-
821  clutchlog(clutchlog const&) = delete;
-
822  void operator=(clutchlog const&) = delete;
-
823 
-
824  private:
-
825  clutchlog() :
-
826  // system, main, log
- -
828  _level_word({
-
829  {level::critical,"Critical"},
-
830  {level::error ,"Error"},
-
831  {level::warning ,"Warning"},
-
832  {level::progress,"Progress"},
-
833  {level::note ,"Note"},
-
834  {level::info ,"Info"},
-
835  {level::debug ,"Debug"},
-
836  {level::xdebug ,"XDebug"}
-
837  }),
-
838  _level_short({
-
839  {level::critical, "Crit"},
-
840  {level::error , "Erro"},
-
841  {level::warning , "Warn"},
-
842  {level::progress, "Prog"},
-
843  {level::note , "Note"},
-
844  {level::info , "Info"},
-
845  {level::debug , "Dbug"},
-
846  {level::xdebug , "XDbg"}
+
813 
+
814  static fmt hash( const std::string& str, const std::vector<fmt> domain = {})
+
815  {
+
816  size_t h = std::hash<std::string>{}(str);
+
817  if(domain.size() == 0) {
+
818  return fmt(static_cast<short>(h % 256));
+
819  } else {
+
820  return fmt(domain[h % domain.size()]);
+
821  }
+
822  }
+
823  }; // fmt class
+
824 
+
830  public:
+
831  clutchlog(clutchlog const&) = delete;
+
832  void operator=(clutchlog const&) = delete;
+
833 
+
834  private:
+
835  clutchlog() :
+
836  // system, main, log
+ +
838  _level_word({
+
839  {level::critical,"Critical"},
+
840  {level::error ,"Error"},
+
841  {level::warning ,"Warning"},
+
842  {level::progress,"Progress"},
+
843  {level::note ,"Note"},
+
844  {level::info ,"Info"},
+
845  {level::debug ,"Debug"},
+
846  {level::xdebug ,"XDebug"}
847  }),
-
848  _level_fmt({
-
849  {level::critical,fmt(fmt::fg::red, fmt::typo::underline)},
-
850  {level::error ,fmt(fmt::fg::red, fmt::typo::bold)},
-
851  {level::warning ,fmt(fmt::fg::magenta, fmt::typo::bold)},
-
852  {level::progress,fmt()},
-
853  {level::note ,fmt()},
-
854  {level::info ,fmt()},
-
855  {level::debug ,fmt()},
-
856  {level::xdebug ,fmt()}
+
848  _level_short({
+
849  {level::critical, "Crit"},
+
850  {level::error , "Erro"},
+
851  {level::warning , "Warn"},
+
852  {level::progress, "Prog"},
+
853  {level::note , "Note"},
+
854  {level::info , "Info"},
+
855  {level::debug , "Dbug"},
+
856  {level::xdebug , "XDbg"}
857  }),
- - -
860  #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
-
861  _hfill_char(clutchlog::default_hfill_char),
-
862  _hfill_fmt(fmt::fg::none),
-
863  _hfill_max(clutchlog::default_hfill_max),
-
864  _hfill_min(clutchlog::default_hfill_min),
-
865  #endif
-
866  _out(&std::clog),
-
867  #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
868  _depth(std::numeric_limits<size_t>::max() - _strip_calls),
-
869  _depth_mark(clutchlog::default_depth_mark),
-
870  #endif
-
871  _stage(level::error),
-
872  _in_file(".*"),
-
873  _in_func(".*"),
-
874  _in_line(".*")
-
875  {
-
876  // Reverse the level->word map into a word->level map.
-
877  for(auto& lw : _level_word) {
-
878  _word_level[lw.second] = lw.first;
-
879  }
-
880 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
-
881  struct winsize w;
-
882  ioctl(STDERR_FILENO, TIOCGWINSZ, &w);
-
883  _nb_columns = std::max(std::min((size_t)w.ws_col, default_hfill_max), default_hfill_min);
-
884 #endif
-
885  }
-
886 
-
887  protected:
-
889  size_t _strip_calls;
-
891  const std::map<level,std::string> _level_word;
-
893  std::map<std::string,level> _word_level;
-
895  std::map<level,std::string> _level_short;
-
897  std::map<level,fmt> _level_fmt;
-
899  std::string _format_log;
-
901  std::string _format_dump;
-
902  #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
-
903 
-
904  char _hfill_char;
-
906  fmt _hfill_fmt;
-
908  size_t _hfill_max;
-
910  size_t _hfill_min;
-
911  #endif
-
912 
-
913  std::ostream* _out;
-
914  #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
915 
-
916  size_t _depth;
-
918  std::string _depth_mark;
-
919  #endif
-
920 
- -
923  std::regex _in_file;
-
925  std::regex _in_func;
-
927  std::regex _in_line;
-
928 
-
929 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
930 
-
931  static const size_t _max_buffer = 4096;
-
932 #endif
-
933 
-
934 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
-
935 
-
936  size_t _nb_columns;
-
937 #endif
-
938 
-
940  public:
-
941 
-
945  void format(const std::string& format) {_format_log = format;}
-
948  std::string format() const {return _format_log;}
+
858  _level_fmt({
+
859  {level::critical,fmt(fmt::fg::red, fmt::typo::underline)},
+
860  {level::error ,fmt(fmt::fg::red, fmt::typo::bold)},
+
861  {level::warning ,fmt(fmt::fg::magenta, fmt::typo::bold)},
+
862  {level::progress,fmt()},
+
863  {level::note ,fmt()},
+
864  {level::info ,fmt()},
+
865  {level::debug ,fmt()},
+
866  {level::xdebug ,fmt()}
+
867  }),
+ + +
870  #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
+
871  _hfill_char(clutchlog::default_hfill_char),
+
872  _hfill_fmt(fmt::fg::none),
+
873  _hfill_max(clutchlog::default_hfill_max),
+
874  _hfill_min(clutchlog::default_hfill_min),
+
875  #endif
+
876  _out(&std::clog),
+
877  #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
878  _depth(std::numeric_limits<size_t>::max() - _strip_calls),
+
879  _depth_mark(clutchlog::default_depth_mark),
+
880  #endif
+
881  _stage(level::error),
+
882  _in_file(".*"),
+
883  _in_func(".*"),
+
884  _in_line(".*")
+
885  // Empty vectors by default:
+
886  // _filehash_fmts
+
887  // _funchash_fmts
+
888  // _depth_fmts
+
889  {
+
890  // Reverse the level->word map into a word->level map.
+
891  for(auto& lw : _level_word) {
+
892  _word_level[lw.second] = lw.first;
+
893  }
+
894 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
+
895  struct winsize w;
+
896  ioctl(STDERR_FILENO, TIOCGWINSZ, &w);
+
897  _nb_columns = std::max(std::min((size_t)w.ws_col, default_hfill_max), default_hfill_min);
+
898 #endif
+
899  }
+
900 
+
901  protected:
+
903  size_t _strip_calls;
+
905  const std::map<level,std::string> _level_word;
+
907  std::map<std::string,level> _word_level;
+
909  std::map<level,std::string> _level_short;
+
911  std::map<level,fmt> _level_fmt;
+
913  std::string _format_log;
+
915  std::string _format_dump;
+
916  #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
+
917 
+
918  char _hfill_char;
+
920  fmt _hfill_fmt;
+
922  size_t _hfill_max;
+
924  size_t _hfill_min;
+
925  #endif
+
926 
+
927  std::ostream* _out;
+
928  #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
929 
+
930  size_t _depth;
+
932  std::string _depth_mark;
+
933  #endif
+
934 
+ +
937  std::regex _in_file;
+
939  std::regex _in_func;
+
941  std::regex _in_line;
+
942 
+
944  std::vector<fmt> _filehash_fmts;
+
946  std::vector<fmt> _funchash_fmts;
+
947 
+
948 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
949 
-
951  void format_comment(const std::string& format) {_format_dump = format;}
-
953  std::string format_comment() const {return _format_dump;}
+
950  static const size_t _max_buffer = 4096;
+
952  std::vector<fmt> _depth_fmts;
+
953 #endif
954 
-
956  void out(std::ostream& out) {_out = &out;}
-
958  std::ostream& out() {return *_out;}
+
955 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
+
956 
+
957  size_t _nb_columns;
+
958 #endif
959 
-
960 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
961  void depth(size_t d) {_depth = d;}
-
964  size_t depth() const {return _depth;}
-
965 
-
967  void depth_mark(const std::string mark) {_depth_mark = mark;}
-
969  std::string depth_mark() const {return _depth_mark;}
+
961  public:
+
962 
+
966  void format(const std::string& format) {_format_log = format;}
+
969  std::string format() const {return _format_log;}
970 
-
972  void strip_calls(const size_t n) {_strip_calls = n;}
-
974  size_t strip_calls() const {return _strip_calls;}
-
975 #endif
-
976 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL == 1
-
977  void hfill_mark(const char mark) {_hfill_char = mark;}
-
980  char hfill_mark() const {return _hfill_char;}
-
982  void hfill_style(fmt style) {_hfill_fmt = style;}
-
987  template<class ... FMT>
-
988  void hfill_style(FMT... styles) { this->hfill_style(fmt(styles...)); }
-
990  fmt hfill_style() const {return _hfill_fmt;}
-
992  void hfill_max(const size_t nmax) {_hfill_max = nmax;}
-
994  size_t hfill_max() {return _hfill_max;}
-
996  void hfill_min(const size_t nmin) {_hfill_min = nmin;}
-
998  size_t hfill_min() {return _hfill_min;}
-
999 #endif
-
1000 
-
1002  void threshold(level l) {_stage = l;}
-
1004  void threshold(const std::string& l) {_stage = this->level_of(l);}
-
1006  level threshold() const {return _stage;}
-
1008  const std::map<std::string,level>& levels() const { return _word_level;}
-
1009 
-
1014  level level_of(const std::string name)
-
1015  {
-
1016  const auto ilevel = _word_level.find(name);
-
1017  if( ilevel != std::end(_word_level)) {
-
1018  return ilevel->second;
-
1019  } else {
-
1020  throw std::out_of_range("'" + name + "' is not a valid log level name");
-
1021  }
-
1022  }
-
1023 
-
1025  void file(std::string file) {_in_file = file;}
-
1027  void func(std::string func) {_in_func = func;}
-
1029  void line(std::string line) {_in_line = line;}
-
1030 
-
1032  void location(
-
1033  const std::string& in_file,
-
1034  const std::string& in_function=".*",
-
1035  const std::string& in_line=".*"
-
1036  )
-
1037  {
-
1038  file(in_file);
-
1039  func(in_function);
-
1040  line(in_line);
-
1041  }
-
1042 
-
1047  template<class ... FMT>
-
1048  void style(level stage, FMT... styles) { this->style(stage,fmt(styles...)); }
-
1050  void style(level stage, fmt style) { _level_fmt.at(stage) = style; }
-
1052  fmt style(level stage) const { return _level_fmt.at(stage); }
-
1053 
-
1056  public:
-
1057 
-
1061  struct scope_t {
-
1064  bool matches;
- -
1067 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
1068 
-
1069  size_t depth;
-
1070 #endif
-
1071 
-
1072  bool there;
- -
1075  matches(false),
-
1076  stage(level::xdebug),
- -
1078  depth(0),
-
1079 #endif
-
1080  there(false)
-
1081  {}
-
1082  }; // scope_t
-
1083 
-
1084 
- -
1087  const level& stage,
-
1088  const std::string& file,
-
1089  const std::string& func,
-
1090  const size_t line
-
1091  ) const
-
1092  {
-
1093  scope_t scope; // False scope by default.
-
1094 
-
1095  /***** Log level stage *****/
-
1096  // Test stage first, because it's fastest.
-
1097  scope.stage = stage;
-
1098  if(not (scope.stage <= _stage)) {
-
1099  // Bypass useless computations if no match
-
1100  // because of the stage.
-
1101  return scope;
-
1102  }
-
1103 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
1104  /***** Stack depth *****/
-
1105  // Backtrace in second, quite fast.
-
1106  size_t stack_depth;
-
1107  void *buffer[_max_buffer];
-
1108  stack_depth = backtrace(buffer, _max_buffer);
-
1109  scope.depth = stack_depth;
-
1110  if(not (scope.depth <= _depth + _strip_calls)) {
-
1111  // Bypass if no match.
-
1112  return scope;
-
1113  }
-
1114 #endif
-
1115 
-
1116  /***** Location *****/
-
1117  // Location last, slowest.
-
1118  std::ostringstream sline; sline << line;
-
1119  scope.there =
-
1120  std::regex_search(file, _in_file)
-
1121  and std::regex_search(func, _in_func)
-
1122  and std::regex_search(sline.str(), _in_line);
-
1123 
-
1124  // No need to retest stage and depth, which are true here.
-
1125  scope.matches = scope.there;
-
1126 
-
1127  return scope;
-
1128  } // locate
+
972  void format_comment(const std::string& format) {_format_dump = format;}
+
974  std::string format_comment() const {return _format_dump;}
+
975 
+
977  void out(std::ostream& out) {_out = &out;}
+
979  std::ostream& out() {return *_out;}
+
980 
+
981 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
982  void depth(size_t d) {_depth = d;}
+
985  size_t depth() const {return _depth;}
+
986 
+
988  void depth_mark(const std::string mark) {_depth_mark = mark;}
+
990  std::string depth_mark() const {return _depth_mark;}
+
991 
+
993  void strip_calls(const size_t n) {_strip_calls = n;}
+
995  size_t strip_calls() const {return _strip_calls;}
+
996 #endif
+
997 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL == 1
+
998  void hfill_mark(const char mark) {_hfill_char = mark;}
+
1001  char hfill_mark() const {return _hfill_char;}
+
1003  void hfill_style(fmt style) {_hfill_fmt = style;}
+
1008  template<class ... FMT>
+
1009  void hfill_style(FMT... styles) { this->hfill_style(fmt(styles...)); }
+
1011  fmt hfill_style() const {return _hfill_fmt;}
+
1013  void hfill_max(const size_t nmax) {_hfill_max = nmax;}
+
1015  size_t hfill_max() {return _hfill_max;}
+
1017  void hfill_min(const size_t nmin) {_hfill_min = nmin;}
+
1019  size_t hfill_min() {return _hfill_min;}
+
1020 #endif
+
1021 
+
1028  void filehash_styles(std::vector<fmt> styles) {_filehash_fmts = styles;}
+
1036  void funchash_styles(std::vector<fmt> styles) {_funchash_fmts = styles;}
+
1045  void depth_styles(std::vector<fmt> styles) {_depth_fmts = styles;}
+
1046 
+
1048  void threshold(level l) {_stage = l;}
+
1050  void threshold(const std::string& l) {_stage = this->level_of(l);}
+
1052  level threshold() const {return _stage;}
+
1054  const std::map<std::string,level>& levels() const { return _word_level;}
+
1055 
+
1060  level level_of(const std::string name)
+
1061  {
+
1062  const auto ilevel = _word_level.find(name);
+
1063  if( ilevel != std::end(_word_level)) {
+
1064  return ilevel->second;
+
1065  } else {
+
1066  throw std::out_of_range("'" + name + "' is not a valid log level name");
+
1067  }
+
1068  }
+
1069 
+
1071  void file(std::string file) {_in_file = file;}
+
1073  void func(std::string func) {_in_func = func;}
+
1075  void line(std::string line) {_in_line = line;}
+
1076 
+
1078  void location(
+
1079  const std::string& in_file,
+
1080  const std::string& in_function=".*",
+
1081  const std::string& in_line=".*"
+
1082  )
+
1083  {
+
1084  file(in_file);
+
1085  func(in_function);
+
1086  line(in_line);
+
1087  }
+
1088 
+
1093  template<class ... FMT>
+
1094  void style(level stage, FMT... styles) { this->style(stage,fmt(styles...)); }
+
1096  void style(level stage, fmt style) { _level_fmt.at(stage) = style; }
+
1098  fmt style(level stage) const { return _level_fmt.at(stage); }
+
1099 
+
1102  public:
+
1103 
+
1107  struct scope_t {
+
1110  bool matches;
+ +
1113 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
1114 
+
1115  size_t depth;
+
1116 #endif
+
1117 
+
1118  bool there;
+ +
1121  matches(false),
+
1122  stage(level::xdebug),
+ +
1124  depth(0),
+
1125 #endif
+
1126  there(false)
+
1127  {}
+
1128  }; // scope_t
1129 
-
1137  std::string replace(
-
1138  const std::string& form,
-
1139  const std::string& mark,
-
1140  const std::string& tag
-
1141  ) const
-
1142  {
-
1143  // Useless debug code, unless something fancy would be done with name tags.
-
1144  // std::regex re;
-
1145  // try {
-
1146  // re = std::regex(mark);
-
1147  //
-
1148  // } catch(const std::regex_error& e) {
-
1149  // std::cerr << "ERROR with a regular expression \"" << mark << "\": ";
-
1150  // switch(e.code()) {
-
1151  // case std::regex_constants::error_collate:
-
1152  // std::cerr << "the expression contains an invalid collating element name";
-
1153  // break;
-
1154  // case std::regex_constants::error_ctype:
-
1155  // std::cerr << "the expression contains an invalid character class name";
-
1156  // break;
-
1157  // case std::regex_constants::error_escape:
-
1158  // std::cerr << "the expression contains an invalid escaped character or a trailing escape";
-
1159  // break;
-
1160  // case std::regex_constants::error_backref:
-
1161  // std::cerr << "the expression contains an invalid back reference";
-
1162  // break;
-
1163  // case std::regex_constants::error_brack:
-
1164  // std::cerr << "the expression contains mismatched square brackets ('[' and ']')";
-
1165  // break;
-
1166  // case std::regex_constants::error_paren:
-
1167  // std::cerr << "the expression contains mismatched parentheses ('(' and ')')";
-
1168  // break;
-
1169  // case std::regex_constants::error_brace:
-
1170  // std::cerr << "the expression contains mismatched curly braces ('{' and '}')";
-
1171  // break;
-
1172  // case std::regex_constants::error_badbrace:
-
1173  // std::cerr << "the expression contains an invalid range in a {} expression";
-
1174  // break;
-
1175  // case std::regex_constants::error_range:
-
1176  // std::cerr << "the expression contains an invalid character range (e.g. [b-a])";
-
1177  // break;
-
1178  // case std::regex_constants::error_space:
-
1179  // std::cerr << "there was not enough memory to convert the expression into a finite state machine";
-
1180  // break;
-
1181  // case std::regex_constants::error_badrepeat:
-
1182  // std::cerr << "one of *?+{ was not preceded by a valid regular expression";
-
1183  // break;
-
1184  // case std::regex_constants::error_complexity:
-
1185  // std::cerr << "the complexity of an attempted match exceeded a predefined level";
-
1186  // break;
-
1187  // case std::regex_constants::error_stack:
-
1188  // std::cerr << "there was not enough memory to perform a match";
-
1189  // break;
-
1190  // default:
-
1191  // std::cerr << "unknown error";
-
1192  // }
-
1193  // std::cerr << std::endl;
-
1194  // throw;
-
1195  // } // catch
-
1196 
-
1197  const std::regex re(mark);
-
1198  return std::regex_replace(form, re, tag);
-
1199  }
-
1200 
-
1202  std::string replace(
-
1203  const std::string& form,
-
1204  const std::string& mark,
-
1205  const size_t tag
-
1206  ) const
-
1207  {
-
1208  std::ostringstream stag; stag << tag;
-
1209  return replace(form, mark, stag.str());
-
1210  }
-
1211 
-
1213  std::string format(
-
1214  std::string row,
-
1215  const std::string& what,
- -
1217  const std::string& name,
-
1218 #endif
-
1219  const level& stage,
-
1220  const std::string& file,
-
1221  const std::string& func,
-
1222  const size_t line
- -
1224  ,
-
1225  const size_t depth
-
1226 #endif
-
1227  ) const
-
1228  {
-
1229  row = replace(row, "\\{msg\\}", what);
-
1230  row = replace(row, "\\{file\\}", file);
-
1231  row = replace(row, "\\{func\\}", func);
-
1232  row = replace(row, "\\{line\\}", line);
-
1233 
-
1234  row = replace(row, "\\{level\\}", _level_word.at(stage));
-
1235  std::string letter(1, _level_word.at(stage).at(0)); // char -> string
-
1236  row = replace(row, "\\{level_letter\\}", letter);
-
1237 
-
1238  row = replace(row, "\\{level_short\\}", _level_short.at(stage));
-
1239 
-
1240 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
1241  row = replace(row, "\\{name\\}", name);
-
1242  row = replace(row, "\\{depth\\}", depth - _strip_calls);
-
1243 
-
1244  std::ostringstream chevrons;
-
1245  for(size_t i = _strip_calls; i < depth; ++i) {
-
1246  chevrons << _depth_mark;
-
1247  }
-
1248  row = replace(row, "\\{depth_marks\\}", chevrons.str());
-
1249 #endif
-
1250 
-
1251  row = replace(row, "\\{level_fmt\\}", _level_fmt.at(stage).str());
-
1252 
-
1253 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
-
1254  // hfill is replaced last to allow for correct line width estimation.
-
1255  const std::string raw_row = replace(row, "\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]", "");
-
1256  const std::string hfill_tag = "{hfill}";
-
1257  const size_t hfill_pos = row.find(hfill_tag);
-
1258  const size_t raw_hfill_pos = raw_row.find(hfill_tag);
-
1259  const size_t nb_columns = std::max(std::min((size_t)_nb_columns, _hfill_max), _hfill_min);
-
1260  if(hfill_pos != std::string::npos) {
-
1261  assert(raw_hfill_pos != std::string::npos);
-
1262  if(nb_columns > 0) {
-
1263  const size_t left_len = raw_hfill_pos;
-
1264  const size_t right_len = raw_row.size() - raw_hfill_pos - hfill_tag.size();
-
1265  if(right_len+left_len > nb_columns) {
-
1266  // The right part would go over the terminal width: add a new row.
-
1267  if(right_len < nb_columns) {
-
1268  // There is room for the right part on a new line.
-
1269  const std::string hfill(std::max((size_t)0, nb_columns-right_len), _hfill_char);
-
1270  const std::string hfill_styled = _hfill_fmt(hfill);
-
1271  row = replace(row, "\\{hfill\\}", "\n"+hfill_styled);
-
1272  } else {
-
1273  // Right part still goes over columns: let it go.
-
1274  const std::string hfill(1, _hfill_char);
-
1275  const std::string hfill_styled = _hfill_fmt(hfill);
-
1276  row = replace(row, "\\{hfill\\}", "\n"+hfill_styled);
-
1277  }
-
1278  } else {
-
1279  // There is some space in between left and right parts.
-
1280  const std::string hfill(std::max((size_t)0, nb_columns - (right_len+left_len)), _hfill_char);
-
1281  const std::string hfill_styled = _hfill_fmt(hfill);
-
1282  row = replace(row, "\\{hfill\\}", hfill_styled);
-
1283  }
-
1284  } else {
-
1285  // We don't know the terminal width.
-
1286  const std::string hfill(1, _hfill_char);
-
1287  const std::string hfill_styled = _hfill_fmt(hfill);
-
1288  row = replace(row, "\\{hfill\\}", hfill_styled);
-
1289  }
-
1290  }
-
1291 #else
-
1292  // We cannot know the terminal width.
-
1293  const std::string hfill(1, _hfill_char);
-
1294  const std::string hfill_styled = _hfill_fmt(hfill);
-
1295  row = replace(row, "\\{hfill\\}", hfill_styled);
-
1296 #endif
-
1297  return _level_fmt.at(stage)(row);
-
1298  }
-
1299 
-
1301  void log(
-
1302  const level& stage,
-
1303  const std::string& what,
-
1304  const std::string& file, const std::string& func, size_t line
-
1305  ) const
-
1306  {
-
1307  scope_t scope = locate(stage, file, func, line);
-
1308 
-
1309  if(scope.matches) {
-
1310 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
1311  *_out << format(_format_log, what, basename(getenv("_")),
-
1312  stage, file, func,
-
1313  line, scope.depth );
-
1314 #else
-
1315  *_out << format(_format_log, what,
-
1316  stage, file, func,
-
1317  line );
-
1318 
-
1319 #endif
-
1320  _out->flush();
-
1321  } // if scopes.matches
-
1322  }
-
1323 
-
1325  template<class In>
-
1326  void dump(
-
1327  const level& stage,
-
1328  const In container_begin, const In container_end,
-
1329  const std::string& file, const std::string& func, size_t line,
-
1330  const std::string& filename_template = "dump_{n}.dat",
-
1331  const std::string sep = dump_default_sep
-
1332  ) const
-
1333  {
-
1334  scope_t scope = locate(stage, file, func, line);
-
1335 
-
1336  if(scope.matches) {
-
1337  const std::string tag = "\\{n\\}";
-
1338  const std::regex re(tag);
-
1339  std::string outfile = "";
-
1340 
-
1341  // If the file name template has the {n} tag.
-
1342  if(std::regex_search(filename_template, re)) {
-
1343  // Increment n until a free one is found.
-
1344  size_t n = 0;
-
1345  do {
-
1346  outfile = replace(filename_template, tag, n);
-
1347  n++;
-
1348  } while( fs::exists( outfile ) );
-
1349 
-
1350  } else {
-
1351  // Use the parameter as is.
-
1352  outfile = filename_template;
-
1353  }
+
1130 
+ +
1133  const level& stage,
+
1134  const std::string& file,
+
1135  const std::string& func,
+
1136  const size_t line
+
1137  ) const
+
1138  {
+
1139  scope_t scope; // False scope by default.
+
1140 
+
1141  /***** Log level stage *****/
+
1142  // Test stage first, because it's fastest.
+
1143  scope.stage = stage;
+
1144  if(not (scope.stage <= _stage)) {
+
1145  // Bypass useless computations if no match
+
1146  // because of the stage.
+
1147  return scope;
+
1148  }
+
1149 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
1150  /***** Stack depth *****/
+
1151  // Backtrace in second, quite fast.
+
1152  size_t stack_depth;
+
1153  void *buffer[_max_buffer];
+
1154  stack_depth = backtrace(buffer, _max_buffer);
+
1155  scope.depth = stack_depth;
+
1156  if(not (scope.depth <= _depth + _strip_calls)) {
+
1157  // Bypass if no match.
+
1158  return scope;
+
1159  }
+
1160 #endif
+
1161 
+
1162  /***** Location *****/
+
1163  // Location last, slowest.
+
1164  std::ostringstream sline; sline << line;
+
1165  scope.there =
+
1166  std::regex_search(file, _in_file)
+
1167  and std::regex_search(func, _in_func)
+
1168  and std::regex_search(sline.str(), _in_line);
+
1169 
+
1170  // No need to retest stage and depth, which are true here.
+
1171  scope.matches = scope.there;
+
1172 
+
1173  return scope;
+
1174  } // locate
+
1175 
+
1183  std::string replace(
+
1184  const std::string& form,
+
1185  const std::string& mark,
+
1186  const std::string& tag
+
1187  ) const
+
1188  {
+
1189  // Useless debug code, unless something fancy would be done with name tags.
+
1190  // std::regex re;
+
1191  // try {
+
1192  // re = std::regex(mark);
+
1193  //
+
1194  // } catch(const std::regex_error& e) {
+
1195  // std::cerr << "ERROR with a regular expression \"" << mark << "\": ";
+
1196  // switch(e.code()) {
+
1197  // case std::regex_constants::error_collate:
+
1198  // std::cerr << "the expression contains an invalid collating element name";
+
1199  // break;
+
1200  // case std::regex_constants::error_ctype:
+
1201  // std::cerr << "the expression contains an invalid character class name";
+
1202  // break;
+
1203  // case std::regex_constants::error_escape:
+
1204  // std::cerr << "the expression contains an invalid escaped character or a trailing escape";
+
1205  // break;
+
1206  // case std::regex_constants::error_backref:
+
1207  // std::cerr << "the expression contains an invalid back reference";
+
1208  // break;
+
1209  // case std::regex_constants::error_brack:
+
1210  // std::cerr << "the expression contains mismatched square brackets ('[' and ']')";
+
1211  // break;
+
1212  // case std::regex_constants::error_paren:
+
1213  // std::cerr << "the expression contains mismatched parentheses ('(' and ')')";
+
1214  // break;
+
1215  // case std::regex_constants::error_brace:
+
1216  // std::cerr << "the expression contains mismatched curly braces ('{' and '}')";
+
1217  // break;
+
1218  // case std::regex_constants::error_badbrace:
+
1219  // std::cerr << "the expression contains an invalid range in a {} expression";
+
1220  // break;
+
1221  // case std::regex_constants::error_range:
+
1222  // std::cerr << "the expression contains an invalid character range (e.g. [b-a])";
+
1223  // break;
+
1224  // case std::regex_constants::error_space:
+
1225  // std::cerr << "there was not enough memory to convert the expression into a finite state machine";
+
1226  // break;
+
1227  // case std::regex_constants::error_badrepeat:
+
1228  // std::cerr << "one of *?+{ was not preceded by a valid regular expression";
+
1229  // break;
+
1230  // case std::regex_constants::error_complexity:
+
1231  // std::cerr << "the complexity of an attempted match exceeded a predefined level";
+
1232  // break;
+
1233  // case std::regex_constants::error_stack:
+
1234  // std::cerr << "there was not enough memory to perform a match";
+
1235  // break;
+
1236  // default:
+
1237  // std::cerr << "unknown error";
+
1238  // }
+
1239  // std::cerr << std::endl;
+
1240  // throw;
+
1241  // } // catch
+
1242 
+
1243  const std::regex re(mark);
+
1244  return std::regex_replace(form, re, tag);
+
1245  }
+
1246 
+
1248  std::string replace(
+
1249  const std::string& form,
+
1250  const std::string& mark,
+
1251  const size_t tag
+
1252  ) const
+
1253  {
+
1254  std::ostringstream stag; stag << tag;
+
1255  return replace(form, mark, stag.str());
+
1256  }
+
1257 
+
1259  std::string format(
+
1260  std::string row,
+
1261  const std::string& what,
+ +
1263  const std::string& name,
+
1264 #endif
+
1265  const level& stage,
+
1266  const std::string& file,
+
1267  const std::string& func,
+
1268  const size_t line
+ +
1270  ,
+
1271  const size_t depth
+
1272 #endif
+
1273  ) const
+
1274  {
+
1275  row = replace(row, "\\{msg\\}", what);
+
1276  row = replace(row, "\\{file\\}", file);
+
1277  row = replace(row, "\\{func\\}", func);
+
1278  row = replace(row, "\\{line\\}", line);
+
1279 
+
1280  row = replace(row, "\\{level\\}", _level_word.at(stage));
+
1281  std::string letter(1, _level_word.at(stage).at(0)); // char -> string
+
1282  row = replace(row, "\\{level_letter\\}", letter);
+
1283 
+
1284  row = replace(row, "\\{level_short\\}", _level_short.at(stage));
+
1285 
+
1286 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
1287  size_t actual_depth = depth - _strip_calls;
+
1288  row = replace(row, "\\{name\\}", name);
+
1289  row = replace(row, "\\{depth\\}", actual_depth);
+
1290 
+
1291  std::ostringstream chevrons;
+
1292  for(size_t i = _strip_calls; i < depth; ++i) {
+
1293  chevrons << _depth_mark;
+
1294  }
+
1295  row = replace(row, "\\{depth_marks\\}", chevrons.str());
+
1296 
+
1297  if(_depth_fmts.size() == 0) {
+
1298  row = replace(row, "\\{depth_fmt\\}", fmt(actual_depth % 256).str() );
+
1299  } else {
+
1300  row = replace(row, "\\{depth_fmt\\}",
+
1301  _depth_fmts[std::min(actual_depth,_depth_fmts.size()-1)].str() );
+
1302  }
+
1303 #endif
+
1304  row = replace(row, "\\{level_fmt\\}", _level_fmt.at(stage).str());
+
1305  row = replace(row, "\\{filehash_fmt\\}", fmt::hash(file, _filehash_fmts).str() );
+
1306  row = replace(row, "\\{funchash_fmt\\}", fmt::hash(func, _funchash_fmts).str() );
+
1307 
+
1308 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL
+
1309  // hfill is replaced last to allow for correct line width estimation.
+
1310  const std::string raw_row = replace(row, "\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]", "");
+
1311  const std::string hfill_tag = "{hfill}";
+
1312  const size_t hfill_pos = row.find(hfill_tag);
+
1313  const size_t raw_hfill_pos = raw_row.find(hfill_tag);
+
1314  const size_t nb_columns = std::max(std::min((size_t)_nb_columns, _hfill_max), _hfill_min);
+
1315  if(hfill_pos != std::string::npos) {
+
1316  assert(raw_hfill_pos != std::string::npos);
+
1317  if(nb_columns > 0) {
+
1318  const size_t left_len = raw_hfill_pos;
+
1319  const size_t right_len = raw_row.size() - raw_hfill_pos - hfill_tag.size();
+
1320  if(right_len+left_len > nb_columns) {
+
1321  // The right part would go over the terminal width: add a new row.
+
1322  if(right_len < nb_columns) {
+
1323  // There is room for the right part on a new line.
+
1324  const std::string hfill(std::max((size_t)0, nb_columns-right_len), _hfill_char);
+
1325  const std::string hfill_styled = _hfill_fmt(hfill);
+
1326  row = replace(row, "\\{hfill\\}", "\n"+hfill_styled);
+
1327  } else {
+
1328  // Right part still goes over columns: let it go.
+
1329  const std::string hfill(1, _hfill_char);
+
1330  const std::string hfill_styled = _hfill_fmt(hfill);
+
1331  row = replace(row, "\\{hfill\\}", "\n"+hfill_styled);
+
1332  }
+
1333  } else {
+
1334  // There is some space in between left and right parts.
+
1335  const std::string hfill(std::max((size_t)0, nb_columns - (right_len+left_len)), _hfill_char);
+
1336  const std::string hfill_styled = _hfill_fmt(hfill);
+
1337  row = replace(row, "\\{hfill\\}", hfill_styled);
+
1338  }
+
1339  } else {
+
1340  // We don't know the terminal width.
+
1341  const std::string hfill(1, _hfill_char);
+
1342  const std::string hfill_styled = _hfill_fmt(hfill);
+
1343  row = replace(row, "\\{hfill\\}", hfill_styled);
+
1344  }
+
1345  }
+
1346 #else
+
1347  // We cannot know the terminal width.
+
1348  const std::string hfill(1, _hfill_char);
+
1349  const std::string hfill_styled = _hfill_fmt(hfill);
+
1350  row = replace(row, "\\{hfill\\}", hfill_styled);
+
1351 #endif
+
1352  return _level_fmt.at(stage)(row);
+
1353  }
1354 
-
1355  std::ofstream fd(outfile);
-
1356 
-
1357  if(_format_dump.size() > 0) {
-
1358 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
1359  fd << format(_format_dump, "", basename(getenv("_")),
-
1360  stage, file, func,
-
1361  line, scope.depth );
-
1362 #else
-
1363  fd << format(_format_dump, "",
-
1364  stage, file, func,
-
1365  line );
-
1366 #endif
-
1367  fd << sep; // sep after comment line.
-
1368  }
-
1369 
-
1370  std::copy(container_begin, container_end,
-
1371  std::ostream_iterator<typename In::value_type>(fd, sep.c_str()));
-
1372 
-
1373  fd.close();
-
1374  } // if scopes.matches
-
1375  }
-
1376 
-
1378 };
-
1379 
-
1382 #else // not WITH_CLUTCHLOG
-
1383 
-
1384 
-
1385 /**********************************************************************
-
1386  * Fake implementation
-
1387  **********************************************************************/
-
1388 
-
1389 // Equivalent class with empty methods, will be optimized out
-
1390 // while allowing to actually have calls implemented without WITH_CLUTCHLOG guards.
-
1391 #pragma GCC diagnostic push
-
1392 #pragma GCC diagnostic ignored "-Wreturn-type"
-
1393 class clutchlog
-
1394 {
-
1395  public:
-
1396  static clutchlog& logger() {}
-
1397  enum level {critical=0, error=1, warning=2, progress=3, note=4, info=5, debug=6, xdebug=7};
-
1398  class fmt {
-
1399  public:
-
1400  enum class ansi { colors_16, colors_256, colors_16M} mode;
-
1401  enum class typo { reset, bold, underline, inverse, none} style;
-
1402  enum class fg { black, red, green, yellow, blue, magenta, cyan, white, bright_black, bright_red, bright_green, bright_yellow, bright_blue, bright_magenta, bright_cyan, bright_white, none} fore;
-
1403  enum class bg { black, red, green, yellow, blue, magenta, cyan, white, bright_black, bright_red, bright_green, bright_yellow, bright_blue, bright_magenta, bright_cyan, bright_white, none } back;
-
1404  protected:
-
1405  friend std::ostream& operator<<(std::ostream&, const std::tuple<fg,bg,typo>&) {}
-
1406  friend std::ostream& operator<<(std::ostream&, const typo&) {}
-
1407  protected:
-
1408  struct color {
-
1409  ansi mode;
-
1410  enum class ground { fore, back } type;
-
1411  color(ansi a, ground g) : mode(a), type(g) {}
-
1412  virtual bool is_set() const = 0;
-
1413  virtual std::ostream& print_on( std::ostream&) const = 0;
-
1414  friend std::ostream& operator<<(std::ostream&, const color&) {}
-
1415  };
-
1416  struct color_256 : public color {
-
1417  short index;
-
1418  color_256(ground t) : color(ansi::colors_256, t), index(-1) {}
-
1419  color_256(ground t, const short i) : color(ansi::colors_256, t), index(i) {}
-
1420  bool is_set() const {}
-
1421  std::ostream& print_on( std::ostream&) const {}
-
1422  };
-
1423  struct fg_256 : public color_256 {
-
1424  fg_256() : color_256(ground::fore) {}
-
1425  fg_256(const short f) : color_256(ground::fore, f) {}
-
1426  fg_256(const fg&) : color_256(ground::fore, -1) {}
-
1427  } fore_256;
-
1428  struct bg_256 : public color_256 {
-
1429  bg_256() : color_256(ground::back) {}
-
1430  bg_256(const short b) : color_256(ground::back, b) {}
-
1431  bg_256(const bg&) : color_256(ground::back, -1) {}
-
1432  } back_256;
-
1433  struct color_16M : public color {
-
1434  short red, green, blue;
-
1435  color_16M(ground t) : color(ansi::colors_16M, t), red(-1), green(-1), blue(-1) {}
-
1436  color_16M(ground t, short r, short g, short b) : color(ansi::colors_16M, t), red(r), green(g), blue(b) {}
-
1437  color_16M(ground t, const std::string&) : color(ansi::colors_16M, t) {}
-
1438  bool is_set() const {return red > -1 and green > -1 and blue > -1;}
-
1439  std::ostream& print_on( std::ostream&) const {}
-
1440  };
-
1441  struct fg_16M : public color_16M {
-
1442  fg_16M() : color_16M(ground::fore) {}
-
1443  fg_16M(short r, short g, short b) : color_16M(ground::fore, r,g,b) {}
-
1444  fg_16M(const std::string& srgb) : color_16M(ground::fore, srgb) {}
-
1445  fg_16M(const fg&) : color_16M(ground::fore, -1,-1,-1) {}
-
1446  } fore_16M;
-
1447  struct bg_16M : public color_16M {
-
1448  bg_16M() : color_16M(ground::back) {}
-
1449  bg_16M(short r, short g, short b) : color_16M(ground::back, r,g,b) {}
-
1450  bg_16M(const std::string& srgb) : color_16M(ground::back, srgb) {}
-
1451  bg_16M(const bg&) : color_16M(ground::back, -1,-1,-1) {}
-
1452  } back_16M;
-
1453  public:
-
1454  fmt() : mode(ansi::colors_16), style(typo::none), fore(fg::none), back(bg::none) {}
-
1455  fmt( fg f, bg b = bg::none, typo s = typo::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
-
1456  fmt( fg f, typo s , bg b = bg::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
-
1457  fmt( bg b, fg f = fg::none, typo s = typo::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
-
1458  fmt( bg b, typo s , fg f = fg::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
-
1459  fmt(typo s, fg f = fg::none, bg b = bg::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
-
1460  fmt(typo s, bg b , fg f = fg::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
-
1461  fmt(fg_256 f, bg_256 b, typo s = typo::none) : mode(ansi::colors_256), style(s), fore_256(f), back_256(b) {}
-
1462  fmt(fg_256 f, typo s = typo::none) : mode(ansi::colors_256), style(s), fore_256(f), back_256(bg::none) {}
-
1463  fmt(fg, bg_256 b, typo s = typo::none) : mode(ansi::colors_256), style(s), fore_256(fg::none), back_256(b) {}
-
1464  fmt(const short fr, const short fg, const short fb,
-
1465  const short gr, const short gg, const short gb,
-
1466  typo s = typo::none)
-
1467  : mode(ansi::colors_16M), style(s), fore_16M(fr,fg,fb), back_16M(gr,gg,gb) {}
-
1468  fmt(fg,
-
1469  const short gr, const short gg, const short gb,
-
1470  typo s = typo::none)
-
1471  : mode(ansi::colors_16M), style(s), fore_16M(fg::none), back_16M(gr,gg,gb) {}
-
1472  fmt(const short fr, const short fg, const short fb,
-
1473  bg, typo s = typo::none)
-
1474  : mode(ansi::colors_16M), style(s), fore_16M(fr,fg,fb), back_16M(bg::none) {}
-
1475  fmt(const short fr, const short fg, const short fb,
-
1476  typo s = typo::none)
-
1477  : mode(ansi::colors_16M), style(s), fore_16M(fr,fg,fb), back_16M(bg::none) {}
-
1478 
-
1479  fmt(const std::string& f, const std::string& b, typo s = typo::none)
-
1480  : mode(ansi::colors_16M), style(s), fore_16M(f), back_16M(b) {}
-
1481  fmt(fg, const std::string& b, typo s = typo::none)
-
1482  : mode(ansi::colors_16M), style(s), fore_16M(fg::none), back_16M(b) {}
-
1483  fmt(const std::string& f, bg, typo s = typo::none)
-
1484  : mode(ansi::colors_16M), style(s), fore_16M(f), back_16M(bg::none) {}
-
1485  fmt(const std::string& f, typo s = typo::none)
-
1486  : mode(ansi::colors_16M), style(s), fore_16M(f), back_16M(bg::none) {}
-
1487  protected:
-
1488  std::ostream& print_on( std::ostream&) const {}
-
1489  public:
-
1490  friend std::ostream& operator<<(std::ostream&, const fmt&) {}
-
1491  std::string operator()( const std::string&) const {}
-
1492  std::string str() const {}
-
1493  };
-
1494  public:
-
1495  clutchlog(clutchlog const&) = delete;
-
1496  void operator=(clutchlog const&) = delete;
-
1497  private:
-
1498  clutchlog() {}
-
1499  protected:
-
1500  struct scope_t {};
-
1501  scope_t locate(
-
1502  const level&,
-
1503  const std::string&,
-
1504  const std::string&,
-
1505  const size_t
-
1506  ) const
-
1507  {}
-
1508  public:
-
1509  void format(const std::string&) {}
-
1510  std::string format() const {}
-
1511 
-
1512  void format_comment(const std::string&) {}
-
1513  std::string format_comment() const {}
-
1514 
-
1515  void out(std::ostream&) {}
-
1516  std::ostream& out() {}
-
1517 
-
1518 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
-
1519  void depth(size_t) {}
-
1520  size_t depth() const {}
-
1521 
-
1522  void depth_mark(const std::string) {}
-
1523  std::string depth_mark() const {}
-
1524  void strip_calls(const size_t) {}
-
1525  size_t strip_calls() const {}
-
1526 #endif
-
1527 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL == 1
-
1528  void hfill_mark(const char) {}
-
1529  char hfill_mark() const {}
-
1530  void hfill_fmt(fmt) {}
-
1531  fmt hfill_fmt() const {}
-
1532  void hfill_min(const size_t) {}
-
1533  size_t hfill_min() {}
-
1534  void hfill_max(const size_t) {}
-
1535  size_t hfill_max() {}
-
1536 #endif
-
1537 
-
1538  void threshold(level) {}
-
1539  void threshold(const std::string&) {}
-
1540  level threshold() const {}
-
1541  const std::map<std::string,level> levels() const {}
-
1542  level level_of(const std::string) {}
-
1543 
-
1544  void file(std::string) {}
-
1545  void func(std::string) {}
-
1546  void line(std::string) {}
-
1547 
-
1548 #pragma GCC diagnostic push
-
1549 #pragma GCC diagnostic ignored "-Wunused-parameter"
-
1550  void location(
-
1551  const std::string&,
-
1552  const std::string& in_function=".*",
-
1553  const std::string& in_line=".*"
-
1554  )
-
1555  {}
-
1556 #pragma GCC diagnostic pop
-
1557  template<class ... FMT>
-
1558  void style(level, FMT...) {}
-
1559  void style(level, fmt) {}
-
1560  fmt style(level) const {}
-
1561  public:
-
1562  std::string replace(
-
1563  const std::string&,
-
1564  const std::string&,
-
1565  const std::string&
-
1566  ) const
-
1567  {}
-
1568 
-
1569  std::string replace(
-
1570  const std::string&,
-
1571  const std::string&,
-
1572  const size_t
-
1573  ) const
-
1574  {}
-
1575 
-
1576  std::string format(
-
1577  std::string,
-
1578  const std::string&,
- -
1580  const std::string&,
-
1581 #endif
-
1582  const level&,
-
1583  const std::string&,
-
1584  const std::string&,
-
1585  const size_t
- -
1587  ,
-
1588  const size_t
-
1589 #endif
-
1590  ) const
-
1591  {}
-
1592 
-
1593  void log(
-
1594  const level&,
-
1595  const std::string&,
-
1596  const std::string&, const std::string&, size_t
-
1597  ) const
-
1598  {}
-
1599 
-
1600  template<class In>
-
1601  void dump(
-
1602  const level&,
-
1603  const In, const In,
-
1604  const std::string&, const std::string&, size_t,
-
1605  const std::string&,
-
1606  const std::string
-
1607  ) const
-
1608  {}
-
1609 };
-
1610 #pragma GCC diagnostic pop
-
1611 #endif // WITH_CLUTCHLOG
-
1612 
-
1613 #endif // CLUTCHLOG_H
+
1356  void log(
+
1357  const level& stage,
+
1358  const std::string& what,
+
1359  const std::string& file, const std::string& func, size_t line
+
1360  ) const
+
1361  {
+
1362  scope_t scope = locate(stage, file, func, line);
+
1363 
+
1364  if(scope.matches) {
+
1365 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
1366  *_out << format(_format_log, what, basename(getenv("_")),
+
1367  stage, file, func,
+
1368  line, scope.depth );
+
1369 #else
+
1370  *_out << format(_format_log, what,
+
1371  stage, file, func,
+
1372  line );
+
1373 
+
1374 #endif
+
1375  _out->flush();
+
1376  } // if scopes.matches
+
1377  }
+
1378 
+
1380  template<class In>
+
1381  void dump(
+
1382  const level& stage,
+
1383  const In container_begin, const In container_end,
+
1384  const std::string& file, const std::string& func, size_t line,
+
1385  const std::string& filename_template = "dump_{n}.dat",
+
1386  const std::string sep = dump_default_sep
+
1387  ) const
+
1388  {
+
1389  scope_t scope = locate(stage, file, func, line);
+
1390 
+
1391  if(scope.matches) {
+
1392  const std::string tag = "\\{n\\}";
+
1393  const std::regex re(tag);
+
1394  std::string outfile = "";
+
1395 
+
1396  // If the file name template has the {n} tag.
+
1397  if(std::regex_search(filename_template, re)) {
+
1398  // Increment n until a free one is found.
+
1399  size_t n = 0;
+
1400  do {
+
1401  outfile = replace(filename_template, tag, n);
+
1402  n++;
+
1403  } while( fs::exists( outfile ) );
+
1404 
+
1405  } else {
+
1406  // Use the parameter as is.
+
1407  outfile = filename_template;
+
1408  }
+
1409 
+
1410  std::ofstream fd(outfile);
+
1411 
+
1412  if(_format_dump.size() > 0) {
+
1413 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
1414  fd << format(_format_dump, "", basename(getenv("_")),
+
1415  stage, file, func,
+
1416  line, scope.depth );
+
1417 #else
+
1418  fd << format(_format_dump, "",
+
1419  stage, file, func,
+
1420  line );
+
1421 #endif
+
1422  fd << sep; // sep after comment line.
+
1423  }
+
1424 
+
1425  std::copy(container_begin, container_end,
+
1426  std::ostream_iterator<typename In::value_type>(fd, sep.c_str()));
+
1427 
+
1428  fd.close();
+
1429  } // if scopes.matches
+
1430  }
+
1431 
+
1433 };
+
1434 
+
1437 #else // not WITH_CLUTCHLOG
+
1438 
+
1439 
+
1440 /**********************************************************************
+
1441  * Fake implementation
+
1442  **********************************************************************/
+
1443 
+
1444 // Equivalent class with empty methods, will be optimized out
+
1445 // while allowing to actually have calls implemented without WITH_CLUTCHLOG guards.
+
1446 #pragma GCC diagnostic push
+
1447 #pragma GCC diagnostic ignored "-Wreturn-type"
+
1448 class clutchlog
+
1449 {
+
1450  public:
+
1451  static clutchlog& logger() {}
+
1452  enum level {critical=0, error=1, warning=2, progress=3, note=4, info=5, debug=6, xdebug=7};
+
1453  class fmt {
+
1454  public:
+
1455  enum class ansi { colors_16, colors_256, colors_16M} mode;
+
1456  enum class typo { reset, bold, underline, inverse, none} style;
+
1457  enum class fg { black, red, green, yellow, blue, magenta, cyan, white, bright_black, bright_red, bright_green, bright_yellow, bright_blue, bright_magenta, bright_cyan, bright_white, none} fore;
+
1458  enum class bg { black, red, green, yellow, blue, magenta, cyan, white, bright_black, bright_red, bright_green, bright_yellow, bright_blue, bright_magenta, bright_cyan, bright_white, none } back;
+
1459  protected:
+
1460  friend std::ostream& operator<<(std::ostream&, const std::tuple<fg,bg,typo>&) {}
+
1461  friend std::ostream& operator<<(std::ostream&, const typo&) {}
+
1462  protected:
+
1463  struct color {
+
1464  ansi mode;
+
1465  enum class ground { fore, back } type;
+
1466  color(ansi a, ground g) : mode(a), type(g) {}
+
1467  virtual bool is_set() const = 0;
+
1468  virtual std::ostream& print_on( std::ostream&) const = 0;
+
1469  friend std::ostream& operator<<(std::ostream&, const color&) {}
+
1470  };
+
1471  struct color_256 : public color {
+
1472  short index;
+
1473  color_256(ground t) : color(ansi::colors_256, t), index(-1) {}
+
1474  color_256(ground t, const short i) : color(ansi::colors_256, t), index(i) {}
+
1475  bool is_set() const {}
+
1476  std::ostream& print_on( std::ostream&) const {}
+
1477  };
+
1478  struct fg_256 : public color_256 {
+
1479  fg_256() : color_256(ground::fore) {}
+
1480  fg_256(const short f) : color_256(ground::fore, f) {}
+
1481  fg_256(const fg&) : color_256(ground::fore, -1) {}
+
1482  } fore_256;
+
1483  struct bg_256 : public color_256 {
+
1484  bg_256() : color_256(ground::back) {}
+
1485  bg_256(const short b) : color_256(ground::back, b) {}
+
1486  bg_256(const bg&) : color_256(ground::back, -1) {}
+
1487  } back_256;
+
1488  struct color_16M : public color {
+
1489  short red, green, blue;
+
1490  color_16M(ground t) : color(ansi::colors_16M, t), red(-1), green(-1), blue(-1) {}
+
1491  color_16M(ground t, short r, short g, short b) : color(ansi::colors_16M, t), red(r), green(g), blue(b) {}
+
1492  color_16M(ground t, const std::string&) : color(ansi::colors_16M, t) {}
+
1493  bool is_set() const {return red > -1 and green > -1 and blue > -1;}
+
1494  std::ostream& print_on( std::ostream&) const {}
+
1495  };
+
1496  struct fg_16M : public color_16M {
+
1497  fg_16M() : color_16M(ground::fore) {}
+
1498  fg_16M(short r, short g, short b) : color_16M(ground::fore, r,g,b) {}
+
1499  fg_16M(const std::string& srgb) : color_16M(ground::fore, srgb) {}
+
1500  fg_16M(const fg&) : color_16M(ground::fore, -1,-1,-1) {}
+
1501  } fore_16M;
+
1502  struct bg_16M : public color_16M {
+
1503  bg_16M() : color_16M(ground::back) {}
+
1504  bg_16M(short r, short g, short b) : color_16M(ground::back, r,g,b) {}
+
1505  bg_16M(const std::string& srgb) : color_16M(ground::back, srgb) {}
+
1506  bg_16M(const bg&) : color_16M(ground::back, -1,-1,-1) {}
+
1507  } back_16M;
+
1508  public:
+
1509  fmt() : mode(ansi::colors_16), style(typo::none), fore(fg::none), back(bg::none) {}
+
1510  fmt( fg f, bg b = bg::none, typo s = typo::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
+
1511  fmt( fg f, typo s , bg b = bg::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
+
1512  fmt( bg b, fg f = fg::none, typo s = typo::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
+
1513  fmt( bg b, typo s , fg f = fg::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
+
1514  fmt(typo s, fg f = fg::none, bg b = bg::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
+
1515  fmt(typo s, bg b , fg f = fg::none) : mode(ansi::colors_16), style(s), fore(f), back(b) {}
+
1516  fmt(fg_256 f, bg_256 b, typo s = typo::none) : mode(ansi::colors_256), style(s), fore_256(f), back_256(b) {}
+
1517  fmt(fg_256 f, typo s = typo::none) : mode(ansi::colors_256), style(s), fore_256(f), back_256(bg::none) {}
+
1518  fmt(fg, bg_256 b, typo s = typo::none) : mode(ansi::colors_256), style(s), fore_256(fg::none), back_256(b) {}
+
1519  fmt(const short fr, const short fg, const short fb,
+
1520  const short gr, const short gg, const short gb,
+
1521  typo s = typo::none)
+
1522  : mode(ansi::colors_16M), style(s), fore_16M(fr,fg,fb), back_16M(gr,gg,gb) {}
+
1523  fmt(fg,
+
1524  const short gr, const short gg, const short gb,
+
1525  typo s = typo::none)
+
1526  : mode(ansi::colors_16M), style(s), fore_16M(fg::none), back_16M(gr,gg,gb) {}
+
1527  fmt(const short fr, const short fg, const short fb,
+
1528  bg, typo s = typo::none)
+
1529  : mode(ansi::colors_16M), style(s), fore_16M(fr,fg,fb), back_16M(bg::none) {}
+
1530  fmt(const short fr, const short fg, const short fb,
+
1531  typo s = typo::none)
+
1532  : mode(ansi::colors_16M), style(s), fore_16M(fr,fg,fb), back_16M(bg::none) {}
+
1533 
+
1534  fmt(const std::string& f, const std::string& b, typo s = typo::none)
+
1535  : mode(ansi::colors_16M), style(s), fore_16M(f), back_16M(b) {}
+
1536  fmt(fg, const std::string& b, typo s = typo::none)
+
1537  : mode(ansi::colors_16M), style(s), fore_16M(fg::none), back_16M(b) {}
+
1538  fmt(const std::string& f, bg, typo s = typo::none)
+
1539  : mode(ansi::colors_16M), style(s), fore_16M(f), back_16M(bg::none) {}
+
1540  fmt(const std::string& f, typo s = typo::none)
+
1541  : mode(ansi::colors_16M), style(s), fore_16M(f), back_16M(bg::none) {}
+
1542  protected:
+
1543  std::ostream& print_on( std::ostream&) const {}
+
1544  public:
+
1545  friend std::ostream& operator<<(std::ostream&, const fmt&) {}
+
1546  std::string operator()( const std::string&) const {}
+
1547  std::string str() const {}
+
1548  static fmt hash( const std::string&, const std::vector<fmt>) {}
+
1549  };
+
1550  public:
+
1551  clutchlog(clutchlog const&) = delete;
+
1552  void operator=(clutchlog const&) = delete;
+
1553  private:
+
1554  clutchlog() {}
+
1555  protected:
+
1556  struct scope_t {};
+
1557  scope_t locate(
+
1558  const level&,
+
1559  const std::string&,
+
1560  const std::string&,
+
1561  const size_t
+
1562  ) const
+
1563  {}
+
1564  public:
+
1565  void format(const std::string&) {}
+
1566  std::string format() const {}
+
1567 
+
1568  void format_comment(const std::string&) {}
+
1569  std::string format_comment() const {}
+
1570 
+
1571  void out(std::ostream&) {}
+
1572  std::ostream& out() {}
+
1573 
+
1574 #if CLUTCHLOG_HAVE_UNIX_SYSINFO == 1
+
1575  void depth(size_t) {}
+
1576  size_t depth() const {}
+
1577 
+
1578  void depth_mark(const std::string) {}
+
1579  std::string depth_mark() const {}
+
1580  void strip_calls(const size_t) {}
+
1581  size_t strip_calls() const {}
+
1582 #endif
+
1583 #if CLUTCHLOG_HAVE_UNIX_SYSIOCTL == 1
+
1584  void hfill_mark(const char) {}
+
1585  char hfill_mark() const {}
+
1586  void hfill_fmt(fmt) {}
+
1587  fmt hfill_fmt() const {}
+
1588  void hfill_min(const size_t) {}
+
1589  size_t hfill_min() {}
+
1590  void hfill_max(const size_t) {}
+
1591  size_t hfill_max() {}
+
1592 #endif
+
1593  void filehash_styles(std::vector<fmt> ) {}
+
1594  void funchash_styles(std::vector<fmt> ) {}
+
1595  void depth_styles(std::vector<fmt>) {}
+
1596 
+
1597  void threshold(level) {}
+
1598  void threshold(const std::string&) {}
+
1599  level threshold() const {}
+
1600  const std::map<std::string,level> levels() const {}
+
1601  level level_of(const std::string) {}
+
1602 
+
1603  void file(std::string) {}
+
1604  void func(std::string) {}
+
1605  void line(std::string) {}
+
1606 
+
1607 #pragma GCC diagnostic push
+
1608 #pragma GCC diagnostic ignored "-Wunused-parameter"
+
1609  void location(
+
1610  const std::string&,
+
1611  const std::string& in_function=".*",
+
1612  const std::string& in_line=".*"
+
1613  )
+
1614  {}
+
1615 #pragma GCC diagnostic pop
+
1616  template<class ... FMT>
+
1617  void style(level, FMT...) {}
+
1618  void style(level, fmt) {}
+
1619  fmt style(level) const {}
+
1620  public:
+
1621  std::string replace(
+
1622  const std::string&,
+
1623  const std::string&,
+
1624  const std::string&
+
1625  ) const
+
1626  {}
+
1627 
+
1628  std::string replace(
+
1629  const std::string&,
+
1630  const std::string&,
+
1631  const size_t
+
1632  ) const
+
1633  {}
+
1634 
+
1635  std::string format(
+
1636  std::string,
+
1637  const std::string&,
+ +
1639  const std::string&,
+
1640 #endif
+
1641  const level&,
+
1642  const std::string&,
+
1643  const std::string&,
+
1644  const size_t
+ +
1646  ,
+
1647  const size_t
+
1648 #endif
+
1649  ) const
+
1650  {}
+
1651 
+
1652  void log(
+
1653  const level&,
+
1654  const std::string&,
+
1655  const std::string&, const std::string&, size_t
+
1656  ) const
+
1657  {}
+
1658 
+
1659  template<class In>
+
1660  void dump(
+
1661  const level&,
+
1662  const In, const In,
+
1663  const std::string&, const std::string&, size_t,
+
1664  const std::string&,
+
1665  const std::string
+
1666  ) const
+
1667  {}
+
1668 };
+
1669 #pragma GCC diagnostic pop
+
1670 #endif // WITH_CLUTCHLOG
+
1671 
+
1672 #endif // CLUTCHLOG_H
friend std::ostream & operator<<(std::ostream &os, const std::tuple< fg, bg, typo > &fbs)
Output stream operator for a 3-tuple of 16-colors mode tags.
Definition: clutchlog.h:433
static std::string default_depth_mark
Default mark for stack depth.
Definition: clutchlog.h:249
-
std::string _format_log
Current format of the standard output.
Definition: clutchlog.h:899
+
std::string _format_log
Current format of the standard output.
Definition: clutchlog.h:913
color_16M(ground t, const std::string &srgb)
Hex triplet string constructor.
Definition: clutchlog.h:601
-
std::map< level, fmt > _level_fmt
Dictionary of level identifier to their format.
Definition: clutchlog.h:897
-
void log(const level &stage, const std::string &what, const std::string &file, const std::string &func, size_t line) const
Print a log message IF the location matches the given one.
Definition: clutchlog.h:1301
+
void depth_styles(std::vector< fmt > styles)
Set the styles for value-dependant depth formatting.
Definition: clutchlog.h:1045
+
std::map< level, fmt > _level_fmt
Dictionary of level identifier to their format.
Definition: clutchlog.h:911
+
void log(const level &stage, const std::string &what, const std::string &file, const std::string &func, size_t line) const
Print a log message IF the location matches the given one.
Definition: clutchlog.h:1356
enum clutchlog::fmt::bg back
Background color.
+
std::vector< fmt > _funchash_fmts
List of candidate format objects for value-dependant function name styling.
Definition: clutchlog.h:946
std::string str() const
Return the formatting code as a string.
Definition: clutchlog.h:807
Foreground in 256-colors mode.
Definition: clutchlog.h:539
-
void line(std::string line)
Set the regular expression filtering the line location.
Definition: clutchlog.h:1029
+
void line(std::string line)
Set the regular expression filtering the line location.
Definition: clutchlog.h:1075
friend std::ostream & operator<<(std::ostream &os, const color &c)
Print the actually encoded escaped color sequence on the given stream.
Definition: clutchlog.h:493
friend std::ostream & operator<<(std::ostream &os, const typo &s)
Output stream operator for a typo tag alone, in 16-colors mode.
Definition: clutchlog.h:455
static std::string dump_default_format
Default format of the comment line in file dump.
Definition: clutchlog.h:235
-
void out(std::ostream &out)
Set the output stream on which to print.
Definition: clutchlog.h:956
+
void out(std::ostream &out)
Set the output stream on which to print.
Definition: clutchlog.h:977
bool is_set() const
Returns true if the underying representation encodes an existing color.
Definition: clutchlog.h:623
fg_16M(const fg &)
Conversion constructor from 16-colors mode.
Definition: clutchlog.h:659
static std::string dump_default_sep
Default item separator for dump.
Definition: clutchlog.h:242
-
std::string format(std::string row, const std::string &what, const level &stage, const std::string &file, const std::string &func, const size_t line) const
Substitute all tags in the format string with the corresponding information and apply the style corre...
Definition: clutchlog.h:1213
+
std::string format(std::string row, const std::string &what, const level &stage, const std::string &file, const std::string &func, const size_t line) const
Substitute all tags in the format string with the corresponding information and apply the style corre...
Definition: clutchlog.h:1259
Background in 256-colors mode.
Definition: clutchlog.h:556
#define CLUTCHLOG_DEFAULT_DEPTH_MARK
Compile-time default mark for stack depth.
Definition: clutchlog.h:246
static unsigned int default_strip_calls
Number of call stack levels to remove from depth display by default.
Definition: clutchlog.h:256
static size_t default_hfill_min
Default minimum width (number of characters) at which to fill for right-aligning the right part of me...
Definition: clutchlog.h:277
-
std::string replace(const std::string &form, const std::string &mark, const std::string &tag) const
Replace mark by tag in form.
Definition: clutchlog.h:1137
+
std::string replace(const std::string &form, const std::string &mark, const std::string &tag) const
Replace mark by tag in form.
Definition: clutchlog.h:1183
color_256(ground t)
Constructor.
Definition: clutchlog.h:518
clutchlog::fmt::bg_16M back_16M
Current background in 16M-colors mode.
Interface class for colors representation.
Definition: clutchlog.h:470
@ colors_16
16 colors mode.
background in 256-colors mode.
Definition: clutchlog.h:664
static char default_hfill_char
Default character used as a filling for right-align the right part of messages with "{hfill}".
Definition: clutchlog.h:263
-
bool matches
Everything is compatible.
Definition: clutchlog.h:1064
+
bool matches
Everything is compatible.
Definition: clutchlog.h:1110
enum clutchlog::fmt::typo style
Typographic style.
Abstract base class for 16M colors objects (24-bits ANSI).
Definition: clutchlog.h:573
fg_256(const fg &)
Conversion constructor from 16-colors mode.
Definition: clutchlog.h:551
-
void format_comment(const std::string &format)
Set the template string for dumps.
Definition: clutchlog.h:951
+
void format_comment(const std::string &format)
Set the template string for dumps.
Definition: clutchlog.h:972
bg_16M(const std::string &srgb)
Hex triplet string constructor.
Definition: clutchlog.h:684
-
void file(std::string file)
Set the regular expression filtering the file location.
Definition: clutchlog.h:1025
-
scope_t locate(const level &stage, const std::string &file, const std::string &func, const size_t line) const
Gather information on the current location of the call.
Definition: clutchlog.h:1086
+
void file(std::string file)
Set the regular expression filtering the file location.
Definition: clutchlog.h:1071
+
scope_t locate(const level &stage, const std::string &file, const std::string &func, const size_t line) const
Gather information on the current location of the call.
Definition: clutchlog.h:1132
clutchlog::fmt::fg_16M fore_16M
Current foreground in 16M-colors mode.
Abstract base class for 256 colors objects (8-bits ANSI).
Definition: clutchlog.h:509
fmt()
Empty constructor, only useful for a no-op formatter.
Definition: clutchlog.h:697
-
void style(level stage, fmt style)
Set the style (color and typo) of the given log level, passing a fmt instance.
Definition: clutchlog.h:1050
-
void threshold(level l)
Set the log level (below which logs are not printed) with an identifier.
Definition: clutchlog.h:1002
-
level threshold() const
Get the log level below which logs are not printed.
Definition: clutchlog.h:1006
+
void style(level stage, fmt style)
Set the style (color and typo) of the given log level, passing a fmt instance.
Definition: clutchlog.h:1096
+
void threshold(level l)
Set the log level (below which logs are not printed) with an identifier.
Definition: clutchlog.h:1048
+
level threshold() const
Get the log level below which logs are not printed.
Definition: clutchlog.h:1052
virtual bool is_set() const =0
Should return true if the underying representation encodes an existing color.
-
std::map< level, std::string > _level_short
dictionary of level identifier to their 4-letters representation.
Definition: clutchlog.h:895
+
std::map< level, std::string > _level_short
dictionary of level identifier to their 4-letters representation.
Definition: clutchlog.h:909
level
Available log levels.
Definition: clutchlog.h:303
color_256(ground t, const short i)
Constructor.
Definition: clutchlog.h:525
std::ostream & print_on(std::ostream &os) const
Print the color index on the given stream.
Definition: clutchlog.h:531
color_16M(ground t)
Constructor.
Definition: clutchlog.h:582
static size_t default_hfill_max
Default maximum width (number of characters) for which to fill for right-aligning the right part of m...
Definition: clutchlog.h:275
-
scope_t()
Constructor.
Definition: clutchlog.h:1074
-
std::regex _in_func
Current function location filter.
Definition: clutchlog.h:925
+
void funchash_styles(std::vector< fmt > styles)
Set the candidate styles for value-dependant function name formatting.
Definition: clutchlog.h:1036
+
scope_t()
Constructor.
Definition: clutchlog.h:1120
+
std::regex _in_func
Current function location filter.
Definition: clutchlog.h:939
static std::string default_format
Default format of the messages.
Definition: clutchlog.h:213
bg_16M(short r, short g, short b)
Numeric triplet constructor.
Definition: clutchlog.h:676
static clutchlog & logger()
Get the logger instance.
Definition: clutchlog.h:296
Foreground in 256-colors mode.
Definition: clutchlog.h:634
-
void dump(const level &stage, const In container_begin, const In container_end, const std::string &file, const std::string &func, size_t line, const std::string &filename_template="dump_{n}.dat", const std::string sep=dump_default_sep) const
Dump a serializable container after a comment line with log information.
Definition: clutchlog.h:1326
+
void dump(const level &stage, const In container_begin, const In container_end, const std::string &file, const std::string &func, size_t line, const std::string &filename_template="dump_{n}.dat", const std::string sep=dump_default_sep) const
Dump a serializable container after a comment line with log information.
Definition: clutchlog.h:1381
clutchlog::fmt::fg_256 fore_256
Current foreground in 256-colors mode.
enum clutchlog::fmt::fg fore
Foreground color.
+
void filehash_styles(std::vector< fmt > styles)
Set the candidate styles for value-dependant file name formatting.
Definition: clutchlog.h:1028
enum clutchlog::fmt::color::ground type
Type of color (foreground or background).
Color and style formatter for ANSI terminal escape sequences.
Definition: clutchlog.h:366
short index
The encoded color index in 4-bits ANSI.
Definition: clutchlog.h:513
bg_256()
Empty constructor: no color.
Definition: clutchlog.h:558
-
void func(std::string func)
Set the regular expression filtering the function location.
Definition: clutchlog.h:1027
-
std::string format() const
Get the template string.
Definition: clutchlog.h:948
-
std::regex _in_file
Current file location filter.
Definition: clutchlog.h:923
-
void style(level stage, FMT... styles)
Set the style (color and typo) of the given log level.
Definition: clutchlog.h:1048
+
void func(std::string func)
Set the regular expression filtering the function location.
Definition: clutchlog.h:1073
+
std::string format() const
Get the template string.
Definition: clutchlog.h:969
+
std::regex _in_file
Current file location filter.
Definition: clutchlog.h:937
+
void style(level stage, FMT... styles)
Set the style (color and typo) of the given log level.
Definition: clutchlog.h:1094
bg_256(const bg &)
Conversion constructor from 16-colors mode.
Definition: clutchlog.h:568
fg_16M()
Empty constructor: no color.
Definition: clutchlog.h:636
-
level level_of(const std::string name)
Return the log level tag corresponding to the given pre-configured name.
Definition: clutchlog.h:1014
-
const std::map< level, std::string > _level_word
Dictionary of level identifier to their string representation.
Definition: clutchlog.h:891
+
level level_of(const std::string name)
Return the log level tag corresponding to the given pre-configured name.
Definition: clutchlog.h:1060
+
const std::map< level, std::string > _level_word
Dictionary of level identifier to their string representation.
Definition: clutchlog.h:905
std::string operator()(const std::string &msg) const
Format the given string with the currently encoded format.
Definition: clutchlog.h:795
color_16M(ground t, short r, short g, short b)
Numeric triplet constructor.
Definition: clutchlog.h:591
std::ostream & print_on(std::ostream &os) const
Print the color RGB triplet on the given stream.
Definition: clutchlog.h:626
bg
Background color codes.
Definition: clutchlog.h:411
#define CLUTCHLOG_DEFAULT_FORMAT
Compile-time default format of the messages (debug mode: with absolute location).
Definition: clutchlog.h:198
-
std::regex _in_line
Current line location filter.
Definition: clutchlog.h:927
+
std::regex _in_line
Current line location filter.
Definition: clutchlog.h:941
fg_256(const short f)
Constructor.
Definition: clutchlog.h:546
@ colors_256
256 colors mode.
enum clutchlog::fmt::ansi mode
Current ANSI color mode.
-
std::string replace(const std::string &form, const std::string &mark, const size_t tag) const
Replace mark by tag in form, converting tag to its string representation first.
Definition: clutchlog.h:1202
-
std::string format_comment() const
Get the template string for dumps.
Definition: clutchlog.h:953
+
std::string replace(const std::string &form, const std::string &mark, const size_t tag) const
Replace mark by tag in form, converting tag to its string representation first.
Definition: clutchlog.h:1248
+
std::string format_comment() const
Get the template string for dumps.
Definition: clutchlog.h:974
fg_256()
Empty constructor: no color.
Definition: clutchlog.h:541
@ colors_16M
16 millions ("true") colors mode.
-
std::string _format_dump
Current format of the file output.
Definition: clutchlog.h:901
+
std::string _format_dump
Current format of the file output.
Definition: clutchlog.h:915
#define CLUTCHDUMP_DEFAULT_SEP
Compile-time default item separator for dump.
Definition: clutchlog.h:239
bg_256(const short b)
Constructor.
Definition: clutchlog.h:563
ground
Codes for representing foreground or background.
Definition: clutchlog.h:474
-
Structure holding a location matching.
Definition: clutchlog.h:1062
+
Structure holding a location matching.
Definition: clutchlog.h:1108
#define CLUTCHLOG_DEFAULT_HFILL_MARK
Character used as a filling for right-align the right part of messages with "{hfill}".
Definition: clutchlog.h:260
std::ostream & print_on(std::ostream &os) const
Print the currently encoded format escape code on the given output stream.
Definition: clutchlog.h:746
bool is_set() const
Returns true if the underying representation encodes an existing color.
Definition: clutchlog.h:528
-
std::ostream * _out
Standard output.
Definition: clutchlog.h:913
-
std::ostream & out()
Get the output stream on which to print.
Definition: clutchlog.h:958
-
void threshold(const std::string &l)
Set the log level (below which logs are not printed) with a string.
Definition: clutchlog.h:1004
+
std::ostream * _out
Standard output.
Definition: clutchlog.h:927
+
std::ostream & out()
Get the output stream on which to print.
Definition: clutchlog.h:979
+
void threshold(const std::string &l)
Set the log level (below which logs are not printed) with a string.
Definition: clutchlog.h:1050
virtual std::ostream & print_on(std::ostream &os) const =0
Should print the underlying representation on the given stream.
-
const std::map< std::string, level > & levels() const
Get the map of available log levels string representations toward their identifier....
Definition: clutchlog.h:1008
-
size_t _strip_calls
Current number of call stack levels to remove from depth display.
Definition: clutchlog.h:889
-
level stage
Current log level.
Definition: clutchlog.h:1066
-
bool there
Location is compatible.
Definition: clutchlog.h:1072
+
const std::map< std::string, level > & levels() const
Get the map of available log levels string representations toward their identifier....
Definition: clutchlog.h:1054
+
size_t _strip_calls
Current number of call stack levels to remove from depth display.
Definition: clutchlog.h:903
+
level stage
Current log level.
Definition: clutchlog.h:1112
+
bool there
Location is compatible.
Definition: clutchlog.h:1118
fg_16M(const std::string &srgb)
Hex triplet string constructor.
Definition: clutchlog.h:654
#define CLUTCHLOG_STRIP_CALLS
Compile-time number of call stack levels to remove from depth display by default.
Definition: clutchlog.h:253
friend std::ostream & operator<<(std::ostream &os, const fmt &fmt)
Output stream overload.
Definition: clutchlog.h:780
bg_16M(const bg &)
Conversion constructor from 16-colors mode.
Definition: clutchlog.h:689
bg_16M()
Empty constructor: no color.
Definition: clutchlog.h:666
-
std::map< std::string, level > _word_level
Dictionary of level string to their identifier.
Definition: clutchlog.h:893
-
level _stage
Current log level.
Definition: clutchlog.h:921
-
fmt style(level stage) const
Get the configured fmt instance of the given log level.
Definition: clutchlog.h:1052
+
std::map< std::string, level > _word_level
Dictionary of level string to their identifier.
Definition: clutchlog.h:907
+
level _stage
Current log level.
Definition: clutchlog.h:935
+
fmt style(level stage) const
Get the configured fmt instance of the given log level.
Definition: clutchlog.h:1098
typo
Typographic style codes.
Definition: clutchlog.h:379
-
void location(const std::string &in_file, const std::string &in_function=".*", const std::string &in_line=".*")
Set the regular expressions filtering the location.
Definition: clutchlog.h:1032
+
void location(const std::string &in_file, const std::string &in_function=".*", const std::string &in_line=".*")
Set the regular expressions filtering the location.
Definition: clutchlog.h:1078
#define CLUTCHLOG_HAVE_UNIX_SYSINFO
True if POSIX headers necessary for stack depth management are available.
Definition: clutchlog.h:33
+
std::vector< fmt > _filehash_fmts
List of candidate format objects for value-dependant file name styling.
Definition: clutchlog.h:944
The single class which holds everything.
Definition: clutchlog.h:177
ansi
ANSI code configuring the available number of colors.
Definition: clutchlog.h:369
fg_16M(short r, short g, short b)
Numeric triplet constructor.
Definition: clutchlog.h:646
diff --git a/docs/dir_000001_000000.html b/docs/dir_000001_000000.html index ab77e39..36c505f 100644 --- a/docs/dir_000001_000000.html +++ b/docs/dir_000001_000000.html @@ -28,7 +28,7 @@ @@ -84,7 +84,7 @@ $(document).ready(function(){initNavTree('dir_59425e443f801f1f2fd8bbe4959a3ccf.h
-

tests → clutchlog Relation

Public Attributes

diff --git a/docs/classes.html b/docs/classes.html index 481e2b2..551abe0 100644 --- a/docs/classes.html +++ b/docs/classes.html @@ -28,7 +28,7 @@
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
File in testsIncludes file in clutchlog
t-assert.cppclutchlog.h
t-color.cppclutchlog.h
t-color16M.cppclutchlog.h
t-color256.cppclutchlog.h
t-demo-extravagant.cppclutchlog.h
t-demo.cppclutchlog.h
t-dump.cppclutchlog.h
t-fmt-constructors.cppclutchlog.h
t-log.cppclutchlog.h
t-one-line-if.cppclutchlog.h
+

tests → clutchlog Relation

File in testsIncludes file in clutchlog
t-assert.cppclutchlog.h
t-color.cppclutchlog.h
t-color16M.cppclutchlog.h
t-color256.cppclutchlog.h
t-demo-extravagant.cppclutchlog.h
t-demo.cppclutchlog.h
t-dump.cppclutchlog.h
t-fmt-constructors.cppclutchlog.h
t-hash-color.cppclutchlog.h
t-log.cppclutchlog.h
t-one-line-if.cppclutchlog.h
diff --git a/docs/files_dup.js b/docs/files_dup.js index 3108fba..bda5401 100644 --- a/docs/files_dup.js +++ b/docs/files_dup.js @@ -9,6 +9,7 @@ var files_dup = [ "t-demo.cpp", "t-demo_8cpp_source.html", null ], [ "t-dump.cpp", "t-dump_8cpp_source.html", null ], [ "t-fmt-constructors.cpp", "t-fmt-constructors_8cpp_source.html", null ], + [ "t-hash-color.cpp", "t-hash-color_8cpp_source.html", null ], [ "t-log.cpp", "t-log_8cpp_source.html", null ], [ "t-one-line-if.cpp", "t-one-line-if_8cpp_source.html", null ] ]; \ No newline at end of file diff --git a/docs/functions.html b/docs/functions.html index 00430ab..b3457b8 100644 --- a/docs/functions.html +++ b/docs/functions.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
@@ -87,12 +87,18 @@ $(document).ready(function(){initNavTree('functions.html',''); initResizable();
Here is a list of all documented class members with links to the class documentation for each member:

- _ -

diff --git a/docs/functions_enum.html b/docs/functions_enum.html index 4eb658e..c268733 100644 --- a/docs/functions_enum.html +++ b/docs/functions_enum.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/functions_func.html b/docs/functions_func.html index b634613..955935c 100644 --- a/docs/functions_func.html +++ b/docs/functions_func.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
@@ -110,6 +110,9 @@ $(document).ready(function(){initNavTree('functions_func.html',''); initResizabl

- d -

diff --git a/docs/functions_rela.html b/docs/functions_rela.html index 60eb878..42d1030 100644 --- a/docs/functions_rela.html +++ b/docs/functions_rela.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/functions_vars.html b/docs/functions_vars.html index 189a389..c5212bc 100644 --- a/docs/functions_vars.html +++ b/docs/functions_vars.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
@@ -87,12 +87,18 @@ $(document).ready(function(){initNavTree('functions_vars.html',''); initResizabl  

- _ -

-

Clutchlog is a spatial logging system that targets versatile debugging. It allows to (de)clutch messages for a given: log level, source code location or call stack depth.

+

Clutchlog is a spatial logging system that targets versatile debugging. It allows to (de)clutch messages for a given: log level, source code location or call stack depth.

Example of a real-life log session (as seen in the frictionlesser software): A log screen capture with full details, showing colored messages and location.

-

Demo showing fancy styling: A log screen capture showing fancy coloring of text lines.

+

Example of a real-life log session (as seen in the frictionlesser software):

+

A log screen capture with full details, showing colored messages and location.

+

Demo showing fancy styling:

+

A log screen capture showing fancy coloring of text lines.

For more detailled examples, see the "Usage" sections below and the tests directory.

Rationale

@@ -468,7 +470,8 @@ System-dependent horizontal fill

Clutchlog sets the CLUTCHLOG_HAVE_UNIX_SYSIOCTL to 1 if the headers are available, and to 0 if they are not. You can make portable code using something like:

#if CLUTCHLOG_HAVE_UNIX_SYSIOCTL == 1
log.hfill_mark( '_' );
#endif
-

+

If you use unicode characters in your template, the horizontal width will not be computed properly, resulting in incorrectly right-aligned lines. Solving this would require the use of third-party libraries, making portability more difficult.

+

Dependencies

Some colors/styles may not be supported by some exotic terminal emulators.

Clutchlog needs C++-17 with the filesystem feature. You may need to indicate -std=c++17 -lstdc++fs to some compilers.

diff --git a/docs/inherits.html b/docs/inherits.html index bc1964f..e1e575e 100644 --- a/docs/inherits.html +++ b/docs/inherits.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/modules.html b/docs/modules.html index 644e787..dbe00cd 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/navtreedata.js b/docs/navtreedata.js index 098ec9a..46bc971 100644 --- a/docs/navtreedata.js +++ b/docs/navtreedata.js @@ -81,7 +81,7 @@ var NAVTREE = var NAVTREEINDEX = [ "annotated.html", -"structclutchlog_1_1fmt_1_1color__16_m.html#a55e39e7eb3ced3095c00914eff52470c" +"structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0" ]; var SYNCONMSG = 'click to disable panel synchronisation'; diff --git a/docs/navtreeindex0.js b/docs/navtreeindex0.js index 7f3b999..0226a22 100644 --- a/docs/navtreeindex0.js +++ b/docs/navtreeindex0.js @@ -3,91 +3,97 @@ var NAVTREEINDEX0 = "annotated.html":[2,0], "classclutchlog.html":[1,2,0], "classclutchlog.html#a03b145e36f15435a640bb5a885d9f642":[1,2,0,7], -"classclutchlog.html#a08e8a817a75a4e9f0159231c941e0dae":[1,2,0,45], +"classclutchlog.html#a08310b92e86687349e70f56f9ac1d656":[1,2,0,18], +"classclutchlog.html#a08e8a817a75a4e9f0159231c941e0dae":[1,2,0,48], "classclutchlog.html#a0906d74275cedcd403da94879764815e":[1,2,0,6], -"classclutchlog.html#a0c4ac57601e6f8d146fd5cc060968ecc":[1,2,0,34], -"classclutchlog.html#a10064493c22f5c03b502a42d814c5c5c":[1,2,0,21], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928":[1,2,0,54], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928a023c3e8a55ddfd140d3e3268dd6221e9":[1,2,0,54,1], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928a6efd7b28f876c0473c6dfeae82fc8e05":[1,2,0,54,3], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928a911f5ef324f37061f68a239577e0d0bd":[1,2,0,54,6], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928aa1ea607f2bfe5db06f1cf2bd991f7dc1":[1,2,0,54,5], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928aab4ce1a501f9cbe27666659d3b19534c":[1,2,0,54,2], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928abba74b810831c7753777e6dcc0c0f4e2":[1,2,0,54,7], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928af332f31a368c931f79b9b64d55fc7701":[1,2,0,54,0], -"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928af89a12aab2a73ea31e19b04ecadbdc0d":[1,2,0,54,4], -"classclutchlog.html#a130c4f12eacbd2028102838fe16b734e":[1,2,0,52], -"classclutchlog.html#a1896f6c4b8597e3e76ff93970bd85167":[1,2,0,49], -"classclutchlog.html#a1a8cb6411726133208f5a2f2cb42d468":[1,2,0,38], +"classclutchlog.html#a095e1545a2085ac623e4af19364fea7f":[1,2,0,58], +"classclutchlog.html#a0c4ac57601e6f8d146fd5cc060968ecc":[1,2,0,37], +"classclutchlog.html#a10064493c22f5c03b502a42d814c5c5c":[1,2,0,24], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928":[1,2,0,59], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928a023c3e8a55ddfd140d3e3268dd6221e9":[1,2,0,59,1], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928a6efd7b28f876c0473c6dfeae82fc8e05":[1,2,0,59,3], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928a911f5ef324f37061f68a239577e0d0bd":[1,2,0,59,6], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928aa1ea607f2bfe5db06f1cf2bd991f7dc1":[1,2,0,59,5], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928aab4ce1a501f9cbe27666659d3b19534c":[1,2,0,59,2], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928abba74b810831c7753777e6dcc0c0f4e2":[1,2,0,59,7], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928af332f31a368c931f79b9b64d55fc7701":[1,2,0,59,0], +"classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928af89a12aab2a73ea31e19b04ecadbdc0d":[1,2,0,59,4], +"classclutchlog.html#a130c4f12eacbd2028102838fe16b734e":[1,2,0,55], +"classclutchlog.html#a1896f6c4b8597e3e76ff93970bd85167":[1,2,0,52], +"classclutchlog.html#a1a8cb6411726133208f5a2f2cb42d468":[1,2,0,41], "classclutchlog.html#a2144abe4ec6f630126b6490908b5f924":[1,2,0,12], -"classclutchlog.html#a229fd61519f1245282440120f2d45fb5":[1,2,0,37], -"classclutchlog.html#a23dbb98f0d3c5cc21c232cde16cf317a":[1,2,0,32], -"classclutchlog.html#a356df86455409193792b6ed550dfd09e":[1,2,0,42], -"classclutchlog.html#a3cb0e4f43a4cadf1966001ad7c9861f4":[1,2,0,16], -"classclutchlog.html#a41757198b29862832a14472a9e5e24c6":[1,2,0,53], -"classclutchlog.html#a4831f44fd5ade102e57320632095934d":[1,2,0,27], -"classclutchlog.html#a4ebdfcded6c56262676bf6926d63fc96":[1,2,0,28], -"classclutchlog.html#a5a9a98c3528117223ceff22bc6bee5f7":[1,2,0,41], -"classclutchlog.html#a5f4ddb57ce42e8be86a7c7d269f7bae5":[1,2,0,48], -"classclutchlog.html#a63308e8deae3cfec6801318203494143":[1,2,0,33], +"classclutchlog.html#a229fd61519f1245282440120f2d45fb5":[1,2,0,40], +"classclutchlog.html#a23dbb98f0d3c5cc21c232cde16cf317a":[1,2,0,35], +"classclutchlog.html#a2a334e009533744b52f01ef240a59e9d":[1,2,0,57], +"classclutchlog.html#a356df86455409193792b6ed550dfd09e":[1,2,0,45], +"classclutchlog.html#a3cb0e4f43a4cadf1966001ad7c9861f4":[1,2,0,19], +"classclutchlog.html#a41757198b29862832a14472a9e5e24c6":[1,2,0,56], +"classclutchlog.html#a4831f44fd5ade102e57320632095934d":[1,2,0,30], +"classclutchlog.html#a4ebdfcded6c56262676bf6926d63fc96":[1,2,0,31], +"classclutchlog.html#a5a9a98c3528117223ceff22bc6bee5f7":[1,2,0,44], +"classclutchlog.html#a5f4ddb57ce42e8be86a7c7d269f7bae5":[1,2,0,51], +"classclutchlog.html#a63308e8deae3cfec6801318203494143":[1,2,0,36], "classclutchlog.html#a656c277e074b64728cca871f2b484d1c":[1,2,0,10], -"classclutchlog.html#a6666106b9e5c239b6ae5e0d1091648e3":[1,2,0,24], +"classclutchlog.html#a6666106b9e5c239b6ae5e0d1091648e3":[1,2,0,27], "classclutchlog.html#a6c6ab42a1df147e6c2d115bc36ec8266":[1,2,0,15], -"classclutchlog.html#a76eb34537b634aadb75e255f7887eeb6":[1,2,0,39], -"classclutchlog.html#a7a7738eaad114bfa870121412fe23ad9":[1,2,0,17], -"classclutchlog.html#a7c6e3fc082bc6f55d50131ed2b32e81e":[1,2,0,47], +"classclutchlog.html#a76eb34537b634aadb75e255f7887eeb6":[1,2,0,42], +"classclutchlog.html#a7a7738eaad114bfa870121412fe23ad9":[1,2,0,20], +"classclutchlog.html#a7c6e3fc082bc6f55d50131ed2b32e81e":[1,2,0,50], "classclutchlog.html#a7fd7c7bd3668c537061c314a619a336d":[1,2,0,14], -"classclutchlog.html#a972f895c70edc335f3018a2c8971d59e":[1,2,0,29], -"classclutchlog.html#aa26c6b81ebaeb9e9daa3457e3a3d17c9":[1,2,0,23], +"classclutchlog.html#a972f895c70edc335f3018a2c8971d59e":[1,2,0,32], +"classclutchlog.html#aa26c6b81ebaeb9e9daa3457e3a3d17c9":[1,2,0,26], "classclutchlog.html#aa8d0a569ed3623ce36c5e567ec2d1ad5":[1,2,0,13], -"classclutchlog.html#ab1c377a376e6772fe1746ff7147c125f":[1,2,0,43], -"classclutchlog.html#ab45287cc9c14217904a13aff49573732":[1,2,0,18], -"classclutchlog.html#ab805ac5c33885459f9f752518a4aa735":[1,2,0,46], -"classclutchlog.html#abd4625bf211bfbaa30d9c126fa3d7888":[1,2,0,44], -"classclutchlog.html#abd692cca9a2e772e7c9d6531bb3c7761":[1,2,0,31], -"classclutchlog.html#ac3ec55057b9c734b66f169bf43dbd591":[1,2,0,25], -"classclutchlog.html#ac95630bfe9cf547d2b7c4b3430eaedc1":[1,2,0,40], -"classclutchlog.html#ace879554298e6e6e36dafef330c27be8":[1,2,0,35], -"classclutchlog.html#acebed8c9df9204f22bf8488e62e1cedd":[1,2,0,20], +"classclutchlog.html#ab1c377a376e6772fe1746ff7147c125f":[1,2,0,46], +"classclutchlog.html#ab45287cc9c14217904a13aff49573732":[1,2,0,21], +"classclutchlog.html#ab805ac5c33885459f9f752518a4aa735":[1,2,0,49], +"classclutchlog.html#abd4625bf211bfbaa30d9c126fa3d7888":[1,2,0,47], +"classclutchlog.html#abd692cca9a2e772e7c9d6531bb3c7761":[1,2,0,34], +"classclutchlog.html#ac3ec55057b9c734b66f169bf43dbd591":[1,2,0,28], +"classclutchlog.html#ac95630bfe9cf547d2b7c4b3430eaedc1":[1,2,0,43], +"classclutchlog.html#acbb50f6306ebb3c8b0d1a52e7f327416":[1,2,0,17], +"classclutchlog.html#ace879554298e6e6e36dafef330c27be8":[1,2,0,38], +"classclutchlog.html#acebed8c9df9204f22bf8488e62e1cedd":[1,2,0,23], "classclutchlog.html#acfaceb77da01503b432644a3efaee4fa":[1,2,0,8], -"classclutchlog.html#ad1cfa9945c3f7f98fe8ce724c627d0d6":[1,2,0,26], -"classclutchlog.html#ad32b5a0274dc03ee0004f67ba58b2447":[1,2,0,22], -"classclutchlog.html#aded03528f34d9000f618419c482c5042":[1,2,0,51], -"classclutchlog.html#ae90d5a1a428587ad67b38b2ea4ca9fa2":[1,2,0,30], -"classclutchlog.html#aeb60684c89bcef5aa9273075c21cc993":[1,2,0,50], +"classclutchlog.html#ad1cfa9945c3f7f98fe8ce724c627d0d6":[1,2,0,29], +"classclutchlog.html#ad32b5a0274dc03ee0004f67ba58b2447":[1,2,0,25], +"classclutchlog.html#aded03528f34d9000f618419c482c5042":[1,2,0,54], +"classclutchlog.html#ae17db5808155fbc6dc48b4727d0c3abf":[1,2,0,16], +"classclutchlog.html#ae90d5a1a428587ad67b38b2ea4ca9fa2":[1,2,0,33], +"classclutchlog.html#aeb60684c89bcef5aa9273075c21cc993":[1,2,0,53], "classclutchlog.html#aef653a9744a72a889ca8163269bb781e":[1,2,0,9], -"classclutchlog.html#af898bffe23b125245e338d7495c76d45":[1,2,0,36], +"classclutchlog.html#af898bffe23b125245e338d7495c76d45":[1,2,0,39], "classclutchlog.html#afc53dbca51d0e2322a21899d0c571a80":[1,2,0,11], -"classclutchlog.html#aff3aa09fb60f7d6dc688c028d3834d8a":[1,2,0,19], +"classclutchlog.html#aff3aa09fb60f7d6dc688c028d3834d8a":[1,2,0,22], "classclutchlog_1_1fmt.html":[1,3,0], "classclutchlog_1_1fmt.html#a00feba2b1539529df70e39d615a05941":[1,3,0,10], "classclutchlog_1_1fmt.html#a04f3ba5f6fe81955dca4492a6d259f1c":[1,3,0,7], "classclutchlog_1_1fmt.html#a0923d7d400f6753d4dae124b71eb5023":[1,3,0,15], -"classclutchlog_1_1fmt.html#a0aa57cdd56ccc79c7750921ab534b205":[1,3,0,24], +"classclutchlog_1_1fmt.html#a0aa57cdd56ccc79c7750921ab534b205":[1,3,0,25], "classclutchlog_1_1fmt.html#a0b607e343b6813b99eafca1fdfec9cd0":[1,3,0,18], "classclutchlog_1_1fmt.html#a13453c0b5dbc19d9b510dcdc0352b443":[1,3,0,3], "classclutchlog_1_1fmt.html#a194201eb8a400ef13df3e833b8788cdc":[1,3,0,9], -"classclutchlog_1_1fmt.html#a2bb0fde65fcd264393e102314dd1610b":[1,3,0,25], +"classclutchlog_1_1fmt.html#a2bb0fde65fcd264393e102314dd1610b":[1,3,0,26], "classclutchlog_1_1fmt.html#a2df8f77f58dc9272c94982c4d2275581":[1,3,0,12], "classclutchlog_1_1fmt.html#a357c93593867f67d9fef562ca07c7dcc":[1,3,0,11], "classclutchlog_1_1fmt.html#a407506bc02ed3f91d88b3df630e54959":[1,3,0,0], -"classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502":[1,3,0,32], -"classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1844e5aae3a3eefc500c545e3c35bcfa":[1,3,0,32,2], -"classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1e7cced329549fc4c2393381f068062e":[1,3,0,32,0], -"classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a7a3c32a8827eb17435511b4c7a429749":[1,3,0,32,1], +"classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502":[1,3,0,33], +"classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1844e5aae3a3eefc500c545e3c35bcfa":[1,3,0,33,2], +"classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1e7cced329549fc4c2393381f068062e":[1,3,0,33,0], +"classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a7a3c32a8827eb17435511b4c7a429749":[1,3,0,33,1], "classclutchlog_1_1fmt.html#a506718883842dbce3659f42cdf79e52c":[1,3,0,16], "classclutchlog_1_1fmt.html#a63b29eb5862a30a194b0256f2ee554a6":[1,3,0,13], "classclutchlog_1_1fmt.html#a65856874070ec0865b3a5b9aeb0e4f3d":[1,3,0,4], "classclutchlog_1_1fmt.html#a6cc6126d113fc0647ed3acbf29cdc425":[1,3,0,1], "classclutchlog_1_1fmt.html#a6d1cc4abe822a569a2624b0829de5dd0":[1,3,0,17], -"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89":[1,3,0,33], -"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89a334c4a4c42fdb79d7ebc3e73b517e6f8":[1,3,0,33,4], -"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89a69dcab4a73aeec2113f69b61e6263da8":[1,3,0,33,1], -"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89a6dc7b4483f8c2c701a48e42db552806d":[1,3,0,33,2], -"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89a86266ee937d97f812a8e57d22b62ee29":[1,3,0,33,0], -"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89aa91c78e040f7b9d158f381e197f8beb4":[1,3,0,33,3], +"classclutchlog_1_1fmt.html#a822ded10ae1b0c82f7330481aa4bb64f":[1,3,0,21], +"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89":[1,3,0,34], +"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89a334c4a4c42fdb79d7ebc3e73b517e6f8":[1,3,0,34,4], +"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89a69dcab4a73aeec2113f69b61e6263da8":[1,3,0,34,1], +"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89a6dc7b4483f8c2c701a48e42db552806d":[1,3,0,34,2], +"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89a86266ee937d97f812a8e57d22b62ee29":[1,3,0,34,0], +"classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89aa91c78e040f7b9d158f381e197f8beb4":[1,3,0,34,3], "classclutchlog_1_1fmt.html#a9458703ab8a3c9fbc6b801011b43f16d":[1,3,0,14], -"classclutchlog_1_1fmt.html#a96849ba427feac3a2eeaa1165e3845da":[1,3,0,23], +"classclutchlog_1_1fmt.html#a96849ba427feac3a2eeaa1165e3845da":[1,3,0,24], "classclutchlog_1_1fmt.html#a99b3a05ddf6fa341cee6cb1e5dffc159":[1,3,0,5], "classclutchlog_1_1fmt.html#ab588e04e982b0b26ec979773d51ad41b":[1,3,0,20], "classclutchlog_1_1fmt.html#ac49c883e3dd17832749cc092b74a9f56":[1,3,0,8], @@ -112,14 +118,14 @@ var NAVTREEINDEX0 = "group___default_config.html":[1,0], "group___default_config.html#ga27b613c6727857a7cbcd0165d862034e":[3,0,0,12], "group___default_config.html#ga27b613c6727857a7cbcd0165d862034e":[1,0,2], -"group___default_config.html#ga45c4c964fad4ad1641d5c9c28c4645b9":[1,0,4], "group___default_config.html#ga45c4c964fad4ad1641d5c9c28c4645b9":[3,0,0,14], +"group___default_config.html#ga45c4c964fad4ad1641d5c9c28c4645b9":[1,0,4], "group___default_config.html#ga4eda0c1bfded5df89351b8ce8b9c2805":[3,0,0,16], "group___default_config.html#ga4eda0c1bfded5df89351b8ce8b9c2805":[1,0,6], "group___default_config.html#ga524c16f280d92ee8ab683162c9ce01fa":[1,0,1], "group___default_config.html#ga524c16f280d92ee8ab683162c9ce01fa":[3,0,0,11], -"group___default_config.html#ga54d29e956575e1c731eab5406135c5df":[1,0,3], "group___default_config.html#ga54d29e956575e1c731eab5406135c5df":[3,0,0,13], +"group___default_config.html#ga54d29e956575e1c731eab5406135c5df":[1,0,3], "group___default_config.html#ga8564be479b948ee3052b61783c66d415":[3,0,0,5], "group___default_config.html#ga8564be479b948ee3052b61783c66d415":[1,0,0], "group___default_config.html#ga98f30d814d4913a8a7c93a8793f49adf":[3,0,0,15], @@ -127,10 +133,10 @@ var NAVTREEINDEX0 = "group___formating.html":[1,3], "group___main.html":[1,2], "group___use_macros.html":[1,1], -"group___use_macros.html#ga572e3aa19d8b39e3ed0b9e91961104c2":[1,1,2], "group___use_macros.html#ga572e3aa19d8b39e3ed0b9e91961104c2":[3,0,0,8], -"group___use_macros.html#ga6f86187e2b35e7e1907d688f504a197d":[3,0,0,7], +"group___use_macros.html#ga572e3aa19d8b39e3ed0b9e91961104c2":[1,1,2], "group___use_macros.html#ga6f86187e2b35e7e1907d688f504a197d":[1,1,1], +"group___use_macros.html#ga6f86187e2b35e7e1907d688f504a197d":[3,0,0,7], "group___use_macros.html#ga9f77cee4f853e582262930c9c17f90ae":[1,1,3], "group___use_macros.html#ga9f77cee4f853e582262930c9c17f90ae":[3,0,0,9], "group___use_macros.html#gaaf2e85e1153e6c88b458dd49e3c37c73":[1,1,4], @@ -138,64 +144,64 @@ var NAVTREEINDEX0 = "group___use_macros.html#gae8911119d726a43b77f5781cb5a72813":[1,1,0], "group___use_macros.html#gae8911119d726a43b77f5781cb5a72813":[3,0,0,6], "group__colors16.html":[1,4], -"group__colors16.html#ga1cf3e27e4041250ffea0a6d58010da1e":[1,3,0,35], +"group__colors16.html#ga1cf3e27e4041250ffea0a6d58010da1e":[1,3,0,36], "group__colors16.html#ga1cf3e27e4041250ffea0a6d58010da1e":[1,4,1], +"group__colors16.html#ga379b0af834c7c561edc5c1e3a3427a33":[1,3,0,23], "group__colors16.html#ga379b0af834c7c561edc5c1e3a3427a33":[1,4,5], -"group__colors16.html#ga379b0af834c7c561edc5c1e3a3427a33":[1,3,0,22], -"group__colors16.html#ga4662a3ec3577c6a575a2c734636ed8a0":[1,3,0,34], "group__colors16.html#ga4662a3ec3577c6a575a2c734636ed8a0":[1,4,0], -"group__colors16.html#ga5a697f5ad3326ea25b139e25252b4cf7":[1,3,0,21], +"group__colors16.html#ga4662a3ec3577c6a575a2c734636ed8a0":[1,3,0,35], +"group__colors16.html#ga5a697f5ad3326ea25b139e25252b4cf7":[1,3,0,22], "group__colors16.html#ga5a697f5ad3326ea25b139e25252b4cf7":[1,4,4], -"group__colors16.html#ga8307a848fcf9ed929435b3e1f2b53401":[1,3,0,26], +"group__colors16.html#ga8307a848fcf9ed929435b3e1f2b53401":[1,3,0,27], "group__colors16.html#ga8307a848fcf9ed929435b3e1f2b53401":[1,4,2], -"group__colors16.html#ga86696b20e5b31c96ba592926efb324f3":[1,3,0,27], "group__colors16.html#ga86696b20e5b31c96ba592926efb324f3":[1,4,3], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea1ffd9e753c8054cc61456ac7fac1ac89":[1,3,0,35,0], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea334c4a4c42fdb79d7ebc3e73b517e6f8":[1,3,0,35,16], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea37553b57ad1d7f61b0c51f5a535f72bf":[1,3,0,35,13], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea48d6215903dff56238e52e8891380c8f":[1,3,0,35,4], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea4c2a4a7078da0ac6733464eacfd00f86":[1,3,0,35,5], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea6411532ba4971f378391776a9db629d3":[1,3,0,35,6], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea74474ae20bf3ef3bce6fd679194ce383":[1,3,0,35,8], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea75dd76d162b9554ec8b63736bc22d93e":[1,3,0,35,11], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea8b84c6e788e91a3a45b9dabedb160590":[1,3,0,35,9], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea9f27410725ab8cc8854a2769c7a516b8":[1,3,0,35,2], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eabd5b4652dffd84bab66529361d0c4974":[1,3,0,35,10], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eabda9643ac6601722a28f238714274da4":[1,3,0,35,1], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eac5b47880b4b2ec37179078d63a85def3":[1,3,0,35,12], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eacc69f9955c2bf916bb9a83f38141432f":[1,3,0,35,14], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ead487dd0b55dfcacdd920ccbdaeafa351":[1,3,0,35,3], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ead508fe45cecaf653904a0e774084bb5c":[1,3,0,35,7], -"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eada7527acf78cb4e7b582e8163a1f642a":[1,3,0,35,15], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a1ffd9e753c8054cc61456ac7fac1ac89":[1,3,0,34,0], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a334c4a4c42fdb79d7ebc3e73b517e6f8":[1,3,0,34,16], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a37553b57ad1d7f61b0c51f5a535f72bf":[1,3,0,34,13], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a48d6215903dff56238e52e8891380c8f":[1,3,0,34,4], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a4c2a4a7078da0ac6733464eacfd00f86":[1,3,0,34,5], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a6411532ba4971f378391776a9db629d3":[1,3,0,34,6], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a74474ae20bf3ef3bce6fd679194ce383":[1,3,0,34,8], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a75dd76d162b9554ec8b63736bc22d93e":[1,3,0,34,11], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a8b84c6e788e91a3a45b9dabedb160590":[1,3,0,34,9], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a9f27410725ab8cc8854a2769c7a516b8":[1,3,0,34,2], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0abd5b4652dffd84bab66529361d0c4974":[1,3,0,34,10], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0abda9643ac6601722a28f238714274da4":[1,3,0,34,1], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0ac5b47880b4b2ec37179078d63a85def3":[1,3,0,34,12], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0acc69f9955c2bf916bb9a83f38141432f":[1,3,0,34,14], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0ad487dd0b55dfcacdd920ccbdaeafa351":[1,3,0,34,3], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0ad508fe45cecaf653904a0e774084bb5c":[1,3,0,34,7], -"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0ada7527acf78cb4e7b582e8163a1f642a":[1,3,0,34,15], +"group__colors16.html#ga86696b20e5b31c96ba592926efb324f3":[1,3,0,28], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea1ffd9e753c8054cc61456ac7fac1ac89":[1,3,0,36,0], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea334c4a4c42fdb79d7ebc3e73b517e6f8":[1,3,0,36,16], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea37553b57ad1d7f61b0c51f5a535f72bf":[1,3,0,36,13], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea48d6215903dff56238e52e8891380c8f":[1,3,0,36,4], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea4c2a4a7078da0ac6733464eacfd00f86":[1,3,0,36,5], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea6411532ba4971f378391776a9db629d3":[1,3,0,36,6], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea74474ae20bf3ef3bce6fd679194ce383":[1,3,0,36,8], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea75dd76d162b9554ec8b63736bc22d93e":[1,3,0,36,11], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea8b84c6e788e91a3a45b9dabedb160590":[1,3,0,36,9], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ea9f27410725ab8cc8854a2769c7a516b8":[1,3,0,36,2], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eabd5b4652dffd84bab66529361d0c4974":[1,3,0,36,10], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eabda9643ac6601722a28f238714274da4":[1,3,0,36,1], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eac5b47880b4b2ec37179078d63a85def3":[1,3,0,36,12], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eacc69f9955c2bf916bb9a83f38141432f":[1,3,0,36,14], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ead487dd0b55dfcacdd920ccbdaeafa351":[1,3,0,36,3], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1ead508fe45cecaf653904a0e774084bb5c":[1,3,0,36,7], +"group__colors16.html#gga1cf3e27e4041250ffea0a6d58010da1eada7527acf78cb4e7b582e8163a1f642a":[1,3,0,36,15], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a1ffd9e753c8054cc61456ac7fac1ac89":[1,3,0,35,0], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a334c4a4c42fdb79d7ebc3e73b517e6f8":[1,3,0,35,16], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a37553b57ad1d7f61b0c51f5a535f72bf":[1,3,0,35,13], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a48d6215903dff56238e52e8891380c8f":[1,3,0,35,4], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a4c2a4a7078da0ac6733464eacfd00f86":[1,3,0,35,5], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a6411532ba4971f378391776a9db629d3":[1,3,0,35,6], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a74474ae20bf3ef3bce6fd679194ce383":[1,3,0,35,8], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a75dd76d162b9554ec8b63736bc22d93e":[1,3,0,35,11], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a8b84c6e788e91a3a45b9dabedb160590":[1,3,0,35,9], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0a9f27410725ab8cc8854a2769c7a516b8":[1,3,0,35,2], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0abd5b4652dffd84bab66529361d0c4974":[1,3,0,35,10], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0abda9643ac6601722a28f238714274da4":[1,3,0,35,1], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0ac5b47880b4b2ec37179078d63a85def3":[1,3,0,35,12], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0acc69f9955c2bf916bb9a83f38141432f":[1,3,0,35,14], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0ad487dd0b55dfcacdd920ccbdaeafa351":[1,3,0,35,3], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0ad508fe45cecaf653904a0e774084bb5c":[1,3,0,35,7], +"group__colors16.html#gga4662a3ec3577c6a575a2c734636ed8a0ada7527acf78cb4e7b582e8163a1f642a":[1,3,0,35,15], "group__colors256__16_m.html":[1,5], -"group__colors256__16_m.html#ga1d687af385957846034568c3a62d4ef0":[1,3,0,29], +"group__colors256__16_m.html#ga1d687af385957846034568c3a62d4ef0":[1,3,0,30], "group__colors256__16_m.html#ga1d687af385957846034568c3a62d4ef0":[1,5,8], "group__colors256__16_m.html#ga626c99eb11d1718d7a2a8bb3f079e6de":[1,5,9], -"group__colors256__16_m.html#ga626c99eb11d1718d7a2a8bb3f079e6de":[1,3,0,30], -"group__colors256__16_m.html#gaa2fcbb402dc2426d3720b8bc78a80ec0":[1,3,0,31], +"group__colors256__16_m.html#ga626c99eb11d1718d7a2a8bb3f079e6de":[1,3,0,31], "group__colors256__16_m.html#gaa2fcbb402dc2426d3720b8bc78a80ec0":[1,5,10], -"group__colors256__16_m.html#gad98fbe84ef338ded8425d56955825a2c":[1,3,0,28], +"group__colors256__16_m.html#gaa2fcbb402dc2426d3720b8bc78a80ec0":[1,3,0,32], "group__colors256__16_m.html#gad98fbe84ef338ded8425d56955825a2c":[1,5,7], +"group__colors256__16_m.html#gad98fbe84ef338ded8425d56955825a2c":[1,3,0,29], "hierarchy.html":[2,2], -"index.html":[0], "index.html":[], +"index.html":[0], "index.html#autotoc_md0":[0,0], "index.html#autotoc_md1":[0,1], "index.html#autotoc_md10":[0,3,4,0], @@ -243,11 +249,5 @@ var NAVTREEINDEX0 = "structclutchlog_1_1fmt_1_1color.html#a826e3d3eba925608442439d6bc3a95a6":[1,5,0,3], "structclutchlog_1_1fmt_1_1color.html#a96d7161ef1e7cc631ae670cd3f364603":[1,5,0,1], "structclutchlog_1_1fmt_1_1color.html#aa75e958436afe333924b6db3e5f0821f":[1,5,0,2], -"structclutchlog_1_1fmt_1_1color.html#aacbc3cd9447fdb7d51e02b29b5028a6b":[1,5,0,4], -"structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0":[1,5,0,6], -"structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0a469bba0a564235dfceede42db14f17b0":[1,5,0,6,1], -"structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0ae64e4c4fee28f9ca7301e4c7ff598e67":[1,5,0,6,0], -"structclutchlog_1_1fmt_1_1color__16_m.html":[1,5,4], -"structclutchlog_1_1fmt_1_1color__16_m.html#a19e1517a9afb75a4e6224f718ed11c61":[1,5,4,5], -"structclutchlog_1_1fmt_1_1color__16_m.html#a36d9cf42044fec34b7858142d86137d3":[1,5,4,1] +"structclutchlog_1_1fmt_1_1color.html#aacbc3cd9447fdb7d51e02b29b5028a6b":[1,5,0,4] }; diff --git a/docs/navtreeindex1.js b/docs/navtreeindex1.js index d5cfa15..5fec777 100644 --- a/docs/navtreeindex1.js +++ b/docs/navtreeindex1.js @@ -1,5 +1,11 @@ var NAVTREEINDEX1 = { +"structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0":[1,5,0,6], +"structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0a469bba0a564235dfceede42db14f17b0":[1,5,0,6,1], +"structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0ae64e4c4fee28f9ca7301e4c7ff598e67":[1,5,0,6,0], +"structclutchlog_1_1fmt_1_1color__16_m.html":[1,5,4], +"structclutchlog_1_1fmt_1_1color__16_m.html#a19e1517a9afb75a4e6224f718ed11c61":[1,5,4,5], +"structclutchlog_1_1fmt_1_1color__16_m.html#a36d9cf42044fec34b7858142d86137d3":[1,5,4,1], "structclutchlog_1_1fmt_1_1color__16_m.html#a55e39e7eb3ced3095c00914eff52470c":[1,5,4,2], "structclutchlog_1_1fmt_1_1color__16_m.html#a674910195e7bb14d78f0cf56c308a47e":[1,5,4,4], "structclutchlog_1_1fmt_1_1color__16_m.html#a780c11e42bb140732ffd37cf4eef9e1d":[1,5,4,3], @@ -34,6 +40,7 @@ var NAVTREEINDEX1 = "t-demo_8cpp_source.html":[3,0,6], "t-dump_8cpp_source.html":[3,0,7], "t-fmt-constructors_8cpp_source.html":[3,0,8], -"t-log_8cpp_source.html":[3,0,9], -"t-one-line-if_8cpp_source.html":[3,0,10] +"t-hash-color_8cpp_source.html":[3,0,9], +"t-log_8cpp_source.html":[3,0,10], +"t-one-line-if_8cpp_source.html":[3,0,11] }; diff --git a/docs/search/all_0.js b/docs/search/all_0.js index ce60da2..e6209f7 100644 --- a/docs/search/all_0.js +++ b/docs/search/all_0.js @@ -1,15 +1,17 @@ var searchData= [ - ['_5fformat_5fdump_0',['_format_dump',['../classclutchlog.html#a5f4ddb57ce42e8be86a7c7d269f7bae5',1,'clutchlog']]], - ['_5fformat_5flog_1',['_format_log',['../classclutchlog.html#a7c6e3fc082bc6f55d50131ed2b32e81e',1,'clutchlog']]], - ['_5fin_5ffile_2',['_in_file',['../classclutchlog.html#aded03528f34d9000f618419c482c5042',1,'clutchlog']]], - ['_5fin_5ffunc_3',['_in_func',['../classclutchlog.html#a130c4f12eacbd2028102838fe16b734e',1,'clutchlog']]], - ['_5fin_5fline_4',['_in_line',['../classclutchlog.html#a41757198b29862832a14472a9e5e24c6',1,'clutchlog']]], - ['_5flevel_5ffmt_5',['_level_fmt',['../classclutchlog.html#ab805ac5c33885459f9f752518a4aa735',1,'clutchlog']]], - ['_5flevel_5fshort_6',['_level_short',['../classclutchlog.html#a08e8a817a75a4e9f0159231c941e0dae',1,'clutchlog']]], - ['_5flevel_5fword_7',['_level_word',['../classclutchlog.html#ab1c377a376e6772fe1746ff7147c125f',1,'clutchlog']]], - ['_5fout_8',['_out',['../classclutchlog.html#a1896f6c4b8597e3e76ff93970bd85167',1,'clutchlog']]], - ['_5fstage_9',['_stage',['../classclutchlog.html#aeb60684c89bcef5aa9273075c21cc993',1,'clutchlog']]], - ['_5fstrip_5fcalls_10',['_strip_calls',['../classclutchlog.html#a356df86455409193792b6ed550dfd09e',1,'clutchlog']]], - ['_5fword_5flevel_11',['_word_level',['../classclutchlog.html#abd4625bf211bfbaa30d9c126fa3d7888',1,'clutchlog']]] + ['_5ffilehash_5ffmts_0',['_filehash_fmts',['../classclutchlog.html#a2a334e009533744b52f01ef240a59e9d',1,'clutchlog']]], + ['_5fformat_5fdump_1',['_format_dump',['../classclutchlog.html#a5f4ddb57ce42e8be86a7c7d269f7bae5',1,'clutchlog']]], + ['_5fformat_5flog_2',['_format_log',['../classclutchlog.html#a7c6e3fc082bc6f55d50131ed2b32e81e',1,'clutchlog']]], + ['_5ffunchash_5ffmts_3',['_funchash_fmts',['../classclutchlog.html#a095e1545a2085ac623e4af19364fea7f',1,'clutchlog']]], + ['_5fin_5ffile_4',['_in_file',['../classclutchlog.html#aded03528f34d9000f618419c482c5042',1,'clutchlog']]], + ['_5fin_5ffunc_5',['_in_func',['../classclutchlog.html#a130c4f12eacbd2028102838fe16b734e',1,'clutchlog']]], + ['_5fin_5fline_6',['_in_line',['../classclutchlog.html#a41757198b29862832a14472a9e5e24c6',1,'clutchlog']]], + ['_5flevel_5ffmt_7',['_level_fmt',['../classclutchlog.html#ab805ac5c33885459f9f752518a4aa735',1,'clutchlog']]], + ['_5flevel_5fshort_8',['_level_short',['../classclutchlog.html#a08e8a817a75a4e9f0159231c941e0dae',1,'clutchlog']]], + ['_5flevel_5fword_9',['_level_word',['../classclutchlog.html#ab1c377a376e6772fe1746ff7147c125f',1,'clutchlog']]], + ['_5fout_10',['_out',['../classclutchlog.html#a1896f6c4b8597e3e76ff93970bd85167',1,'clutchlog']]], + ['_5fstage_11',['_stage',['../classclutchlog.html#aeb60684c89bcef5aa9273075c21cc993',1,'clutchlog']]], + ['_5fstrip_5fcalls_12',['_strip_calls',['../classclutchlog.html#a356df86455409193792b6ed550dfd09e',1,'clutchlog']]], + ['_5fword_5flevel_13',['_word_level',['../classclutchlog.html#abd4625bf211bfbaa30d9c126fa3d7888',1,'clutchlog']]] ]; diff --git a/docs/search/all_1.js b/docs/search/all_1.js index 0204185..eafa84d 100644 --- a/docs/search/all_1.js +++ b/docs/search/all_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['ansi_12',['ansi',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502',1,'clutchlog::fmt']]] + ['ansi_14',['ansi',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/all_10.js b/docs/search/all_10.js index 5b59010..d9e996a 100644 --- a/docs/search/all_10.js +++ b/docs/search/all_10.js @@ -1,4 +1,4 @@ var searchData= [ - ['with_5fclutchlog_95',['WITH_CLUTCHLOG',['../clutchlog_8h.html#a5c126962abcc7a40e504a6fc3abdfcc4',1,'clutchlog.h']]] + ['with_5fclutchlog_100',['WITH_CLUTCHLOG',['../clutchlog_8h.html#a5c126962abcc7a40e504a6fc3abdfcc4',1,'clutchlog.h']]] ]; diff --git a/docs/search/all_2.js b/docs/search/all_2.js index 957e26b..86a1b84 100644 --- a/docs/search/all_2.js +++ b/docs/search/all_2.js @@ -1,9 +1,9 @@ var searchData= [ - ['back_13',['back',['../group__colors16.html#ga86696b20e5b31c96ba592926efb324f3',1,'clutchlog::fmt']]], - ['back_5f16m_14',['back_16M',['../group__colors256__16_m.html#gaa2fcbb402dc2426d3720b8bc78a80ec0',1,'clutchlog::fmt']]], - ['back_5f256_15',['back_256',['../group__colors256__16_m.html#ga1d687af385957846034568c3a62d4ef0',1,'clutchlog::fmt']]], - ['bg_16',['bg',['../group__colors16.html#ga1cf3e27e4041250ffea0a6d58010da1e',1,'clutchlog::fmt']]], - ['bg_5f16m_17',['bg_16M',['../structclutchlog_1_1fmt_1_1bg__16_m.html',1,'clutchlog::fmt::bg_16M'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#a363c314ab6a8aa22951b5500d7a78ad0',1,'clutchlog::fmt::bg_16M::bg_16M()'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#ace018922ae99f32b48bf5cacaec91501',1,'clutchlog::fmt::bg_16M::bg_16M(short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#adcd5bd1e69e76e3b36015cf687693c97',1,'clutchlog::fmt::bg_16M::bg_16M(const std::string &srgb)'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#a68f8cb4ab78a1cfb3b7b8e1e95bee11d',1,'clutchlog::fmt::bg_16M::bg_16M(const bg &)']]], - ['bg_5f256_18',['bg_256',['../structclutchlog_1_1fmt_1_1bg__256.html',1,'clutchlog::fmt::bg_256'],['../structclutchlog_1_1fmt_1_1bg__256.html#a0d244a542b6b98a373f8b1f9e92a6a90',1,'clutchlog::fmt::bg_256::bg_256()'],['../structclutchlog_1_1fmt_1_1bg__256.html#a83c663b1a9f00ba7ba7649c9c5605fad',1,'clutchlog::fmt::bg_256::bg_256(const short b)'],['../structclutchlog_1_1fmt_1_1bg__256.html#a096d302be7373acaaf225644683408bd',1,'clutchlog::fmt::bg_256::bg_256(const bg &)']]] + ['back_15',['back',['../group__colors16.html#ga86696b20e5b31c96ba592926efb324f3',1,'clutchlog::fmt']]], + ['back_5f16m_16',['back_16M',['../group__colors256__16_m.html#gaa2fcbb402dc2426d3720b8bc78a80ec0',1,'clutchlog::fmt']]], + ['back_5f256_17',['back_256',['../group__colors256__16_m.html#ga1d687af385957846034568c3a62d4ef0',1,'clutchlog::fmt']]], + ['bg_18',['bg',['../group__colors16.html#ga1cf3e27e4041250ffea0a6d58010da1e',1,'clutchlog::fmt']]], + ['bg_5f16m_19',['bg_16M',['../structclutchlog_1_1fmt_1_1bg__16_m.html',1,'clutchlog::fmt::bg_16M'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#a363c314ab6a8aa22951b5500d7a78ad0',1,'clutchlog::fmt::bg_16M::bg_16M()'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#ace018922ae99f32b48bf5cacaec91501',1,'clutchlog::fmt::bg_16M::bg_16M(short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#adcd5bd1e69e76e3b36015cf687693c97',1,'clutchlog::fmt::bg_16M::bg_16M(const std::string &srgb)'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#a68f8cb4ab78a1cfb3b7b8e1e95bee11d',1,'clutchlog::fmt::bg_16M::bg_16M(const bg &)']]], + ['bg_5f256_20',['bg_256',['../structclutchlog_1_1fmt_1_1bg__256.html',1,'clutchlog::fmt::bg_256'],['../structclutchlog_1_1fmt_1_1bg__256.html#a0d244a542b6b98a373f8b1f9e92a6a90',1,'clutchlog::fmt::bg_256::bg_256()'],['../structclutchlog_1_1fmt_1_1bg__256.html#a83c663b1a9f00ba7ba7649c9c5605fad',1,'clutchlog::fmt::bg_256::bg_256(const short b)'],['../structclutchlog_1_1fmt_1_1bg__256.html#a096d302be7373acaaf225644683408bd',1,'clutchlog::fmt::bg_256::bg_256(const bg &)']]] ]; diff --git a/docs/search/all_3.js b/docs/search/all_3.js index 120e246..bb78083 100644 --- a/docs/search/all_3.js +++ b/docs/search/all_3.js @@ -1,27 +1,27 @@ var searchData= [ - ['clutchcode_19',['CLUTCHCODE',['../group___use_macros.html#gaaf2e85e1153e6c88b458dd49e3c37c73',1,'clutchlog.h']]], - ['clutchdump_20',['CLUTCHDUMP',['../group___use_macros.html#ga572e3aa19d8b39e3ed0b9e91961104c2',1,'clutchlog.h']]], - ['clutchdump_5fdefault_5fformat_21',['CLUTCHDUMP_DEFAULT_FORMAT',['../group___default_config.html#ga27b613c6727857a7cbcd0165d862034e',1,'clutchlog.h']]], - ['clutchdump_5fdefault_5fsep_22',['CLUTCHDUMP_DEFAULT_SEP',['../group___default_config.html#ga54d29e956575e1c731eab5406135c5df',1,'clutchlog.h']]], - ['clutchfunc_23',['CLUTCHFUNC',['../group___use_macros.html#ga9f77cee4f853e582262930c9c17f90ae',1,'clutchlog.h']]], - ['clutchloc_24',['CLUTCHLOC',['../group___use_macros.html#gae8911119d726a43b77f5781cb5a72813',1,'clutchlog.h']]], - ['clutchlog_25',['clutchlog',['../classclutchlog.html',1,'clutchlog'],['../group___use_macros.html#ga6f86187e2b35e7e1907d688f504a197d',1,'CLUTCHLOG(): clutchlog.h']]], - ['clutchlog_2eh_26',['clutchlog.h',['../clutchlog_8h.html',1,'']]], - ['clutchlog_5fdefault_5fdepth_5fbuilt_5fnodebug_27',['CLUTCHLOG_DEFAULT_DEPTH_BUILT_NODEBUG',['../group___default_config.html#ga8564be479b948ee3052b61783c66d415',1,'clutchlog.h']]], - ['clutchlog_5fdefault_5fdepth_5fmark_28',['CLUTCHLOG_DEFAULT_DEPTH_MARK',['../group___default_config.html#ga45c4c964fad4ad1641d5c9c28c4645b9',1,'clutchlog.h']]], - ['clutchlog_5fdefault_5fformat_29',['CLUTCHLOG_DEFAULT_FORMAT',['../group___default_config.html#ga524c16f280d92ee8ab683162c9ce01fa',1,'clutchlog.h']]], - ['clutchlog_5fdefault_5fhfill_5fmark_30',['CLUTCHLOG_DEFAULT_HFILL_MARK',['../group___default_config.html#ga4eda0c1bfded5df89351b8ce8b9c2805',1,'clutchlog.h']]], - ['clutchlog_5fh_31',['CLUTCHLOG_H',['../clutchlog_8h.html#a0acf7d306292cdee864356f0b433cc16',1,'clutchlog.h']]], - ['clutchlog_5fhave_5funix_5fsysinfo_32',['CLUTCHLOG_HAVE_UNIX_SYSINFO',['../clutchlog_8h.html#a6bbcf13504687db4dbe0474931d867fb',1,'clutchlog.h']]], - ['clutchlog_5fhave_5funix_5fsysioctl_33',['CLUTCHLOG_HAVE_UNIX_SYSIOCTL',['../clutchlog_8h.html#a6bddd1e1be320823da0d6b1d5cef7817',1,'clutchlog.h']]], - ['clutchlog_5fstrip_5fcalls_34',['CLUTCHLOG_STRIP_CALLS',['../group___default_config.html#ga98f30d814d4913a8a7c93a8793f49adf',1,'clutchlog.h']]], - ['color_35',['color',['../structclutchlog_1_1fmt_1_1color.html',1,'clutchlog::fmt::color'],['../structclutchlog_1_1fmt_1_1color.html#a741d0165287350d8fcacb1f472ce5dac',1,'clutchlog::fmt::color::color()']]], - ['color_5f16m_36',['color_16M',['../structclutchlog_1_1fmt_1_1color__16_m.html',1,'clutchlog::fmt::color_16M'],['../structclutchlog_1_1fmt_1_1color__16_m.html#aea10e881fb9b570267f5751fb67c4282',1,'clutchlog::fmt::color_16M::color_16M(ground t)'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a36d9cf42044fec34b7858142d86137d3',1,'clutchlog::fmt::color_16M::color_16M(ground t, short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a55e39e7eb3ced3095c00914eff52470c',1,'clutchlog::fmt::color_16M::color_16M(ground t, const std::string &srgb)']]], - ['color_5f256_37',['color_256',['../structclutchlog_1_1fmt_1_1color__256.html',1,'clutchlog::fmt::color_256'],['../structclutchlog_1_1fmt_1_1color__256.html#a12fdff3c5c4edbf952aaa31519f0171c',1,'clutchlog::fmt::color_256::color_256(ground t)'],['../structclutchlog_1_1fmt_1_1color__256.html#a1b68065b35141c018b33c3f2c45f5726',1,'clutchlog::fmt::color_256::color_256(ground t, const short i)']]], - ['colors_20management_20in_2016_20colors_20mode_20_284_2dbits_20ansi_29_2e_38',['Colors management in 16 colors mode (4-bits ANSI).',['../group__colors16.html',1,'']]], - ['colors_5f16_39',['colors_16',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1e7cced329549fc4c2393381f068062e',1,'clutchlog::fmt']]], - ['colors_5f16m_40',['colors_16M',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1844e5aae3a3eefc500c545e3c35bcfa',1,'clutchlog::fmt']]], - ['colors_5f256_41',['colors_256',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a7a3c32a8827eb17435511b4c7a429749',1,'clutchlog::fmt']]], - ['clutchlog_20—_20versatile_20_28de_29clutchable_20spatial_20logging_42',['Clutchlog — versatile (de)clutchable spatial logging',['../index.html',1,'']]] + ['clutchcode_21',['CLUTCHCODE',['../group___use_macros.html#gaaf2e85e1153e6c88b458dd49e3c37c73',1,'clutchlog.h']]], + ['clutchdump_22',['CLUTCHDUMP',['../group___use_macros.html#ga572e3aa19d8b39e3ed0b9e91961104c2',1,'clutchlog.h']]], + ['clutchdump_5fdefault_5fformat_23',['CLUTCHDUMP_DEFAULT_FORMAT',['../group___default_config.html#ga27b613c6727857a7cbcd0165d862034e',1,'clutchlog.h']]], + ['clutchdump_5fdefault_5fsep_24',['CLUTCHDUMP_DEFAULT_SEP',['../group___default_config.html#ga54d29e956575e1c731eab5406135c5df',1,'clutchlog.h']]], + ['clutchfunc_25',['CLUTCHFUNC',['../group___use_macros.html#ga9f77cee4f853e582262930c9c17f90ae',1,'clutchlog.h']]], + ['clutchloc_26',['CLUTCHLOC',['../group___use_macros.html#gae8911119d726a43b77f5781cb5a72813',1,'clutchlog.h']]], + ['clutchlog_27',['clutchlog',['../classclutchlog.html',1,'clutchlog'],['../group___use_macros.html#ga6f86187e2b35e7e1907d688f504a197d',1,'CLUTCHLOG(): clutchlog.h']]], + ['clutchlog_2eh_28',['clutchlog.h',['../clutchlog_8h.html',1,'']]], + ['clutchlog_5fdefault_5fdepth_5fbuilt_5fnodebug_29',['CLUTCHLOG_DEFAULT_DEPTH_BUILT_NODEBUG',['../group___default_config.html#ga8564be479b948ee3052b61783c66d415',1,'clutchlog.h']]], + ['clutchlog_5fdefault_5fdepth_5fmark_30',['CLUTCHLOG_DEFAULT_DEPTH_MARK',['../group___default_config.html#ga45c4c964fad4ad1641d5c9c28c4645b9',1,'clutchlog.h']]], + ['clutchlog_5fdefault_5fformat_31',['CLUTCHLOG_DEFAULT_FORMAT',['../group___default_config.html#ga524c16f280d92ee8ab683162c9ce01fa',1,'clutchlog.h']]], + ['clutchlog_5fdefault_5fhfill_5fmark_32',['CLUTCHLOG_DEFAULT_HFILL_MARK',['../group___default_config.html#ga4eda0c1bfded5df89351b8ce8b9c2805',1,'clutchlog.h']]], + ['clutchlog_5fh_33',['CLUTCHLOG_H',['../clutchlog_8h.html#a0acf7d306292cdee864356f0b433cc16',1,'clutchlog.h']]], + ['clutchlog_5fhave_5funix_5fsysinfo_34',['CLUTCHLOG_HAVE_UNIX_SYSINFO',['../clutchlog_8h.html#a6bbcf13504687db4dbe0474931d867fb',1,'clutchlog.h']]], + ['clutchlog_5fhave_5funix_5fsysioctl_35',['CLUTCHLOG_HAVE_UNIX_SYSIOCTL',['../clutchlog_8h.html#a6bddd1e1be320823da0d6b1d5cef7817',1,'clutchlog.h']]], + ['clutchlog_5fstrip_5fcalls_36',['CLUTCHLOG_STRIP_CALLS',['../group___default_config.html#ga98f30d814d4913a8a7c93a8793f49adf',1,'clutchlog.h']]], + ['color_37',['color',['../structclutchlog_1_1fmt_1_1color.html',1,'clutchlog::fmt::color'],['../structclutchlog_1_1fmt_1_1color.html#a741d0165287350d8fcacb1f472ce5dac',1,'clutchlog::fmt::color::color()']]], + ['color_5f16m_38',['color_16M',['../structclutchlog_1_1fmt_1_1color__16_m.html',1,'clutchlog::fmt::color_16M'],['../structclutchlog_1_1fmt_1_1color__16_m.html#aea10e881fb9b570267f5751fb67c4282',1,'clutchlog::fmt::color_16M::color_16M(ground t)'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a36d9cf42044fec34b7858142d86137d3',1,'clutchlog::fmt::color_16M::color_16M(ground t, short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a55e39e7eb3ced3095c00914eff52470c',1,'clutchlog::fmt::color_16M::color_16M(ground t, const std::string &srgb)']]], + ['color_5f256_39',['color_256',['../structclutchlog_1_1fmt_1_1color__256.html',1,'clutchlog::fmt::color_256'],['../structclutchlog_1_1fmt_1_1color__256.html#a12fdff3c5c4edbf952aaa31519f0171c',1,'clutchlog::fmt::color_256::color_256(ground t)'],['../structclutchlog_1_1fmt_1_1color__256.html#a1b68065b35141c018b33c3f2c45f5726',1,'clutchlog::fmt::color_256::color_256(ground t, const short i)']]], + ['colors_20management_20in_2016_20colors_20mode_20_284_2dbits_20ansi_29_2e_40',['Colors management in 16 colors mode (4-bits ANSI).',['../group__colors16.html',1,'']]], + ['colors_5f16_41',['colors_16',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1e7cced329549fc4c2393381f068062e',1,'clutchlog::fmt']]], + ['colors_5f16m_42',['colors_16M',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1844e5aae3a3eefc500c545e3c35bcfa',1,'clutchlog::fmt']]], + ['colors_5f256_43',['colors_256',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a7a3c32a8827eb17435511b4c7a429749',1,'clutchlog::fmt']]], + ['clutchlog_20—_20versatile_20_28de_29clutchable_20spatial_20logging_44',['Clutchlog — versatile (de)clutchable spatial logging',['../index.html',1,'']]] ]; diff --git a/docs/search/all_4.js b/docs/search/all_4.js index 97fd13b..51ca6cc 100644 --- a/docs/search/all_4.js +++ b/docs/search/all_4.js @@ -1,13 +1,14 @@ var searchData= [ - ['default_5fdepth_5fmark_43',['default_depth_mark',['../classclutchlog.html#a229fd61519f1245282440120f2d45fb5',1,'clutchlog']]], - ['default_5fformat_44',['default_format',['../classclutchlog.html#a0c4ac57601e6f8d146fd5cc060968ecc',1,'clutchlog']]], - ['default_5fhfill_5fchar_45',['default_hfill_char',['../classclutchlog.html#a76eb34537b634aadb75e255f7887eeb6',1,'clutchlog']]], - ['default_5fhfill_5fmax_46',['default_hfill_max',['../classclutchlog.html#ac95630bfe9cf547d2b7c4b3430eaedc1',1,'clutchlog']]], - ['default_5fhfill_5fmin_47',['default_hfill_min',['../classclutchlog.html#a5a9a98c3528117223ceff22bc6bee5f7',1,'clutchlog']]], - ['default_5fstrip_5fcalls_48',['default_strip_calls',['../classclutchlog.html#a1a8cb6411726133208f5a2f2cb42d468',1,'clutchlog']]], - ['default_20configuration_20management_49',['Default configuration management',['../group___default_config.html',1,'']]], - ['dump_50',['dump',['../classclutchlog.html#a63308e8deae3cfec6801318203494143',1,'clutchlog']]], - ['dump_5fdefault_5fformat_51',['dump_default_format',['../classclutchlog.html#ace879554298e6e6e36dafef330c27be8',1,'clutchlog']]], - ['dump_5fdefault_5fsep_52',['dump_default_sep',['../classclutchlog.html#af898bffe23b125245e338d7495c76d45',1,'clutchlog']]] + ['default_5fdepth_5fmark_45',['default_depth_mark',['../classclutchlog.html#a229fd61519f1245282440120f2d45fb5',1,'clutchlog']]], + ['default_5fformat_46',['default_format',['../classclutchlog.html#a0c4ac57601e6f8d146fd5cc060968ecc',1,'clutchlog']]], + ['default_5fhfill_5fchar_47',['default_hfill_char',['../classclutchlog.html#a76eb34537b634aadb75e255f7887eeb6',1,'clutchlog']]], + ['default_5fhfill_5fmax_48',['default_hfill_max',['../classclutchlog.html#ac95630bfe9cf547d2b7c4b3430eaedc1',1,'clutchlog']]], + ['default_5fhfill_5fmin_49',['default_hfill_min',['../classclutchlog.html#a5a9a98c3528117223ceff22bc6bee5f7',1,'clutchlog']]], + ['default_5fstrip_5fcalls_50',['default_strip_calls',['../classclutchlog.html#a1a8cb6411726133208f5a2f2cb42d468',1,'clutchlog']]], + ['default_20configuration_20management_51',['Default configuration management',['../group___default_config.html',1,'']]], + ['depth_5fstyles_52',['depth_styles',['../classclutchlog.html#a08310b92e86687349e70f56f9ac1d656',1,'clutchlog']]], + ['dump_53',['dump',['../classclutchlog.html#a63308e8deae3cfec6801318203494143',1,'clutchlog']]], + ['dump_5fdefault_5fformat_54',['dump_default_format',['../classclutchlog.html#ace879554298e6e6e36dafef330c27be8',1,'clutchlog']]], + ['dump_5fdefault_5fsep_55',['dump_default_sep',['../classclutchlog.html#af898bffe23b125245e338d7495c76d45',1,'clutchlog']]] ]; diff --git a/docs/search/all_5.js b/docs/search/all_5.js index e6a875f..d08d592 100644 --- a/docs/search/all_5.js +++ b/docs/search/all_5.js @@ -1,15 +1,17 @@ var searchData= [ - ['fg_53',['fg',['../group__colors16.html#ga4662a3ec3577c6a575a2c734636ed8a0',1,'clutchlog::fmt']]], - ['fg_5f16m_54',['fg_16M',['../structclutchlog_1_1fmt_1_1fg__16_m.html',1,'clutchlog::fmt::fg_16M'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a984525f33eb86b7f8b3e5d0874611194',1,'clutchlog::fmt::fg_16M::fg_16M()'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a531b717b8d78a0a5929fa90d0a01d7e5',1,'clutchlog::fmt::fg_16M::fg_16M(short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#abc768d6b7c2139c14f210755108006d3',1,'clutchlog::fmt::fg_16M::fg_16M(const std::string &srgb)'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a9da40a4a7ff3b80f028f26322f59eba8',1,'clutchlog::fmt::fg_16M::fg_16M(const fg &)']]], - ['fg_5f256_55',['fg_256',['../structclutchlog_1_1fmt_1_1fg__256.html',1,'clutchlog::fmt::fg_256'],['../structclutchlog_1_1fmt_1_1fg__256.html#a97c241e9f80c63d269953cc525a72c7a',1,'clutchlog::fmt::fg_256::fg_256()'],['../structclutchlog_1_1fmt_1_1fg__256.html#a6df3d848db0e55c79709fb4565cbfd59',1,'clutchlog::fmt::fg_256::fg_256(const short f)'],['../structclutchlog_1_1fmt_1_1fg__256.html#a501fff36520f20ba4973ba3848fb9c23',1,'clutchlog::fmt::fg_256::fg_256(const fg &)']]], - ['file_56',['file',['../classclutchlog.html#a10064493c22f5c03b502a42d814c5c5c',1,'clutchlog']]], - ['fmt_57',['fmt',['../classclutchlog_1_1fmt.html',1,'clutchlog::fmt'],['../classclutchlog_1_1fmt.html#a407506bc02ed3f91d88b3df630e54959',1,'clutchlog::fmt::fmt()']]], - ['fore_58',['fore',['../group__colors16.html#ga8307a848fcf9ed929435b3e1f2b53401',1,'clutchlog::fmt']]], - ['fore_5f16m_59',['fore_16M',['../group__colors256__16_m.html#ga626c99eb11d1718d7a2a8bb3f079e6de',1,'clutchlog::fmt']]], - ['fore_5f256_60',['fore_256',['../group__colors256__16_m.html#gad98fbe84ef338ded8425d56955825a2c',1,'clutchlog::fmt']]], - ['format_61',['format',['../classclutchlog.html#a656c277e074b64728cca871f2b484d1c',1,'clutchlog::format(const std::string &format)'],['../classclutchlog.html#afc53dbca51d0e2322a21899d0c571a80',1,'clutchlog::format() const'],['../classclutchlog.html#abd692cca9a2e772e7c9d6531bb3c7761',1,'clutchlog::format(std::string row, const std::string &what, const level &stage, const std::string &file, const std::string &func, const size_t line) const']]], - ['format_5fcomment_62',['format_comment',['../classclutchlog.html#a2144abe4ec6f630126b6490908b5f924',1,'clutchlog::format_comment(const std::string &format)'],['../classclutchlog.html#aa8d0a569ed3623ce36c5e567ec2d1ad5',1,'clutchlog::format_comment() const']]], - ['formating_20tools_63',['Formating tools',['../group___formating.html',1,'']]], - ['func_64',['func',['../classclutchlog.html#ad32b5a0274dc03ee0004f67ba58b2447',1,'clutchlog']]] + ['fg_56',['fg',['../group__colors16.html#ga4662a3ec3577c6a575a2c734636ed8a0',1,'clutchlog::fmt']]], + ['fg_5f16m_57',['fg_16M',['../structclutchlog_1_1fmt_1_1fg__16_m.html',1,'clutchlog::fmt::fg_16M'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a984525f33eb86b7f8b3e5d0874611194',1,'clutchlog::fmt::fg_16M::fg_16M()'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a531b717b8d78a0a5929fa90d0a01d7e5',1,'clutchlog::fmt::fg_16M::fg_16M(short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#abc768d6b7c2139c14f210755108006d3',1,'clutchlog::fmt::fg_16M::fg_16M(const std::string &srgb)'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a9da40a4a7ff3b80f028f26322f59eba8',1,'clutchlog::fmt::fg_16M::fg_16M(const fg &)']]], + ['fg_5f256_58',['fg_256',['../structclutchlog_1_1fmt_1_1fg__256.html',1,'clutchlog::fmt::fg_256'],['../structclutchlog_1_1fmt_1_1fg__256.html#a97c241e9f80c63d269953cc525a72c7a',1,'clutchlog::fmt::fg_256::fg_256()'],['../structclutchlog_1_1fmt_1_1fg__256.html#a6df3d848db0e55c79709fb4565cbfd59',1,'clutchlog::fmt::fg_256::fg_256(const short f)'],['../structclutchlog_1_1fmt_1_1fg__256.html#a501fff36520f20ba4973ba3848fb9c23',1,'clutchlog::fmt::fg_256::fg_256(const fg &)']]], + ['file_59',['file',['../classclutchlog.html#a10064493c22f5c03b502a42d814c5c5c',1,'clutchlog']]], + ['filehash_5fstyles_60',['filehash_styles',['../classclutchlog.html#ae17db5808155fbc6dc48b4727d0c3abf',1,'clutchlog']]], + ['fmt_61',['fmt',['../classclutchlog_1_1fmt.html',1,'clutchlog::fmt'],['../classclutchlog_1_1fmt.html#a407506bc02ed3f91d88b3df630e54959',1,'clutchlog::fmt::fmt()']]], + ['fore_62',['fore',['../group__colors16.html#ga8307a848fcf9ed929435b3e1f2b53401',1,'clutchlog::fmt']]], + ['fore_5f16m_63',['fore_16M',['../group__colors256__16_m.html#ga626c99eb11d1718d7a2a8bb3f079e6de',1,'clutchlog::fmt']]], + ['fore_5f256_64',['fore_256',['../group__colors256__16_m.html#gad98fbe84ef338ded8425d56955825a2c',1,'clutchlog::fmt']]], + ['format_65',['format',['../classclutchlog.html#a656c277e074b64728cca871f2b484d1c',1,'clutchlog::format(const std::string &format)'],['../classclutchlog.html#afc53dbca51d0e2322a21899d0c571a80',1,'clutchlog::format() const'],['../classclutchlog.html#abd692cca9a2e772e7c9d6531bb3c7761',1,'clutchlog::format(std::string row, const std::string &what, const level &stage, const std::string &file, const std::string &func, const size_t line) const']]], + ['format_5fcomment_66',['format_comment',['../classclutchlog.html#a2144abe4ec6f630126b6490908b5f924',1,'clutchlog::format_comment(const std::string &format)'],['../classclutchlog.html#aa8d0a569ed3623ce36c5e567ec2d1ad5',1,'clutchlog::format_comment() const']]], + ['formating_20tools_67',['Formating tools',['../group___formating.html',1,'']]], + ['func_68',['func',['../classclutchlog.html#ad32b5a0274dc03ee0004f67ba58b2447',1,'clutchlog']]], + ['funchash_5fstyles_69',['funchash_styles',['../classclutchlog.html#acbb50f6306ebb3c8b0d1a52e7f327416',1,'clutchlog']]] ]; diff --git a/docs/search/all_6.js b/docs/search/all_6.js index a238d73..f7c449d 100644 --- a/docs/search/all_6.js +++ b/docs/search/all_6.js @@ -1,4 +1,4 @@ var searchData= [ - ['ground_65',['ground',['../structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0',1,'clutchlog::fmt::color']]] + ['ground_70',['ground',['../structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0',1,'clutchlog::fmt::color']]] ]; diff --git a/docs/search/all_7.js b/docs/search/all_7.js index ceeff9e..f1e68ac 100644 --- a/docs/search/all_7.js +++ b/docs/search/all_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['high_2dlevel_20api_20macros_66',['High-level API macros',['../group___use_macros.html',1,'']]] + ['high_2dlevel_20api_20macros_71',['High-level API macros',['../group___use_macros.html',1,'']]] ]; diff --git a/docs/search/all_8.js b/docs/search/all_8.js index 563b231..712f996 100644 --- a/docs/search/all_8.js +++ b/docs/search/all_8.js @@ -1,6 +1,6 @@ var searchData= [ - ['internal_20colors_20management_20in_20256_20and_2016m_20colors_20modes_2e_67',['Internal colors management in 256 and 16M colors modes.',['../group__colors256__16_m.html',1,'']]], - ['index_68',['index',['../structclutchlog_1_1fmt_1_1color__256.html#a8e0b13d6bad87c83c3465524a5d33988',1,'clutchlog::fmt::color_256']]], - ['is_5fset_69',['is_set',['../structclutchlog_1_1fmt_1_1color.html#a96d7161ef1e7cc631ae670cd3f364603',1,'clutchlog::fmt::color::is_set()'],['../structclutchlog_1_1fmt_1_1color__256.html#ad79557682cec1c053dda258581972111',1,'clutchlog::fmt::color_256::is_set()'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a780c11e42bb140732ffd37cf4eef9e1d',1,'clutchlog::fmt::color_16M::is_set()']]] + ['internal_20colors_20management_20in_20256_20and_2016m_20colors_20modes_2e_72',['Internal colors management in 256 and 16M colors modes.',['../group__colors256__16_m.html',1,'']]], + ['index_73',['index',['../structclutchlog_1_1fmt_1_1color__256.html#a8e0b13d6bad87c83c3465524a5d33988',1,'clutchlog::fmt::color_256']]], + ['is_5fset_74',['is_set',['../structclutchlog_1_1fmt_1_1color.html#a96d7161ef1e7cc631ae670cd3f364603',1,'clutchlog::fmt::color::is_set()'],['../structclutchlog_1_1fmt_1_1color__256.html#ad79557682cec1c053dda258581972111',1,'clutchlog::fmt::color_256::is_set()'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a780c11e42bb140732ffd37cf4eef9e1d',1,'clutchlog::fmt::color_16M::is_set()']]] ]; diff --git a/docs/search/all_9.js b/docs/search/all_9.js index 76f9563..70b8e53 100644 --- a/docs/search/all_9.js +++ b/docs/search/all_9.js @@ -1,11 +1,11 @@ var searchData= [ - ['level_70',['level',['../classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928',1,'clutchlog']]], - ['level_5fof_71',['level_of',['../classclutchlog.html#acebed8c9df9204f22bf8488e62e1cedd',1,'clutchlog']]], - ['levels_72',['levels',['../classclutchlog.html#aff3aa09fb60f7d6dc688c028d3834d8a',1,'clutchlog']]], - ['line_73',['line',['../classclutchlog.html#aa26c6b81ebaeb9e9daa3457e3a3d17c9',1,'clutchlog']]], - ['locate_74',['locate',['../classclutchlog.html#a4ebdfcded6c56262676bf6926d63fc96',1,'clutchlog']]], - ['location_75',['location',['../classclutchlog.html#a6666106b9e5c239b6ae5e0d1091648e3',1,'clutchlog']]], - ['log_76',['log',['../classclutchlog.html#a23dbb98f0d3c5cc21c232cde16cf317a',1,'clutchlog']]], - ['logger_77',['logger',['../classclutchlog.html#acfaceb77da01503b432644a3efaee4fa',1,'clutchlog']]] + ['level_75',['level',['../classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928',1,'clutchlog']]], + ['level_5fof_76',['level_of',['../classclutchlog.html#acebed8c9df9204f22bf8488e62e1cedd',1,'clutchlog']]], + ['levels_77',['levels',['../classclutchlog.html#aff3aa09fb60f7d6dc688c028d3834d8a',1,'clutchlog']]], + ['line_78',['line',['../classclutchlog.html#aa26c6b81ebaeb9e9daa3457e3a3d17c9',1,'clutchlog']]], + ['locate_79',['locate',['../classclutchlog.html#a4ebdfcded6c56262676bf6926d63fc96',1,'clutchlog']]], + ['location_80',['location',['../classclutchlog.html#a6666106b9e5c239b6ae5e0d1091648e3',1,'clutchlog']]], + ['log_81',['log',['../classclutchlog.html#a23dbb98f0d3c5cc21c232cde16cf317a',1,'clutchlog']]], + ['logger_82',['logger',['../classclutchlog.html#acfaceb77da01503b432644a3efaee4fa',1,'clutchlog']]] ]; diff --git a/docs/search/all_a.js b/docs/search/all_a.js index b24fc28..3082510 100644 --- a/docs/search/all_a.js +++ b/docs/search/all_a.js @@ -1,6 +1,6 @@ var searchData= [ - ['main_20class_78',['Main class',['../group___main.html',1,'']]], - ['matches_79',['matches',['../structclutchlog_1_1scope__t.html#ae6c0e4ed20db797124ed1e5faa033ad9',1,'clutchlog::scope_t']]], - ['mode_80',['mode',['../classclutchlog_1_1fmt.html#a0aa57cdd56ccc79c7750921ab534b205',1,'clutchlog::fmt']]] + ['main_20class_83',['Main class',['../group___main.html',1,'']]], + ['matches_84',['matches',['../structclutchlog_1_1scope__t.html#ae6c0e4ed20db797124ed1e5faa033ad9',1,'clutchlog::scope_t']]], + ['mode_85',['mode',['../classclutchlog_1_1fmt.html#a0aa57cdd56ccc79c7750921ab534b205',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/all_b.js b/docs/search/all_b.js index 30b2dfd..667af17 100644 --- a/docs/search/all_b.js +++ b/docs/search/all_b.js @@ -1,6 +1,6 @@ var searchData= [ - ['operator_28_29_81',['operator()',['../classclutchlog_1_1fmt.html#afeaedd18298498d1dcfcc15f5f17ac3c',1,'clutchlog::fmt']]], - ['operator_3c_3c_82',['operator<<',['../group__colors16.html#ga5a697f5ad3326ea25b139e25252b4cf7',1,'clutchlog::fmt::operator<<()'],['../group__colors16.html#ga379b0af834c7c561edc5c1e3a3427a33',1,'clutchlog::fmt::operator<<()'],['../structclutchlog_1_1fmt_1_1color.html#a826e3d3eba925608442439d6bc3a95a6',1,'clutchlog::fmt::color::operator<<()'],['../classclutchlog_1_1fmt.html#a96849ba427feac3a2eeaa1165e3845da',1,'clutchlog::fmt::operator<<()']]], - ['out_83',['out',['../classclutchlog.html#a7fd7c7bd3668c537061c314a619a336d',1,'clutchlog::out(std::ostream &out)'],['../classclutchlog.html#a6c6ab42a1df147e6c2d115bc36ec8266',1,'clutchlog::out()']]] + ['operator_28_29_86',['operator()',['../classclutchlog_1_1fmt.html#afeaedd18298498d1dcfcc15f5f17ac3c',1,'clutchlog::fmt']]], + ['operator_3c_3c_87',['operator<<',['../group__colors16.html#ga5a697f5ad3326ea25b139e25252b4cf7',1,'clutchlog::fmt::operator<<()'],['../group__colors16.html#ga379b0af834c7c561edc5c1e3a3427a33',1,'clutchlog::fmt::operator<<()'],['../structclutchlog_1_1fmt_1_1color.html#a826e3d3eba925608442439d6bc3a95a6',1,'clutchlog::fmt::color::operator<<()'],['../classclutchlog_1_1fmt.html#a96849ba427feac3a2eeaa1165e3845da',1,'clutchlog::fmt::operator<<()']]], + ['out_88',['out',['../classclutchlog.html#a7fd7c7bd3668c537061c314a619a336d',1,'clutchlog::out(std::ostream &out)'],['../classclutchlog.html#a6c6ab42a1df147e6c2d115bc36ec8266',1,'clutchlog::out()']]] ]; diff --git a/docs/search/all_c.js b/docs/search/all_c.js index 4b99bc7..da570fa 100644 --- a/docs/search/all_c.js +++ b/docs/search/all_c.js @@ -1,4 +1,4 @@ var searchData= [ - ['print_5fon_84',['print_on',['../structclutchlog_1_1fmt_1_1color.html#aa75e958436afe333924b6db3e5f0821f',1,'clutchlog::fmt::color::print_on()'],['../structclutchlog_1_1fmt_1_1color__256.html#aaae6106a11eddade981172324a43df68',1,'clutchlog::fmt::color_256::print_on()'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a674910195e7bb14d78f0cf56c308a47e',1,'clutchlog::fmt::color_16M::print_on()'],['../classclutchlog_1_1fmt.html#a0b607e343b6813b99eafca1fdfec9cd0',1,'clutchlog::fmt::print_on()']]] + ['print_5fon_89',['print_on',['../structclutchlog_1_1fmt_1_1color.html#aa75e958436afe333924b6db3e5f0821f',1,'clutchlog::fmt::color::print_on()'],['../structclutchlog_1_1fmt_1_1color__256.html#aaae6106a11eddade981172324a43df68',1,'clutchlog::fmt::color_256::print_on()'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a674910195e7bb14d78f0cf56c308a47e',1,'clutchlog::fmt::color_16M::print_on()'],['../classclutchlog_1_1fmt.html#a0b607e343b6813b99eafca1fdfec9cd0',1,'clutchlog::fmt::print_on()']]] ]; diff --git a/docs/search/all_d.js b/docs/search/all_d.js index e5ba0dc..c7b0b35 100644 --- a/docs/search/all_d.js +++ b/docs/search/all_d.js @@ -1,5 +1,5 @@ var searchData= [ - ['red_85',['red',['../structclutchlog_1_1fmt_1_1color__16_m.html#a19e1517a9afb75a4e6224f718ed11c61',1,'clutchlog::fmt::color_16M']]], - ['replace_86',['replace',['../classclutchlog.html#a972f895c70edc335f3018a2c8971d59e',1,'clutchlog::replace(const std::string &form, const std::string &mark, const std::string &tag) const'],['../classclutchlog.html#ae90d5a1a428587ad67b38b2ea4ca9fa2',1,'clutchlog::replace(const std::string &form, const std::string &mark, const size_t tag) const']]] + ['red_90',['red',['../structclutchlog_1_1fmt_1_1color__16_m.html#a19e1517a9afb75a4e6224f718ed11c61',1,'clutchlog::fmt::color_16M']]], + ['replace_91',['replace',['../classclutchlog.html#a972f895c70edc335f3018a2c8971d59e',1,'clutchlog::replace(const std::string &form, const std::string &mark, const std::string &tag) const'],['../classclutchlog.html#ae90d5a1a428587ad67b38b2ea4ca9fa2',1,'clutchlog::replace(const std::string &form, const std::string &mark, const size_t tag) const']]] ]; diff --git a/docs/search/all_e.js b/docs/search/all_e.js index aaaf2c0..b96f683 100644 --- a/docs/search/all_e.js +++ b/docs/search/all_e.js @@ -1,7 +1,7 @@ var searchData= [ - ['scope_5ft_87',['scope_t',['../structclutchlog_1_1scope__t.html',1,'clutchlog::scope_t'],['../structclutchlog_1_1scope__t.html#a0f1d865ffcf17f215e5559cdd2690572',1,'clutchlog::scope_t::scope_t()']]], - ['stage_88',['stage',['../structclutchlog_1_1scope__t.html#adcca6846ff90d436c61861db85917744',1,'clutchlog::scope_t']]], - ['str_89',['str',['../classclutchlog_1_1fmt.html#ab588e04e982b0b26ec979773d51ad41b',1,'clutchlog::fmt']]], - ['style_90',['style',['../classclutchlog_1_1fmt.html#a2bb0fde65fcd264393e102314dd1610b',1,'clutchlog::fmt::style()'],['../classclutchlog.html#ac3ec55057b9c734b66f169bf43dbd591',1,'clutchlog::style(level stage, FMT... styles)'],['../classclutchlog.html#ad1cfa9945c3f7f98fe8ce724c627d0d6',1,'clutchlog::style(level stage, fmt style)'],['../classclutchlog.html#a4831f44fd5ade102e57320632095934d',1,'clutchlog::style(level stage) const']]] + ['scope_5ft_92',['scope_t',['../structclutchlog_1_1scope__t.html',1,'clutchlog::scope_t'],['../structclutchlog_1_1scope__t.html#a0f1d865ffcf17f215e5559cdd2690572',1,'clutchlog::scope_t::scope_t()']]], + ['stage_93',['stage',['../structclutchlog_1_1scope__t.html#adcca6846ff90d436c61861db85917744',1,'clutchlog::scope_t']]], + ['str_94',['str',['../classclutchlog_1_1fmt.html#ab588e04e982b0b26ec979773d51ad41b',1,'clutchlog::fmt']]], + ['style_95',['style',['../classclutchlog_1_1fmt.html#a2bb0fde65fcd264393e102314dd1610b',1,'clutchlog::fmt::style()'],['../classclutchlog.html#ac3ec55057b9c734b66f169bf43dbd591',1,'clutchlog::style(level stage, FMT... styles)'],['../classclutchlog.html#ad1cfa9945c3f7f98fe8ce724c627d0d6',1,'clutchlog::style(level stage, fmt style)'],['../classclutchlog.html#a4831f44fd5ade102e57320632095934d',1,'clutchlog::style(level stage) const']]] ]; diff --git a/docs/search/all_f.js b/docs/search/all_f.js index bb7bbea..ae6697e 100644 --- a/docs/search/all_f.js +++ b/docs/search/all_f.js @@ -1,7 +1,7 @@ var searchData= [ - ['there_91',['there',['../structclutchlog_1_1scope__t.html#a7918e55cd3bac1bd30c69b8c711387ff',1,'clutchlog::scope_t']]], - ['threshold_92',['threshold',['../classclutchlog.html#a3cb0e4f43a4cadf1966001ad7c9861f4',1,'clutchlog::threshold(level l)'],['../classclutchlog.html#a7a7738eaad114bfa870121412fe23ad9',1,'clutchlog::threshold(const std::string &l)'],['../classclutchlog.html#ab45287cc9c14217904a13aff49573732',1,'clutchlog::threshold() const']]], - ['type_93',['type',['../structclutchlog_1_1fmt_1_1color.html#a3fd18c290567bd5c4971663a1aed12ae',1,'clutchlog::fmt::color']]], - ['typo_94',['typo',['../classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89',1,'clutchlog::fmt']]] + ['there_96',['there',['../structclutchlog_1_1scope__t.html#a7918e55cd3bac1bd30c69b8c711387ff',1,'clutchlog::scope_t']]], + ['threshold_97',['threshold',['../classclutchlog.html#a3cb0e4f43a4cadf1966001ad7c9861f4',1,'clutchlog::threshold(level l)'],['../classclutchlog.html#a7a7738eaad114bfa870121412fe23ad9',1,'clutchlog::threshold(const std::string &l)'],['../classclutchlog.html#ab45287cc9c14217904a13aff49573732',1,'clutchlog::threshold() const']]], + ['type_98',['type',['../structclutchlog_1_1fmt_1_1color.html#a3fd18c290567bd5c4971663a1aed12ae',1,'clutchlog::fmt::color']]], + ['typo_99',['typo',['../classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/classes_0.js b/docs/search/classes_0.js index 480303d..cd91c5b 100644 --- a/docs/search/classes_0.js +++ b/docs/search/classes_0.js @@ -1,5 +1,5 @@ var searchData= [ - ['bg_5f16m_96',['bg_16M',['../structclutchlog_1_1fmt_1_1bg__16_m.html',1,'clutchlog::fmt']]], - ['bg_5f256_97',['bg_256',['../structclutchlog_1_1fmt_1_1bg__256.html',1,'clutchlog::fmt']]] + ['bg_5f16m_101',['bg_16M',['../structclutchlog_1_1fmt_1_1bg__16_m.html',1,'clutchlog::fmt']]], + ['bg_5f256_102',['bg_256',['../structclutchlog_1_1fmt_1_1bg__256.html',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/classes_1.js b/docs/search/classes_1.js index 6f68109..632a921 100644 --- a/docs/search/classes_1.js +++ b/docs/search/classes_1.js @@ -1,7 +1,7 @@ var searchData= [ - ['clutchlog_98',['clutchlog',['../classclutchlog.html',1,'']]], - ['color_99',['color',['../structclutchlog_1_1fmt_1_1color.html',1,'clutchlog::fmt']]], - ['color_5f16m_100',['color_16M',['../structclutchlog_1_1fmt_1_1color__16_m.html',1,'clutchlog::fmt']]], - ['color_5f256_101',['color_256',['../structclutchlog_1_1fmt_1_1color__256.html',1,'clutchlog::fmt']]] + ['clutchlog_103',['clutchlog',['../classclutchlog.html',1,'']]], + ['color_104',['color',['../structclutchlog_1_1fmt_1_1color.html',1,'clutchlog::fmt']]], + ['color_5f16m_105',['color_16M',['../structclutchlog_1_1fmt_1_1color__16_m.html',1,'clutchlog::fmt']]], + ['color_5f256_106',['color_256',['../structclutchlog_1_1fmt_1_1color__256.html',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/classes_2.js b/docs/search/classes_2.js index c39128f..59ac266 100644 --- a/docs/search/classes_2.js +++ b/docs/search/classes_2.js @@ -1,6 +1,6 @@ var searchData= [ - ['fg_5f16m_102',['fg_16M',['../structclutchlog_1_1fmt_1_1fg__16_m.html',1,'clutchlog::fmt']]], - ['fg_5f256_103',['fg_256',['../structclutchlog_1_1fmt_1_1fg__256.html',1,'clutchlog::fmt']]], - ['fmt_104',['fmt',['../classclutchlog_1_1fmt.html',1,'clutchlog']]] + ['fg_5f16m_107',['fg_16M',['../structclutchlog_1_1fmt_1_1fg__16_m.html',1,'clutchlog::fmt']]], + ['fg_5f256_108',['fg_256',['../structclutchlog_1_1fmt_1_1fg__256.html',1,'clutchlog::fmt']]], + ['fmt_109',['fmt',['../classclutchlog_1_1fmt.html',1,'clutchlog']]] ]; diff --git a/docs/search/classes_3.js b/docs/search/classes_3.js index 5bb3aaf..f92addc 100644 --- a/docs/search/classes_3.js +++ b/docs/search/classes_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['scope_5ft_105',['scope_t',['../structclutchlog_1_1scope__t.html',1,'clutchlog']]] + ['scope_5ft_110',['scope_t',['../structclutchlog_1_1scope__t.html',1,'clutchlog']]] ]; diff --git a/docs/search/defines_0.js b/docs/search/defines_0.js index 8658828..ae54f4d 100644 --- a/docs/search/defines_0.js +++ b/docs/search/defines_0.js @@ -1,6 +1,6 @@ var searchData= [ - ['clutchlog_5fh_180',['CLUTCHLOG_H',['../clutchlog_8h.html#a0acf7d306292cdee864356f0b433cc16',1,'clutchlog.h']]], - ['clutchlog_5fhave_5funix_5fsysinfo_181',['CLUTCHLOG_HAVE_UNIX_SYSINFO',['../clutchlog_8h.html#a6bbcf13504687db4dbe0474931d867fb',1,'clutchlog.h']]], - ['clutchlog_5fhave_5funix_5fsysioctl_182',['CLUTCHLOG_HAVE_UNIX_SYSIOCTL',['../clutchlog_8h.html#a6bddd1e1be320823da0d6b1d5cef7817',1,'clutchlog.h']]] + ['clutchlog_5fh_190',['CLUTCHLOG_H',['../clutchlog_8h.html#a0acf7d306292cdee864356f0b433cc16',1,'clutchlog.h']]], + ['clutchlog_5fhave_5funix_5fsysinfo_191',['CLUTCHLOG_HAVE_UNIX_SYSINFO',['../clutchlog_8h.html#a6bbcf13504687db4dbe0474931d867fb',1,'clutchlog.h']]], + ['clutchlog_5fhave_5funix_5fsysioctl_192',['CLUTCHLOG_HAVE_UNIX_SYSIOCTL',['../clutchlog_8h.html#a6bddd1e1be320823da0d6b1d5cef7817',1,'clutchlog.h']]] ]; diff --git a/docs/search/defines_1.js b/docs/search/defines_1.js index db6d2b7..4c766f8 100644 --- a/docs/search/defines_1.js +++ b/docs/search/defines_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['with_5fclutchlog_183',['WITH_CLUTCHLOG',['../clutchlog_8h.html#a5c126962abcc7a40e504a6fc3abdfcc4',1,'clutchlog.h']]] + ['with_5fclutchlog_193',['WITH_CLUTCHLOG',['../clutchlog_8h.html#a5c126962abcc7a40e504a6fc3abdfcc4',1,'clutchlog.h']]] ]; diff --git a/docs/search/enums_0.js b/docs/search/enums_0.js index 9dad809..f843e33 100644 --- a/docs/search/enums_0.js +++ b/docs/search/enums_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['ansi_170',['ansi',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502',1,'clutchlog::fmt']]] + ['ansi_180',['ansi',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/enums_1.js b/docs/search/enums_1.js index 467b08a..c28e05d 100644 --- a/docs/search/enums_1.js +++ b/docs/search/enums_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['bg_171',['bg',['../group__colors16.html#ga1cf3e27e4041250ffea0a6d58010da1e',1,'clutchlog::fmt']]] + ['bg_181',['bg',['../group__colors16.html#ga1cf3e27e4041250ffea0a6d58010da1e',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/enums_2.js b/docs/search/enums_2.js index 9245b03..12d1dbb 100644 --- a/docs/search/enums_2.js +++ b/docs/search/enums_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['fg_172',['fg',['../group__colors16.html#ga4662a3ec3577c6a575a2c734636ed8a0',1,'clutchlog::fmt']]] + ['fg_182',['fg',['../group__colors16.html#ga4662a3ec3577c6a575a2c734636ed8a0',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/enums_3.js b/docs/search/enums_3.js index 05bf7a1..02d48dc 100644 --- a/docs/search/enums_3.js +++ b/docs/search/enums_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['ground_173',['ground',['../structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0',1,'clutchlog::fmt::color']]] + ['ground_183',['ground',['../structclutchlog_1_1fmt_1_1color.html#ad4d10c015b3af3cc10d1cf40fe38e4f0',1,'clutchlog::fmt::color']]] ]; diff --git a/docs/search/enums_4.js b/docs/search/enums_4.js index 9d331b3..4787f9b 100644 --- a/docs/search/enums_4.js +++ b/docs/search/enums_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['level_174',['level',['../classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928',1,'clutchlog']]] + ['level_184',['level',['../classclutchlog.html#a10fd25a1b51c8c95bd6d876ce1b4b928',1,'clutchlog']]] ]; diff --git a/docs/search/enums_5.js b/docs/search/enums_5.js index 8f895c4..77c6720 100644 --- a/docs/search/enums_5.js +++ b/docs/search/enums_5.js @@ -1,4 +1,4 @@ var searchData= [ - ['typo_175',['typo',['../classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89',1,'clutchlog::fmt']]] + ['typo_185',['typo',['../classclutchlog_1_1fmt.html#a932f47b78fb7b10590d5613a1c4eab89',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/enumvalues_0.js b/docs/search/enumvalues_0.js index dfac3fb..13b0957 100644 --- a/docs/search/enumvalues_0.js +++ b/docs/search/enumvalues_0.js @@ -1,6 +1,6 @@ var searchData= [ - ['colors_5f16_176',['colors_16',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1e7cced329549fc4c2393381f068062e',1,'clutchlog::fmt']]], - ['colors_5f16m_177',['colors_16M',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1844e5aae3a3eefc500c545e3c35bcfa',1,'clutchlog::fmt']]], - ['colors_5f256_178',['colors_256',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a7a3c32a8827eb17435511b4c7a429749',1,'clutchlog::fmt']]] + ['colors_5f16_186',['colors_16',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1e7cced329549fc4c2393381f068062e',1,'clutchlog::fmt']]], + ['colors_5f16m_187',['colors_16M',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a1844e5aae3a3eefc500c545e3c35bcfa',1,'clutchlog::fmt']]], + ['colors_5f256_188',['colors_256',['../classclutchlog_1_1fmt.html#a4d0b3c87ba935addf3581b000c0d7502a7a3c32a8827eb17435511b4c7a429749',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/files_0.js b/docs/search/files_0.js index 205c570..0cbf095 100644 --- a/docs/search/files_0.js +++ b/docs/search/files_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['clutchlog_2eh_106',['clutchlog.h',['../clutchlog_8h.html',1,'']]] + ['clutchlog_2eh_111',['clutchlog.h',['../clutchlog_8h.html',1,'']]] ]; diff --git a/docs/search/functions_0.js b/docs/search/functions_0.js index 70f82e8..8bee63c 100644 --- a/docs/search/functions_0.js +++ b/docs/search/functions_0.js @@ -1,5 +1,5 @@ var searchData= [ - ['bg_5f16m_107',['bg_16M',['../structclutchlog_1_1fmt_1_1bg__16_m.html#a363c314ab6a8aa22951b5500d7a78ad0',1,'clutchlog::fmt::bg_16M::bg_16M()'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#ace018922ae99f32b48bf5cacaec91501',1,'clutchlog::fmt::bg_16M::bg_16M(short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#adcd5bd1e69e76e3b36015cf687693c97',1,'clutchlog::fmt::bg_16M::bg_16M(const std::string &srgb)'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#a68f8cb4ab78a1cfb3b7b8e1e95bee11d',1,'clutchlog::fmt::bg_16M::bg_16M(const bg &)']]], - ['bg_5f256_108',['bg_256',['../structclutchlog_1_1fmt_1_1bg__256.html#a0d244a542b6b98a373f8b1f9e92a6a90',1,'clutchlog::fmt::bg_256::bg_256()'],['../structclutchlog_1_1fmt_1_1bg__256.html#a83c663b1a9f00ba7ba7649c9c5605fad',1,'clutchlog::fmt::bg_256::bg_256(const short b)'],['../structclutchlog_1_1fmt_1_1bg__256.html#a096d302be7373acaaf225644683408bd',1,'clutchlog::fmt::bg_256::bg_256(const bg &)']]] + ['bg_5f16m_112',['bg_16M',['../structclutchlog_1_1fmt_1_1bg__16_m.html#a363c314ab6a8aa22951b5500d7a78ad0',1,'clutchlog::fmt::bg_16M::bg_16M()'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#ace018922ae99f32b48bf5cacaec91501',1,'clutchlog::fmt::bg_16M::bg_16M(short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#adcd5bd1e69e76e3b36015cf687693c97',1,'clutchlog::fmt::bg_16M::bg_16M(const std::string &srgb)'],['../structclutchlog_1_1fmt_1_1bg__16_m.html#a68f8cb4ab78a1cfb3b7b8e1e95bee11d',1,'clutchlog::fmt::bg_16M::bg_16M(const bg &)']]], + ['bg_5f256_113',['bg_256',['../structclutchlog_1_1fmt_1_1bg__256.html#a0d244a542b6b98a373f8b1f9e92a6a90',1,'clutchlog::fmt::bg_256::bg_256()'],['../structclutchlog_1_1fmt_1_1bg__256.html#a83c663b1a9f00ba7ba7649c9c5605fad',1,'clutchlog::fmt::bg_256::bg_256(const short b)'],['../structclutchlog_1_1fmt_1_1bg__256.html#a096d302be7373acaaf225644683408bd',1,'clutchlog::fmt::bg_256::bg_256(const bg &)']]] ]; diff --git a/docs/search/functions_1.js b/docs/search/functions_1.js index e566df4..f0262cc 100644 --- a/docs/search/functions_1.js +++ b/docs/search/functions_1.js @@ -1,6 +1,6 @@ var searchData= [ - ['color_109',['color',['../structclutchlog_1_1fmt_1_1color.html#a741d0165287350d8fcacb1f472ce5dac',1,'clutchlog::fmt::color']]], - ['color_5f16m_110',['color_16M',['../structclutchlog_1_1fmt_1_1color__16_m.html#aea10e881fb9b570267f5751fb67c4282',1,'clutchlog::fmt::color_16M::color_16M(ground t)'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a36d9cf42044fec34b7858142d86137d3',1,'clutchlog::fmt::color_16M::color_16M(ground t, short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a55e39e7eb3ced3095c00914eff52470c',1,'clutchlog::fmt::color_16M::color_16M(ground t, const std::string &srgb)']]], - ['color_5f256_111',['color_256',['../structclutchlog_1_1fmt_1_1color__256.html#a12fdff3c5c4edbf952aaa31519f0171c',1,'clutchlog::fmt::color_256::color_256(ground t)'],['../structclutchlog_1_1fmt_1_1color__256.html#a1b68065b35141c018b33c3f2c45f5726',1,'clutchlog::fmt::color_256::color_256(ground t, const short i)']]] + ['color_114',['color',['../structclutchlog_1_1fmt_1_1color.html#a741d0165287350d8fcacb1f472ce5dac',1,'clutchlog::fmt::color']]], + ['color_5f16m_115',['color_16M',['../structclutchlog_1_1fmt_1_1color__16_m.html#aea10e881fb9b570267f5751fb67c4282',1,'clutchlog::fmt::color_16M::color_16M(ground t)'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a36d9cf42044fec34b7858142d86137d3',1,'clutchlog::fmt::color_16M::color_16M(ground t, short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a55e39e7eb3ced3095c00914eff52470c',1,'clutchlog::fmt::color_16M::color_16M(ground t, const std::string &srgb)']]], + ['color_5f256_116',['color_256',['../structclutchlog_1_1fmt_1_1color__256.html#a12fdff3c5c4edbf952aaa31519f0171c',1,'clutchlog::fmt::color_256::color_256(ground t)'],['../structclutchlog_1_1fmt_1_1color__256.html#a1b68065b35141c018b33c3f2c45f5726',1,'clutchlog::fmt::color_256::color_256(ground t, const short i)']]] ]; diff --git a/docs/search/functions_2.js b/docs/search/functions_2.js index 0acd491..8c3f036 100644 --- a/docs/search/functions_2.js +++ b/docs/search/functions_2.js @@ -1,4 +1,5 @@ var searchData= [ - ['dump_112',['dump',['../classclutchlog.html#a63308e8deae3cfec6801318203494143',1,'clutchlog']]] + ['depth_5fstyles_117',['depth_styles',['../classclutchlog.html#a08310b92e86687349e70f56f9ac1d656',1,'clutchlog']]], + ['dump_118',['dump',['../classclutchlog.html#a63308e8deae3cfec6801318203494143',1,'clutchlog']]] ]; diff --git a/docs/search/functions_3.js b/docs/search/functions_3.js index 52f6969..16fa0f4 100644 --- a/docs/search/functions_3.js +++ b/docs/search/functions_3.js @@ -1,10 +1,12 @@ var searchData= [ - ['fg_5f16m_113',['fg_16M',['../structclutchlog_1_1fmt_1_1fg__16_m.html#a984525f33eb86b7f8b3e5d0874611194',1,'clutchlog::fmt::fg_16M::fg_16M()'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a531b717b8d78a0a5929fa90d0a01d7e5',1,'clutchlog::fmt::fg_16M::fg_16M(short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#abc768d6b7c2139c14f210755108006d3',1,'clutchlog::fmt::fg_16M::fg_16M(const std::string &srgb)'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a9da40a4a7ff3b80f028f26322f59eba8',1,'clutchlog::fmt::fg_16M::fg_16M(const fg &)']]], - ['fg_5f256_114',['fg_256',['../structclutchlog_1_1fmt_1_1fg__256.html#a97c241e9f80c63d269953cc525a72c7a',1,'clutchlog::fmt::fg_256::fg_256()'],['../structclutchlog_1_1fmt_1_1fg__256.html#a6df3d848db0e55c79709fb4565cbfd59',1,'clutchlog::fmt::fg_256::fg_256(const short f)'],['../structclutchlog_1_1fmt_1_1fg__256.html#a501fff36520f20ba4973ba3848fb9c23',1,'clutchlog::fmt::fg_256::fg_256(const fg &)']]], - ['file_115',['file',['../classclutchlog.html#a10064493c22f5c03b502a42d814c5c5c',1,'clutchlog']]], - ['fmt_116',['fmt',['../classclutchlog_1_1fmt.html#a407506bc02ed3f91d88b3df630e54959',1,'clutchlog::fmt']]], - ['format_117',['format',['../classclutchlog.html#a656c277e074b64728cca871f2b484d1c',1,'clutchlog::format(const std::string &format)'],['../classclutchlog.html#afc53dbca51d0e2322a21899d0c571a80',1,'clutchlog::format() const'],['../classclutchlog.html#abd692cca9a2e772e7c9d6531bb3c7761',1,'clutchlog::format(std::string row, const std::string &what, const level &stage, const std::string &file, const std::string &func, const size_t line) const']]], - ['format_5fcomment_118',['format_comment',['../classclutchlog.html#a2144abe4ec6f630126b6490908b5f924',1,'clutchlog::format_comment(const std::string &format)'],['../classclutchlog.html#aa8d0a569ed3623ce36c5e567ec2d1ad5',1,'clutchlog::format_comment() const']]], - ['func_119',['func',['../classclutchlog.html#ad32b5a0274dc03ee0004f67ba58b2447',1,'clutchlog']]] + ['fg_5f16m_119',['fg_16M',['../structclutchlog_1_1fmt_1_1fg__16_m.html#a984525f33eb86b7f8b3e5d0874611194',1,'clutchlog::fmt::fg_16M::fg_16M()'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a531b717b8d78a0a5929fa90d0a01d7e5',1,'clutchlog::fmt::fg_16M::fg_16M(short r, short g, short b)'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#abc768d6b7c2139c14f210755108006d3',1,'clutchlog::fmt::fg_16M::fg_16M(const std::string &srgb)'],['../structclutchlog_1_1fmt_1_1fg__16_m.html#a9da40a4a7ff3b80f028f26322f59eba8',1,'clutchlog::fmt::fg_16M::fg_16M(const fg &)']]], + ['fg_5f256_120',['fg_256',['../structclutchlog_1_1fmt_1_1fg__256.html#a97c241e9f80c63d269953cc525a72c7a',1,'clutchlog::fmt::fg_256::fg_256()'],['../structclutchlog_1_1fmt_1_1fg__256.html#a6df3d848db0e55c79709fb4565cbfd59',1,'clutchlog::fmt::fg_256::fg_256(const short f)'],['../structclutchlog_1_1fmt_1_1fg__256.html#a501fff36520f20ba4973ba3848fb9c23',1,'clutchlog::fmt::fg_256::fg_256(const fg &)']]], + ['file_121',['file',['../classclutchlog.html#a10064493c22f5c03b502a42d814c5c5c',1,'clutchlog']]], + ['filehash_5fstyles_122',['filehash_styles',['../classclutchlog.html#ae17db5808155fbc6dc48b4727d0c3abf',1,'clutchlog']]], + ['fmt_123',['fmt',['../classclutchlog_1_1fmt.html#a407506bc02ed3f91d88b3df630e54959',1,'clutchlog::fmt']]], + ['format_124',['format',['../classclutchlog.html#a656c277e074b64728cca871f2b484d1c',1,'clutchlog::format(const std::string &format)'],['../classclutchlog.html#afc53dbca51d0e2322a21899d0c571a80',1,'clutchlog::format() const'],['../classclutchlog.html#abd692cca9a2e772e7c9d6531bb3c7761',1,'clutchlog::format(std::string row, const std::string &what, const level &stage, const std::string &file, const std::string &func, const size_t line) const']]], + ['format_5fcomment_125',['format_comment',['../classclutchlog.html#a2144abe4ec6f630126b6490908b5f924',1,'clutchlog::format_comment(const std::string &format)'],['../classclutchlog.html#aa8d0a569ed3623ce36c5e567ec2d1ad5',1,'clutchlog::format_comment() const']]], + ['func_126',['func',['../classclutchlog.html#ad32b5a0274dc03ee0004f67ba58b2447',1,'clutchlog']]], + ['funchash_5fstyles_127',['funchash_styles',['../classclutchlog.html#acbb50f6306ebb3c8b0d1a52e7f327416',1,'clutchlog']]] ]; diff --git a/docs/search/functions_4.js b/docs/search/functions_4.js index 194301d..6631256 100644 --- a/docs/search/functions_4.js +++ b/docs/search/functions_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['is_5fset_120',['is_set',['../structclutchlog_1_1fmt_1_1color.html#a96d7161ef1e7cc631ae670cd3f364603',1,'clutchlog::fmt::color::is_set()'],['../structclutchlog_1_1fmt_1_1color__256.html#ad79557682cec1c053dda258581972111',1,'clutchlog::fmt::color_256::is_set()'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a780c11e42bb140732ffd37cf4eef9e1d',1,'clutchlog::fmt::color_16M::is_set()']]] + ['is_5fset_128',['is_set',['../structclutchlog_1_1fmt_1_1color.html#a96d7161ef1e7cc631ae670cd3f364603',1,'clutchlog::fmt::color::is_set()'],['../structclutchlog_1_1fmt_1_1color__256.html#ad79557682cec1c053dda258581972111',1,'clutchlog::fmt::color_256::is_set()'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a780c11e42bb140732ffd37cf4eef9e1d',1,'clutchlog::fmt::color_16M::is_set()']]] ]; diff --git a/docs/search/functions_5.js b/docs/search/functions_5.js index 6c591f7..d8f13e9 100644 --- a/docs/search/functions_5.js +++ b/docs/search/functions_5.js @@ -1,10 +1,10 @@ var searchData= [ - ['level_5fof_121',['level_of',['../classclutchlog.html#acebed8c9df9204f22bf8488e62e1cedd',1,'clutchlog']]], - ['levels_122',['levels',['../classclutchlog.html#aff3aa09fb60f7d6dc688c028d3834d8a',1,'clutchlog']]], - ['line_123',['line',['../classclutchlog.html#aa26c6b81ebaeb9e9daa3457e3a3d17c9',1,'clutchlog']]], - ['locate_124',['locate',['../classclutchlog.html#a4ebdfcded6c56262676bf6926d63fc96',1,'clutchlog']]], - ['location_125',['location',['../classclutchlog.html#a6666106b9e5c239b6ae5e0d1091648e3',1,'clutchlog']]], - ['log_126',['log',['../classclutchlog.html#a23dbb98f0d3c5cc21c232cde16cf317a',1,'clutchlog']]], - ['logger_127',['logger',['../classclutchlog.html#acfaceb77da01503b432644a3efaee4fa',1,'clutchlog']]] + ['level_5fof_129',['level_of',['../classclutchlog.html#acebed8c9df9204f22bf8488e62e1cedd',1,'clutchlog']]], + ['levels_130',['levels',['../classclutchlog.html#aff3aa09fb60f7d6dc688c028d3834d8a',1,'clutchlog']]], + ['line_131',['line',['../classclutchlog.html#aa26c6b81ebaeb9e9daa3457e3a3d17c9',1,'clutchlog']]], + ['locate_132',['locate',['../classclutchlog.html#a4ebdfcded6c56262676bf6926d63fc96',1,'clutchlog']]], + ['location_133',['location',['../classclutchlog.html#a6666106b9e5c239b6ae5e0d1091648e3',1,'clutchlog']]], + ['log_134',['log',['../classclutchlog.html#a23dbb98f0d3c5cc21c232cde16cf317a',1,'clutchlog']]], + ['logger_135',['logger',['../classclutchlog.html#acfaceb77da01503b432644a3efaee4fa',1,'clutchlog']]] ]; diff --git a/docs/search/functions_6.js b/docs/search/functions_6.js index 7d8a25b..c179760 100644 --- a/docs/search/functions_6.js +++ b/docs/search/functions_6.js @@ -1,5 +1,5 @@ var searchData= [ - ['operator_28_29_128',['operator()',['../classclutchlog_1_1fmt.html#afeaedd18298498d1dcfcc15f5f17ac3c',1,'clutchlog::fmt']]], - ['out_129',['out',['../classclutchlog.html#a7fd7c7bd3668c537061c314a619a336d',1,'clutchlog::out(std::ostream &out)'],['../classclutchlog.html#a6c6ab42a1df147e6c2d115bc36ec8266',1,'clutchlog::out()']]] + ['operator_28_29_136',['operator()',['../classclutchlog_1_1fmt.html#afeaedd18298498d1dcfcc15f5f17ac3c',1,'clutchlog::fmt']]], + ['out_137',['out',['../classclutchlog.html#a7fd7c7bd3668c537061c314a619a336d',1,'clutchlog::out(std::ostream &out)'],['../classclutchlog.html#a6c6ab42a1df147e6c2d115bc36ec8266',1,'clutchlog::out()']]] ]; diff --git a/docs/search/functions_7.js b/docs/search/functions_7.js index e11b2b1..9e035c0 100644 --- a/docs/search/functions_7.js +++ b/docs/search/functions_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['print_5fon_130',['print_on',['../structclutchlog_1_1fmt_1_1color.html#aa75e958436afe333924b6db3e5f0821f',1,'clutchlog::fmt::color::print_on()'],['../structclutchlog_1_1fmt_1_1color__256.html#aaae6106a11eddade981172324a43df68',1,'clutchlog::fmt::color_256::print_on()'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a674910195e7bb14d78f0cf56c308a47e',1,'clutchlog::fmt::color_16M::print_on()'],['../classclutchlog_1_1fmt.html#a0b607e343b6813b99eafca1fdfec9cd0',1,'clutchlog::fmt::print_on()']]] + ['print_5fon_138',['print_on',['../structclutchlog_1_1fmt_1_1color.html#aa75e958436afe333924b6db3e5f0821f',1,'clutchlog::fmt::color::print_on()'],['../structclutchlog_1_1fmt_1_1color__256.html#aaae6106a11eddade981172324a43df68',1,'clutchlog::fmt::color_256::print_on()'],['../structclutchlog_1_1fmt_1_1color__16_m.html#a674910195e7bb14d78f0cf56c308a47e',1,'clutchlog::fmt::color_16M::print_on()'],['../classclutchlog_1_1fmt.html#a0b607e343b6813b99eafca1fdfec9cd0',1,'clutchlog::fmt::print_on()']]] ]; diff --git a/docs/search/functions_8.js b/docs/search/functions_8.js index 751d9ae..08359ce 100644 --- a/docs/search/functions_8.js +++ b/docs/search/functions_8.js @@ -1,4 +1,4 @@ var searchData= [ - ['replace_131',['replace',['../classclutchlog.html#a972f895c70edc335f3018a2c8971d59e',1,'clutchlog::replace(const std::string &form, const std::string &mark, const std::string &tag) const'],['../classclutchlog.html#ae90d5a1a428587ad67b38b2ea4ca9fa2',1,'clutchlog::replace(const std::string &form, const std::string &mark, const size_t tag) const']]] + ['replace_139',['replace',['../classclutchlog.html#a972f895c70edc335f3018a2c8971d59e',1,'clutchlog::replace(const std::string &form, const std::string &mark, const std::string &tag) const'],['../classclutchlog.html#ae90d5a1a428587ad67b38b2ea4ca9fa2',1,'clutchlog::replace(const std::string &form, const std::string &mark, const size_t tag) const']]] ]; diff --git a/docs/search/functions_9.js b/docs/search/functions_9.js index 475908d..228be9c 100644 --- a/docs/search/functions_9.js +++ b/docs/search/functions_9.js @@ -1,6 +1,6 @@ var searchData= [ - ['scope_5ft_132',['scope_t',['../structclutchlog_1_1scope__t.html#a0f1d865ffcf17f215e5559cdd2690572',1,'clutchlog::scope_t']]], - ['str_133',['str',['../classclutchlog_1_1fmt.html#ab588e04e982b0b26ec979773d51ad41b',1,'clutchlog::fmt']]], - ['style_134',['style',['../classclutchlog.html#ac3ec55057b9c734b66f169bf43dbd591',1,'clutchlog::style(level stage, FMT... styles)'],['../classclutchlog.html#ad1cfa9945c3f7f98fe8ce724c627d0d6',1,'clutchlog::style(level stage, fmt style)'],['../classclutchlog.html#a4831f44fd5ade102e57320632095934d',1,'clutchlog::style(level stage) const']]] + ['scope_5ft_140',['scope_t',['../structclutchlog_1_1scope__t.html#a0f1d865ffcf17f215e5559cdd2690572',1,'clutchlog::scope_t']]], + ['str_141',['str',['../classclutchlog_1_1fmt.html#ab588e04e982b0b26ec979773d51ad41b',1,'clutchlog::fmt']]], + ['style_142',['style',['../classclutchlog.html#ac3ec55057b9c734b66f169bf43dbd591',1,'clutchlog::style(level stage, FMT... styles)'],['../classclutchlog.html#ad1cfa9945c3f7f98fe8ce724c627d0d6',1,'clutchlog::style(level stage, fmt style)'],['../classclutchlog.html#a4831f44fd5ade102e57320632095934d',1,'clutchlog::style(level stage) const']]] ]; diff --git a/docs/search/functions_a.js b/docs/search/functions_a.js index c4eb686..fc2e4b4 100644 --- a/docs/search/functions_a.js +++ b/docs/search/functions_a.js @@ -1,4 +1,4 @@ var searchData= [ - ['threshold_135',['threshold',['../classclutchlog.html#a3cb0e4f43a4cadf1966001ad7c9861f4',1,'clutchlog::threshold(level l)'],['../classclutchlog.html#a7a7738eaad114bfa870121412fe23ad9',1,'clutchlog::threshold(const std::string &l)'],['../classclutchlog.html#ab45287cc9c14217904a13aff49573732',1,'clutchlog::threshold() const']]] + ['threshold_143',['threshold',['../classclutchlog.html#a3cb0e4f43a4cadf1966001ad7c9861f4',1,'clutchlog::threshold(level l)'],['../classclutchlog.html#a7a7738eaad114bfa870121412fe23ad9',1,'clutchlog::threshold(const std::string &l)'],['../classclutchlog.html#ab45287cc9c14217904a13aff49573732',1,'clutchlog::threshold() const']]] ]; diff --git a/docs/search/groups_0.js b/docs/search/groups_0.js index 3333c66..b025ec3 100644 --- a/docs/search/groups_0.js +++ b/docs/search/groups_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['colors_20management_20in_2016_20colors_20mode_20_284_2dbits_20ansi_29_2e_184',['Colors management in 16 colors mode (4-bits ANSI).',['../group__colors16.html',1,'']]] + ['colors_20management_20in_2016_20colors_20mode_20_284_2dbits_20ansi_29_2e_194',['Colors management in 16 colors mode (4-bits ANSI).',['../group__colors16.html',1,'']]] ]; diff --git a/docs/search/groups_1.js b/docs/search/groups_1.js index 521455e..e5cc9dd 100644 --- a/docs/search/groups_1.js +++ b/docs/search/groups_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['default_20configuration_20management_185',['Default configuration management',['../group___default_config.html',1,'']]] + ['default_20configuration_20management_195',['Default configuration management',['../group___default_config.html',1,'']]] ]; diff --git a/docs/search/groups_2.js b/docs/search/groups_2.js index 5481d50..acce32b 100644 --- a/docs/search/groups_2.js +++ b/docs/search/groups_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['formating_20tools_186',['Formating tools',['../group___formating.html',1,'']]] + ['formating_20tools_196',['Formating tools',['../group___formating.html',1,'']]] ]; diff --git a/docs/search/groups_3.js b/docs/search/groups_3.js index 52a5805..0d0e639 100644 --- a/docs/search/groups_3.js +++ b/docs/search/groups_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['high_2dlevel_20api_20macros_187',['High-level API macros',['../group___use_macros.html',1,'']]] + ['high_2dlevel_20api_20macros_197',['High-level API macros',['../group___use_macros.html',1,'']]] ]; diff --git a/docs/search/groups_4.js b/docs/search/groups_4.js index 311b56a..cf87922 100644 --- a/docs/search/groups_4.js +++ b/docs/search/groups_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['internal_20colors_20management_20in_20256_20and_2016m_20colors_20modes_2e_188',['Internal colors management in 256 and 16M colors modes.',['../group__colors256__16_m.html',1,'']]] + ['internal_20colors_20management_20in_20256_20and_2016m_20colors_20modes_2e_198',['Internal colors management in 256 and 16M colors modes.',['../group__colors256__16_m.html',1,'']]] ]; diff --git a/docs/search/groups_5.js b/docs/search/groups_5.js index 52b3e99..988ea36 100644 --- a/docs/search/groups_5.js +++ b/docs/search/groups_5.js @@ -1,4 +1,4 @@ var searchData= [ - ['main_20class_189',['Main class',['../group___main.html',1,'']]] + ['main_20class_199',['Main class',['../group___main.html',1,'']]] ]; diff --git a/docs/search/pages_0.js b/docs/search/pages_0.js index 27ca0fa..29e08ae 100644 --- a/docs/search/pages_0.js +++ b/docs/search/pages_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['clutchlog_20—_20versatile_20_28de_29clutchable_20spatial_20logging_190',['Clutchlog — versatile (de)clutchable spatial logging',['../index.html',1,'']]] + ['clutchlog_20—_20versatile_20_28de_29clutchable_20spatial_20logging_200',['Clutchlog — versatile (de)clutchable spatial logging',['../index.html',1,'']]] ]; diff --git a/docs/search/related_0.js b/docs/search/related_0.js index a5e9afa..76c0205 100644 --- a/docs/search/related_0.js +++ b/docs/search/related_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['operator_3c_3c_179',['operator<<',['../group__colors16.html#ga5a697f5ad3326ea25b139e25252b4cf7',1,'clutchlog::fmt::operator<<()'],['../group__colors16.html#ga379b0af834c7c561edc5c1e3a3427a33',1,'clutchlog::fmt::operator<<()'],['../structclutchlog_1_1fmt_1_1color.html#a826e3d3eba925608442439d6bc3a95a6',1,'clutchlog::fmt::color::operator<<()'],['../classclutchlog_1_1fmt.html#a96849ba427feac3a2eeaa1165e3845da',1,'clutchlog::fmt::operator<<()']]] + ['operator_3c_3c_189',['operator<<',['../group__colors16.html#ga5a697f5ad3326ea25b139e25252b4cf7',1,'clutchlog::fmt::operator<<()'],['../group__colors16.html#ga379b0af834c7c561edc5c1e3a3427a33',1,'clutchlog::fmt::operator<<()'],['../structclutchlog_1_1fmt_1_1color.html#a826e3d3eba925608442439d6bc3a95a6',1,'clutchlog::fmt::color::operator<<()'],['../classclutchlog_1_1fmt.html#a96849ba427feac3a2eeaa1165e3845da',1,'clutchlog::fmt::operator<<()']]] ]; diff --git a/docs/search/variables_0.js b/docs/search/variables_0.js index 27dd7d9..6f6ad7c 100644 --- a/docs/search/variables_0.js +++ b/docs/search/variables_0.js @@ -1,15 +1,17 @@ var searchData= [ - ['_5fformat_5fdump_136',['_format_dump',['../classclutchlog.html#a5f4ddb57ce42e8be86a7c7d269f7bae5',1,'clutchlog']]], - ['_5fformat_5flog_137',['_format_log',['../classclutchlog.html#a7c6e3fc082bc6f55d50131ed2b32e81e',1,'clutchlog']]], - ['_5fin_5ffile_138',['_in_file',['../classclutchlog.html#aded03528f34d9000f618419c482c5042',1,'clutchlog']]], - ['_5fin_5ffunc_139',['_in_func',['../classclutchlog.html#a130c4f12eacbd2028102838fe16b734e',1,'clutchlog']]], - ['_5fin_5fline_140',['_in_line',['../classclutchlog.html#a41757198b29862832a14472a9e5e24c6',1,'clutchlog']]], - ['_5flevel_5ffmt_141',['_level_fmt',['../classclutchlog.html#ab805ac5c33885459f9f752518a4aa735',1,'clutchlog']]], - ['_5flevel_5fshort_142',['_level_short',['../classclutchlog.html#a08e8a817a75a4e9f0159231c941e0dae',1,'clutchlog']]], - ['_5flevel_5fword_143',['_level_word',['../classclutchlog.html#ab1c377a376e6772fe1746ff7147c125f',1,'clutchlog']]], - ['_5fout_144',['_out',['../classclutchlog.html#a1896f6c4b8597e3e76ff93970bd85167',1,'clutchlog']]], - ['_5fstage_145',['_stage',['../classclutchlog.html#aeb60684c89bcef5aa9273075c21cc993',1,'clutchlog']]], - ['_5fstrip_5fcalls_146',['_strip_calls',['../classclutchlog.html#a356df86455409193792b6ed550dfd09e',1,'clutchlog']]], - ['_5fword_5flevel_147',['_word_level',['../classclutchlog.html#abd4625bf211bfbaa30d9c126fa3d7888',1,'clutchlog']]] + ['_5ffilehash_5ffmts_144',['_filehash_fmts',['../classclutchlog.html#a2a334e009533744b52f01ef240a59e9d',1,'clutchlog']]], + ['_5fformat_5fdump_145',['_format_dump',['../classclutchlog.html#a5f4ddb57ce42e8be86a7c7d269f7bae5',1,'clutchlog']]], + ['_5fformat_5flog_146',['_format_log',['../classclutchlog.html#a7c6e3fc082bc6f55d50131ed2b32e81e',1,'clutchlog']]], + ['_5ffunchash_5ffmts_147',['_funchash_fmts',['../classclutchlog.html#a095e1545a2085ac623e4af19364fea7f',1,'clutchlog']]], + ['_5fin_5ffile_148',['_in_file',['../classclutchlog.html#aded03528f34d9000f618419c482c5042',1,'clutchlog']]], + ['_5fin_5ffunc_149',['_in_func',['../classclutchlog.html#a130c4f12eacbd2028102838fe16b734e',1,'clutchlog']]], + ['_5fin_5fline_150',['_in_line',['../classclutchlog.html#a41757198b29862832a14472a9e5e24c6',1,'clutchlog']]], + ['_5flevel_5ffmt_151',['_level_fmt',['../classclutchlog.html#ab805ac5c33885459f9f752518a4aa735',1,'clutchlog']]], + ['_5flevel_5fshort_152',['_level_short',['../classclutchlog.html#a08e8a817a75a4e9f0159231c941e0dae',1,'clutchlog']]], + ['_5flevel_5fword_153',['_level_word',['../classclutchlog.html#ab1c377a376e6772fe1746ff7147c125f',1,'clutchlog']]], + ['_5fout_154',['_out',['../classclutchlog.html#a1896f6c4b8597e3e76ff93970bd85167',1,'clutchlog']]], + ['_5fstage_155',['_stage',['../classclutchlog.html#aeb60684c89bcef5aa9273075c21cc993',1,'clutchlog']]], + ['_5fstrip_5fcalls_156',['_strip_calls',['../classclutchlog.html#a356df86455409193792b6ed550dfd09e',1,'clutchlog']]], + ['_5fword_5flevel_157',['_word_level',['../classclutchlog.html#abd4625bf211bfbaa30d9c126fa3d7888',1,'clutchlog']]] ]; diff --git a/docs/search/variables_1.js b/docs/search/variables_1.js index 24ccd13..0806588 100644 --- a/docs/search/variables_1.js +++ b/docs/search/variables_1.js @@ -1,6 +1,6 @@ var searchData= [ - ['back_148',['back',['../group__colors16.html#ga86696b20e5b31c96ba592926efb324f3',1,'clutchlog::fmt']]], - ['back_5f16m_149',['back_16M',['../group__colors256__16_m.html#gaa2fcbb402dc2426d3720b8bc78a80ec0',1,'clutchlog::fmt']]], - ['back_5f256_150',['back_256',['../group__colors256__16_m.html#ga1d687af385957846034568c3a62d4ef0',1,'clutchlog::fmt']]] + ['back_158',['back',['../group__colors16.html#ga86696b20e5b31c96ba592926efb324f3',1,'clutchlog::fmt']]], + ['back_5f16m_159',['back_16M',['../group__colors256__16_m.html#gaa2fcbb402dc2426d3720b8bc78a80ec0',1,'clutchlog::fmt']]], + ['back_5f256_160',['back_256',['../group__colors256__16_m.html#ga1d687af385957846034568c3a62d4ef0',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/variables_2.js b/docs/search/variables_2.js index c56b083..eb6ab1c 100644 --- a/docs/search/variables_2.js +++ b/docs/search/variables_2.js @@ -1,11 +1,11 @@ var searchData= [ - ['default_5fdepth_5fmark_151',['default_depth_mark',['../classclutchlog.html#a229fd61519f1245282440120f2d45fb5',1,'clutchlog']]], - ['default_5fformat_152',['default_format',['../classclutchlog.html#a0c4ac57601e6f8d146fd5cc060968ecc',1,'clutchlog']]], - ['default_5fhfill_5fchar_153',['default_hfill_char',['../classclutchlog.html#a76eb34537b634aadb75e255f7887eeb6',1,'clutchlog']]], - ['default_5fhfill_5fmax_154',['default_hfill_max',['../classclutchlog.html#ac95630bfe9cf547d2b7c4b3430eaedc1',1,'clutchlog']]], - ['default_5fhfill_5fmin_155',['default_hfill_min',['../classclutchlog.html#a5a9a98c3528117223ceff22bc6bee5f7',1,'clutchlog']]], - ['default_5fstrip_5fcalls_156',['default_strip_calls',['../classclutchlog.html#a1a8cb6411726133208f5a2f2cb42d468',1,'clutchlog']]], - ['dump_5fdefault_5fformat_157',['dump_default_format',['../classclutchlog.html#ace879554298e6e6e36dafef330c27be8',1,'clutchlog']]], - ['dump_5fdefault_5fsep_158',['dump_default_sep',['../classclutchlog.html#af898bffe23b125245e338d7495c76d45',1,'clutchlog']]] + ['default_5fdepth_5fmark_161',['default_depth_mark',['../classclutchlog.html#a229fd61519f1245282440120f2d45fb5',1,'clutchlog']]], + ['default_5fformat_162',['default_format',['../classclutchlog.html#a0c4ac57601e6f8d146fd5cc060968ecc',1,'clutchlog']]], + ['default_5fhfill_5fchar_163',['default_hfill_char',['../classclutchlog.html#a76eb34537b634aadb75e255f7887eeb6',1,'clutchlog']]], + ['default_5fhfill_5fmax_164',['default_hfill_max',['../classclutchlog.html#ac95630bfe9cf547d2b7c4b3430eaedc1',1,'clutchlog']]], + ['default_5fhfill_5fmin_165',['default_hfill_min',['../classclutchlog.html#a5a9a98c3528117223ceff22bc6bee5f7',1,'clutchlog']]], + ['default_5fstrip_5fcalls_166',['default_strip_calls',['../classclutchlog.html#a1a8cb6411726133208f5a2f2cb42d468',1,'clutchlog']]], + ['dump_5fdefault_5fformat_167',['dump_default_format',['../classclutchlog.html#ace879554298e6e6e36dafef330c27be8',1,'clutchlog']]], + ['dump_5fdefault_5fsep_168',['dump_default_sep',['../classclutchlog.html#af898bffe23b125245e338d7495c76d45',1,'clutchlog']]] ]; diff --git a/docs/search/variables_3.js b/docs/search/variables_3.js index b1dba74..4d5adb2 100644 --- a/docs/search/variables_3.js +++ b/docs/search/variables_3.js @@ -1,6 +1,6 @@ var searchData= [ - ['fore_159',['fore',['../group__colors16.html#ga8307a848fcf9ed929435b3e1f2b53401',1,'clutchlog::fmt']]], - ['fore_5f16m_160',['fore_16M',['../group__colors256__16_m.html#ga626c99eb11d1718d7a2a8bb3f079e6de',1,'clutchlog::fmt']]], - ['fore_5f256_161',['fore_256',['../group__colors256__16_m.html#gad98fbe84ef338ded8425d56955825a2c',1,'clutchlog::fmt']]] + ['fore_169',['fore',['../group__colors16.html#ga8307a848fcf9ed929435b3e1f2b53401',1,'clutchlog::fmt']]], + ['fore_5f16m_170',['fore_16M',['../group__colors256__16_m.html#ga626c99eb11d1718d7a2a8bb3f079e6de',1,'clutchlog::fmt']]], + ['fore_5f256_171',['fore_256',['../group__colors256__16_m.html#gad98fbe84ef338ded8425d56955825a2c',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/variables_4.js b/docs/search/variables_4.js index 6b699e3..d0d1d16 100644 --- a/docs/search/variables_4.js +++ b/docs/search/variables_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['index_162',['index',['../structclutchlog_1_1fmt_1_1color__256.html#a8e0b13d6bad87c83c3465524a5d33988',1,'clutchlog::fmt::color_256']]] + ['index_172',['index',['../structclutchlog_1_1fmt_1_1color__256.html#a8e0b13d6bad87c83c3465524a5d33988',1,'clutchlog::fmt::color_256']]] ]; diff --git a/docs/search/variables_5.js b/docs/search/variables_5.js index 7c3b904..b4ea7bf 100644 --- a/docs/search/variables_5.js +++ b/docs/search/variables_5.js @@ -1,5 +1,5 @@ var searchData= [ - ['matches_163',['matches',['../structclutchlog_1_1scope__t.html#ae6c0e4ed20db797124ed1e5faa033ad9',1,'clutchlog::scope_t']]], - ['mode_164',['mode',['../classclutchlog_1_1fmt.html#a0aa57cdd56ccc79c7750921ab534b205',1,'clutchlog::fmt']]] + ['matches_173',['matches',['../structclutchlog_1_1scope__t.html#ae6c0e4ed20db797124ed1e5faa033ad9',1,'clutchlog::scope_t']]], + ['mode_174',['mode',['../classclutchlog_1_1fmt.html#a0aa57cdd56ccc79c7750921ab534b205',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/variables_6.js b/docs/search/variables_6.js index 65a2424..6272c0e 100644 --- a/docs/search/variables_6.js +++ b/docs/search/variables_6.js @@ -1,4 +1,4 @@ var searchData= [ - ['red_165',['red',['../structclutchlog_1_1fmt_1_1color__16_m.html#a19e1517a9afb75a4e6224f718ed11c61',1,'clutchlog::fmt::color_16M']]] + ['red_175',['red',['../structclutchlog_1_1fmt_1_1color__16_m.html#a19e1517a9afb75a4e6224f718ed11c61',1,'clutchlog::fmt::color_16M']]] ]; diff --git a/docs/search/variables_7.js b/docs/search/variables_7.js index b7f1331..344faaf 100644 --- a/docs/search/variables_7.js +++ b/docs/search/variables_7.js @@ -1,5 +1,5 @@ var searchData= [ - ['stage_166',['stage',['../structclutchlog_1_1scope__t.html#adcca6846ff90d436c61861db85917744',1,'clutchlog::scope_t']]], - ['style_167',['style',['../classclutchlog_1_1fmt.html#a2bb0fde65fcd264393e102314dd1610b',1,'clutchlog::fmt']]] + ['stage_176',['stage',['../structclutchlog_1_1scope__t.html#adcca6846ff90d436c61861db85917744',1,'clutchlog::scope_t']]], + ['style_177',['style',['../classclutchlog_1_1fmt.html#a2bb0fde65fcd264393e102314dd1610b',1,'clutchlog::fmt']]] ]; diff --git a/docs/search/variables_8.js b/docs/search/variables_8.js index 3fe92fe..cbbacf9 100644 --- a/docs/search/variables_8.js +++ b/docs/search/variables_8.js @@ -1,5 +1,5 @@ var searchData= [ - ['there_168',['there',['../structclutchlog_1_1scope__t.html#a7918e55cd3bac1bd30c69b8c711387ff',1,'clutchlog::scope_t']]], - ['type_169',['type',['../structclutchlog_1_1fmt_1_1color.html#a3fd18c290567bd5c4971663a1aed12ae',1,'clutchlog::fmt::color']]] + ['there_178',['there',['../structclutchlog_1_1scope__t.html#a7918e55cd3bac1bd30c69b8c711387ff',1,'clutchlog::scope_t']]], + ['type_179',['type',['../structclutchlog_1_1fmt_1_1color.html#a3fd18c290567bd5c4971663a1aed12ae',1,'clutchlog::fmt::color']]] ]; diff --git a/docs/structclutchlog_1_1fmt_1_1bg__16_m-members.html b/docs/structclutchlog_1_1fmt_1_1bg__16_m-members.html index 2067aa2..49f9f1f 100644 --- a/docs/structclutchlog_1_1fmt_1_1bg__16_m-members.html +++ b/docs/structclutchlog_1_1fmt_1_1bg__16_m-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1bg__16_m.html b/docs/structclutchlog_1_1fmt_1_1bg__16_m.html index 55fcdc1..e57e1c4 100644 --- a/docs/structclutchlog_1_1fmt_1_1bg__16_m.html +++ b/docs/structclutchlog_1_1fmt_1_1bg__16_m.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1bg__256-members.html b/docs/structclutchlog_1_1fmt_1_1bg__256-members.html index 94afbc8..10b2cb0 100644 --- a/docs/structclutchlog_1_1fmt_1_1bg__256-members.html +++ b/docs/structclutchlog_1_1fmt_1_1bg__256-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1bg__256.html b/docs/structclutchlog_1_1fmt_1_1bg__256.html index 8932b67..336b59e 100644 --- a/docs/structclutchlog_1_1fmt_1_1bg__256.html +++ b/docs/structclutchlog_1_1fmt_1_1bg__256.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1color-members.html b/docs/structclutchlog_1_1fmt_1_1color-members.html index 9379dce..757fda2 100644 --- a/docs/structclutchlog_1_1fmt_1_1color-members.html +++ b/docs/structclutchlog_1_1fmt_1_1color-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1color.html b/docs/structclutchlog_1_1fmt_1_1color.html index 712e756..db95366 100644 --- a/docs/structclutchlog_1_1fmt_1_1color.html +++ b/docs/structclutchlog_1_1fmt_1_1color.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1color__16_m-members.html b/docs/structclutchlog_1_1fmt_1_1color__16_m-members.html index f4d107c..31557b4 100644 --- a/docs/structclutchlog_1_1fmt_1_1color__16_m-members.html +++ b/docs/structclutchlog_1_1fmt_1_1color__16_m-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1color__16_m.html b/docs/structclutchlog_1_1fmt_1_1color__16_m.html index c04702e..0fe3bff 100644 --- a/docs/structclutchlog_1_1fmt_1_1color__16_m.html +++ b/docs/structclutchlog_1_1fmt_1_1color__16_m.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1color__256-members.html b/docs/structclutchlog_1_1fmt_1_1color__256-members.html index fce44af..5cccd03 100644 --- a/docs/structclutchlog_1_1fmt_1_1color__256-members.html +++ b/docs/structclutchlog_1_1fmt_1_1color__256-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1color__256.html b/docs/structclutchlog_1_1fmt_1_1color__256.html index f3a6646..2f50ba0 100644 --- a/docs/structclutchlog_1_1fmt_1_1color__256.html +++ b/docs/structclutchlog_1_1fmt_1_1color__256.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1fg__16_m-members.html b/docs/structclutchlog_1_1fmt_1_1fg__16_m-members.html index 84fec36..e3cc77f 100644 --- a/docs/structclutchlog_1_1fmt_1_1fg__16_m-members.html +++ b/docs/structclutchlog_1_1fmt_1_1fg__16_m-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1fg__16_m.html b/docs/structclutchlog_1_1fmt_1_1fg__16_m.html index db89eeb..f247f4e 100644 --- a/docs/structclutchlog_1_1fmt_1_1fg__16_m.html +++ b/docs/structclutchlog_1_1fmt_1_1fg__16_m.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1fg__256-members.html b/docs/structclutchlog_1_1fmt_1_1fg__256-members.html index d713712..12e7b3c 100644 --- a/docs/structclutchlog_1_1fmt_1_1fg__256-members.html +++ b/docs/structclutchlog_1_1fmt_1_1fg__256-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1fmt_1_1fg__256.html b/docs/structclutchlog_1_1fmt_1_1fg__256.html index 5e639b3..1ad8c5e 100644 --- a/docs/structclutchlog_1_1fmt_1_1fg__256.html +++ b/docs/structclutchlog_1_1fmt_1_1fg__256.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1scope__t-members.html b/docs/structclutchlog_1_1scope__t-members.html index 44ff5bf..d89e82b 100644 --- a/docs/structclutchlog_1_1scope__t-members.html +++ b/docs/structclutchlog_1_1scope__t-members.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/structclutchlog_1_1scope__t.html b/docs/structclutchlog_1_1scope__t.html index 27d9de9..d617018 100644 --- a/docs/structclutchlog_1_1scope__t.html +++ b/docs/structclutchlog_1_1scope__t.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
@@ -100,7 +100,7 @@ $(document).ready(function(){initNavTree('structclutchlog_1_1scope__t.html','');

Detailed Description

Structure holding a location matching.

-

Definition at line 1062 of file clutchlog.h.

+

Definition at line 1108 of file clutchlog.h.

diff --git a/docs/t-assert_8cpp_source.html b/docs/t-assert_8cpp_source.html index be34ca5..8852f2e 100644 --- a/docs/t-assert_8cpp_source.html +++ b/docs/t-assert_8cpp_source.html @@ -28,7 +28,7 @@ diff --git a/docs/t-color16_m_8cpp_source.html b/docs/t-color16_m_8cpp_source.html index 2e2acdc..85e3454 100644 --- a/docs/t-color16_m_8cpp_source.html +++ b/docs/t-color16_m_8cpp_source.html @@ -28,7 +28,7 @@ diff --git a/docs/t-color256_8cpp_source.html b/docs/t-color256_8cpp_source.html index 0a483ed..706cf88 100644 --- a/docs/t-color256_8cpp_source.html +++ b/docs/t-color256_8cpp_source.html @@ -28,7 +28,7 @@ diff --git a/docs/t-color_8cpp_source.html b/docs/t-color_8cpp_source.html index 8ed2576..93e8be3 100644 --- a/docs/t-color_8cpp_source.html +++ b/docs/t-color_8cpp_source.html @@ -28,7 +28,7 @@ diff --git a/docs/t-demo-extravagant_8cpp_source.html b/docs/t-demo-extravagant_8cpp_source.html index bdb6a91..4784232 100644 --- a/docs/t-demo-extravagant_8cpp_source.html +++ b/docs/t-demo-extravagant_8cpp_source.html @@ -28,7 +28,7 @@ @@ -92,106 +92,127 @@ $(document).ready(function(){initNavTree('t-demo-extravagant_8cpp_source.html','
2 
3 #include "../clutchlog/clutchlog.h"
4 
-
5 void i()
+
5 void dump_data()
6 {
-
7  CLUTCHLOG(progress, "Reset data structures...");
-
8  CLUTCHLOG(debug, "OK");
-
9  CLUTCHLOG(info, "Reset functors...");
-
10  CLUTCHLOG(critical, "Impossible to reset, I cannot recover.");
+
7  CLUTCHLOG(progress, "Dump parsed data...");
+
8  CLUTCHLOG(debug, "Write in `data_dump.csv`");
+
9  CLUTCHLOG(debug, "Data frame size: " << 0 << "x" << "150");
+
10  CLUTCHLOG(xdebug, "Resolution: " << 0);
11 }
12 
-
13 void h()
+
13 void reset()
14 {
-
15  CLUTCHLOG(note, "Filling up data of size: " << 0);
-
16  CLUTCHLOG(error, "Cannot parse input, I will reset stuff.");
-
17  i();
-
18  CLUTCHLOG(xdebug, "Last seen state: " << 0);
-
19 }
-
20 
-
21 void g()
-
22 {
-
23  CLUTCHLOG(warning, "Input size < " << 1);
-
24  h();
-
25 }
-
26 
-
27 void f()
-
28 {
-
29  CLUTCHLOG(progress, "Initialize data structures...");
-
30  CLUTCHLOG(debug, "OK");
-
31  CLUTCHLOG(progress, "Initialize functors...");
-
32  CLUTCHLOG(debug, "OK");
-
33  g();
-
34 }
-
35 
-
36 int main(const int argc, char* argv[])
-
37 {
-
38  using level = clutchlog::level;
-
39  using fmt = clutchlog::fmt;
-
40  using fg = clutchlog::fmt::fg;
-
41  using bg = clutchlog::fmt::bg;
-
42  using typo = clutchlog::fmt::typo;
+
15  CLUTCHLOG(progress, "Reset data structures...");
+
16  CLUTCHLOG(debug, "OK");
+
17  CLUTCHLOG(info, "Reset functors...");
+
18  CLUTCHLOG(critical, "Impossible to reset, I cannot recover.");
+
19  dump_data();
+
20 }
+
21 
+
22 void process()
+
23 {
+
24  CLUTCHLOG(note, "Filling up data of size: " << 0);
+
25  CLUTCHLOG(error, "Cannot parse input, I will reset stuff.");
+
26  reset();
+
27  CLUTCHLOG(xdebug, "Last seen state: " << 0);
+
28 }
+
29 
+
30 void init_data()
+
31 {
+
32  CLUTCHLOG(debug, "Data frame size: " << 2 << "x" << "150");
+
33  CLUTCHLOG(xdebug, "Resolution: " << 0.001);
+
34  CLUTCHLOG(warning, "Input height < " << 3);
+
35 }
+
36 
+
37 void init_func()
+
38 {
+
39  CLUTCHLOG(progress, "Allocate memory...");
+
40  CLUTCHLOG(warning, "Dimension: " << 12);
+
41  CLUTCHLOG(debug, "OK");
+
42 }
43 
-
44  auto& log = clutchlog::logger();
-
45 
-
46  log.style(level::critical, 197);
-
47  log.style(level::error, 202);
-
48  log.style(level::warning, 208);
-
49  log.style(level::progress, 34);
-
50  log.style(level::note, 35);
-
51  log.style(level::info, 36);
-
52  log.style(level::debug, 39);
-
53  log.style(level::xdebug, 45);
-
54  std::ostringstream format;
-
55  fmt reset(typo::reset);
-
56  fmt discreet(fg::black);
-
57  fmt bold(fmt::typo::bold);
-
58 
-
59  log.depth_mark("| ");
-
60  log.hfill_min(400);
-
61  log.hfill_max(500);
-
62  log.hfill_mark('-');
-
63 
-
64  const short dark = 238;
-
65  const short lite = 250;
+
44 void init()
+
45 {
+
46  CLUTCHLOG(progress, "Initialize data structures...");
+
47  init_data();
+
48  CLUTCHLOG(debug, "OK");
+
49  CLUTCHLOG(progress, "Initialize functors...");
+
50  init_func();
+
51  CLUTCHLOG(debug, "OK");
+
52  CLUTCHLOG(progress, "Process...");
+
53  process();
+
54  CLUTCHLOG(debug, "OK");
+
55 }
+
56 
+
57 int main(const int argc, char* argv[])
+
58 {
+
59  using level = clutchlog::level;
+
60  using fmt = clutchlog::fmt;
+
61  using fg = clutchlog::fmt::fg;
+
62  using bg = clutchlog::fmt::bg;
+
63  using typo = clutchlog::fmt::typo;
+
64 
+
65  auto& log = clutchlog::logger();
66 
-
67  format
-
68  << fmt(dark,lite) << "{name}"
-
69  << fmt(lite,dark) << ""
-
70  << fmt(fg::none,dark) << "{level_fmt}" << " {level_short} " << reset
-
71  << fmt(dark,bg::none) << "" << reset
-
72  << fmt(dark,bg::none) << "{depth_marks}" << reset
-
73  << "{level_fmt}"
-
74  << bold("{msg}")
-
75  << discreet(" {hfill} ")
-
76  << fmt(dark,bg::none) << ""
-
77  << fmt(fg::none,dark) << "{level_fmt} {func} "
-
78  << fmt(lite,dark) << ""
-
79  << fmt(dark,lite) << "{file}" << reset
-
80  << fmt(dark,lite) << ""
-
81  << fmt(lite,dark) << "{line}" << reset
-
82  << "\n";
-
83  log.format(format.str());
+
67  log.style(level::critical, 197);
+
68  log.style(level::error, 202);
+
69  log.style(level::warning, 208);
+
70  log.style(level::progress, 34);
+
71  log.style(level::note, 35);
+
72  log.style(level::info, 36);
+
73  log.style(level::debug, 39);
+
74  log.style(level::xdebug, 45);
+
75  std::ostringstream format;
+
76  fmt reset(typo::reset);
+
77  fmt discreet(fg::black);
+
78  fmt bold(fmt::typo::bold);
+
79 
+
80  log.depth_mark("| ");
+
81  log.hfill_min(400);
+
82  log.hfill_max(500);
+
83  log.hfill_mark('-');
84 
-
85  log.out(std::clog);
-
86  log.strip_calls(4);
+
85  const short dark = 238;
+
86  const short lite = 250;
87 
-
88  if(argc <= 2) {
-
89  CLUTCHLOG(warning, "Log level not indicated, will default to xdebug");
-
90  log.threshold(level::xdebug);
-
91  } else {
-
92  try {
-
93  log.threshold(log.level_of(argv[1]));
-
94  } catch(std::out_of_range& err) {
-
95  CLUTCHLOG(critical,err.what());
-
96  exit(100);
-
97  }
-
98  }
-
99 
-
100  CLUTCHLOG(progress,"Start something");
-
101  f();
-
102  CLUTCHLOG(progress,"I have stopped");
-
103 }
-
104 
+
88  format
+
89  << fmt(dark,lite) << "{name}"
+
90  << fmt(lite,dark) << ""
+
91  << fmt(fg::none,dark) << "{level_fmt}" << " {level_short} " << reset
+
92  << fmt(dark,bg::none) << "" << reset
+
93  << fmt(dark,bg::none) << "{depth_marks}" << reset
+
94  << "{level_fmt}"
+
95  << bold("{msg}")
+
96  << discreet(" {hfill} ")
+
97  << fmt(dark,bg::none) << ""
+
98  << fmt(fg::none,dark) << "{level_fmt} {func} "
+
99  << fmt(lite,dark) << ""
+
100  << fmt(dark,lite) << "{file}" << reset
+
101  << fmt(dark,lite) << ""
+
102  << fmt(lite,dark) << "{line}" << reset
+
103  << "\n";
+
104  log.format(format.str());
+
105 
+
106  log.out(std::clog);
+
107  log.strip_calls(4);
+
108 
+
109  if(argc <= 2) {
+
110  CLUTCHLOG(warning, "Log level not indicated, will default to xdebug");
+
111  log.threshold(level::xdebug);
+
112  } else {
+
113  try {
+
114  log.threshold(log.level_of(argv[1]));
+
115  } catch(std::out_of_range& err) {
+
116  CLUTCHLOG(critical,err.what());
+
117  exit(100);
+
118  }
+
119  }
+
120 
+
121  CLUTCHLOG(progress,"Start analysis");
+
122  init();
+
123  CLUTCHLOG(progress,"I have stopped");
+
124 }
+
125 
clutchlog::level
level
Available log levels.
Definition: clutchlog.h:303
diff --git a/docs/t-demo_8cpp_source.html b/docs/t-demo_8cpp_source.html index 94db5cf..d28f1d6 100644 --- a/docs/t-demo_8cpp_source.html +++ b/docs/t-demo_8cpp_source.html @@ -28,7 +28,7 @@ diff --git a/docs/t-dump_8cpp_source.html b/docs/t-dump_8cpp_source.html index 94d1b6c..86d4bdd 100644 --- a/docs/t-dump_8cpp_source.html +++ b/docs/t-dump_8cpp_source.html @@ -28,7 +28,7 @@ diff --git a/docs/t-fmt-constructors_8cpp_source.html b/docs/t-fmt-constructors_8cpp_source.html index c5fddac..05e960c 100644 --- a/docs/t-fmt-constructors_8cpp_source.html +++ b/docs/t-fmt-constructors_8cpp_source.html @@ -28,7 +28,7 @@ diff --git a/docs/t-hash-color_8cpp_source.html b/docs/t-hash-color_8cpp_source.html new file mode 100644 index 0000000..be054ac --- /dev/null +++ b/docs/t-hash-color_8cpp_source.html @@ -0,0 +1,156 @@ + + + + + + + +clutchlog: t-hash-color.cpp Source File + + + + + + + + + + + + + + +
+
+

Public Member Functions

clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
clutchlog -  0.13 +  0.14
+ + + + + + +
+
clutchlog +  0.14 +
+
+ + + + + + + + + +
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
t-hash-color.cpp
+
+
+
1 #include <iostream>
+
2 #include <limits>
+
3 
+
4 #include "../clutchlog/clutchlog.h"
+
5 
+
6 void deepcall()
+
7 {
+
8  CLUTCHLOG(warning,"at depth 4");
+
9 }
+
10 
+
11 void subsubsubcall()
+
12 {
+
13  CLUTCHLOG(warning,"at depth 3");
+
14  deepcall();
+
15 }
+
16 
+
17 void subsubcall()
+
18 {
+
19  CLUTCHLOG(warning,"at depth 2");
+
20  subsubsubcall();
+
21 }
+
22 
+
23 void subcall()
+
24 {
+
25  CLUTCHLOG(warning,"at depth 1");
+
26  subsubcall();
+
27 }
+
28 
+
29 int main(/*const int argc, char* argv[]*/)
+
30 {
+
31  auto& log = clutchlog::logger();
+
32  using fmt = clutchlog::fmt;
+
33  using typo = clutchlog::fmt::typo;
+
34 
+
35  fmt reset(typo::reset);
+
36  std::ostringstream tpl;
+
37  tpl << "{level_fmt}Having a {level} {filehash_fmt}within {file} {funchash_fmt}calling {func} {depth_fmt}at level {depth}"
+
38  << reset << " : {msg}\n";
+
39  log.format(tpl.str());
+
40  log.threshold(clutchlog::level::xdebug);
+
41 
+
42  log.filehash_styles( {fmt(fmt::fg::red), fmt(fmt::fg::yellow)} );
+
43  log.funchash_styles( {fmt(fmt::fg::green), fmt(fmt::fg::blue),
+
44  fmt(fmt::fg::bright_green), fmt(fmt::fg::bright_blue), fmt(fmt::fg::magenta)} );
+
45  log.depth_styles( {fmt(255),fmt(250),fmt(245),fmt(240)} );
+
46 
+
47  CLUTCHLOG(warning,"in main");
+
48  subcall();
+
49 }
+
+
+
clutchlog::logger
static clutchlog & logger()
Get the logger instance.
Definition: clutchlog.h:296
+
clutchlog::fmt
Color and style formatter for ANSI terminal escape sequences.
Definition: clutchlog.h:366
+
CLUTCHLOG
#define CLUTCHLOG(LEVEL, WHAT)
Log a message at the given level.
Definition: clutchlog.h:81
+
clutchlog::fmt::typo
typo
Typographic style codes.
Definition: clutchlog.h:379
+ + + + diff --git a/docs/t-log_8cpp_source.html b/docs/t-log_8cpp_source.html index ec1e9f6..7cb9a37 100644 --- a/docs/t-log_8cpp_source.html +++ b/docs/t-log_8cpp_source.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14
diff --git a/docs/t-one-line-if_8cpp_source.html b/docs/t-one-line-if_8cpp_source.html index c862313..4094cc3 100644 --- a/docs/t-one-line-if_8cpp_source.html +++ b/docs/t-one-line-if_8cpp_source.html @@ -28,7 +28,7 @@ Logo
clutchlog -  0.13 +  0.14