Code forensics
0.1
Generate historical information about code changes
|
Main code analysis state and configuration classes. More...
#include <unordered_set>
#include <algorithm>
#include <chrono>
#include <boost/log/trivial.hpp>
#include <boost/date_time/gregorian/gregorian.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <boost/describe.hpp>
#include <boost/mp11.hpp>
#include "common.hpp"
#include "git_interface.hpp"
#include "git_ir.hpp"
Go to the source code of this file.
Classes | |
struct | fmt::formatter< T, char, std::enable_if_t< boost::describe::has_describe_bases< T >::value &&boost::describe::has_describe_members< T >::value &&!std::is_union< T >::value > > |
struct | fmt::formatter< T, char, std::enable_if_t< boost::describe::has_describe_enumerators< T >::value > > |
templated formatter for all classes that were 'described' using boost/describe macros. More... | |
struct | fmt::formatter< Date > |
formatter specialization for gregorian dates More... | |
struct | fmt::formatter< PTime > |
formatter specification for posix time More... | |
struct | walker_config |
runtime configuration state object More... | |
struct | walker_state |
Mutable state passed around walker configurations. More... | |
Typedefs | |
using | Logger = boost::log::sources::severity_logger< boost::log::trivial::severity_level > |
using | Date = boost::gregorian::date |
using | PTime = boost::posix_time::ptime |
using | TimeDuration = boost::posix_time::time_duration |
using | TimePoint = stime::time_point< stime::system_clock > |
stdlib time point alias More... | |
Enumerations | |
enum | Analytics { Analytics::BlameBurndown, Analytics::CommitDiffInfo, Analytics::Commits } |
Different modes of repository analytics enabled in the application. Mapped to the --analytics command line option. More... | |
Functions | |
BOOST_DESCRIBE_ENUM (Analytics, BlameBurndown, Commits, CommitDiffInfo) | |
Variables | |
template<typename E > | |
concept | IsDescribedEnum = bd::has_describe_enumerators<E>::value |
Convenience concept for interfacing with 'described' enumeration types. More... | |
Main code analysis state and configuration classes.
using Date = boost::gregorian::date |
using Logger = boost::log::sources::severity_logger< boost::log::trivial::severity_level> |
using PTime = boost::posix_time::ptime |
using TimeDuration = boost::posix_time::time_duration |
using TimePoint = stime::time_point<stime::system_clock> |
stdlib time point alias
|
strong |
Different modes of repository analytics enabled in the application. Mapped to the --analytics
command line option.
BOOST_DESCRIBE_ENUM | ( | Analytics | , |
BlameBurndown | , | ||
Commits | , | ||
CommitDiffInfo | |||
) |
concept IsDescribedEnum = bd::has_describe_enumerators<E>::value |
Convenience concept for interfacing with 'described' enumeration types.