From PR #456 , a few design items popped up worth fixing (much thanks to @bdutro ):
Report::add might be worth templatizing. It looks like several of the overrides share the same code.
Originally posted by @bdutro in #456 (comment)
...maybe add overloads for this method for the cases where already_used and/or report_si aren't needed.
Originally posted by @bdutro in #456 (comment)
It looks like these three members are never used at the same time. Either sdef_ is used, or ctr_ is used, or par_ is used. If these don't share a common base class with virtual methods, it might make sense to add a templatized wrapper class that can handle this instead of having if-else-if-else-if everywhere.
Originally posted by @bdutro in #456 (comment)
From PR #456 , a few design items popped up worth fixing (much thanks to @bdutro ):
Report::addmight be worth templatizing. It looks like several of the overrides share the same code.Originally posted by @bdutro in #456 (comment)
...maybe add overloads for this method for the cases where already_used and/or report_si aren't needed.
Originally posted by @bdutro in #456 (comment)
It looks like these three members are never used at the same time. Either sdef_ is used, or ctr_ is used, or par_ is used. If these don't share a common base class with virtual methods, it might make sense to add a templatized wrapper class that can handle this instead of having if-else-if-else-if everywhere.
Originally posted by @bdutro in #456 (comment)