Code forensics  0.1
Generate historical information about code changes
ir::content_manager Struct Reference

Main store for repository analysis. More...

#include <git_ir.hpp>

Public Member Functions

auto parentDirectory (CR< Path > dir) -> Opt< DirectoryId >
 Get optional parent directory Id from the path. More...
 
auto getDirectory (CR< Path > dir) -> DirectoryId
 Get directory ID from the provided path. More...
 
FilePathId getFilePath (CR< Str > file)
 
template<dod::IsIdType Id>
auto at (Id id) -> typename dod::value_type_t< Id > &
 Get reference to value pointed to by the ID. More...
 
template<dod::IsIdType Id>
auto cat (Id id) const -> CR< dod::value_type_t< Id >>
 
template<typename T >
auto add (CR< T > it) -> dod::id_type_t< T >
 Push in a value, return newly generated ID. More...
 

Public Attributes

dod::MultiStore< dod::InternStore< AuthorId, Author >, dod::InternStore< LineId, LineData >, dod::Store< FileId, File >, dod::InternStore< FilePathId, FilePath >, dod::Store< CommitId, Commit >, dod::InternStore< DirectoryId, Directory >, dod::InternStore< StringId, String > > multi
 
std::unordered_map< Str, DirectoryId > prefixes
 

Detailed Description

Main store for repository analysis.

Member Function Documentation

◆ add()

template<typename T >
auto ir::content_manager::add ( CR< T >  it) -> dod::id_type_t<T>
inline

Push in a value, return newly generated ID.

◆ at()

template<dod::IsIdType Id>
auto ir::content_manager::at ( Id  id) -> typename dod::value_type_t<Id>&
inline

Get reference to value pointed to by the ID.

◆ cat()

template<dod::IsIdType Id>
auto ir::content_manager::cat ( Id  id) const -> CR<dod::value_type_t<Id>>
inline

◆ getDirectory()

auto ir::content_manager::getDirectory ( CR< Path >  dir) -> DirectoryId
inline

Get directory ID from the provided path.

◆ getFilePath()

FilePathId ir::content_manager::getFilePath ( CR< Str >  file)
inline

◆ parentDirectory()

auto ir::content_manager::parentDirectory ( CR< Path >  dir) -> Opt<DirectoryId>
inline

Get optional parent directory Id from the path.

Member Data Documentation

◆ multi

dod::MultiStore< dod::InternStore<AuthorId, Author>, dod::InternStore<LineId, LineData>, dod::Store<FileId, File>, dod::InternStore<FilePathId, FilePath>, dod::Store<CommitId, Commit>, dod::InternStore<DirectoryId, Directory>, dod::InternStore<StringId, String> > ir::content_manager::multi

◆ prefixes

std::unordered_map<Str, DirectoryId> ir::content_manager::prefixes

The documentation for this struct was generated from the following file: