Code forensics  0.1
Generate historical information about code changes
ir Namespace Reference

Classes

struct  Author
 Author - name and email found during the source code analysis. More...
 
struct  Commit
 single commit by author, taken at some point in time More...
 
struct  content_manager
 Main store for repository analysis. More...
 
struct  Directory
 Full directory path and it's parent ID. More...
 
struct  EditedFile
 
struct  File
 single version of the file that appeared in some commit More...
 
struct  FilePath
 file path with associated parent directory information More...
 
struct  LineData
 Unique combination of author+time+content for some line in database. More...
 
struct  orm_author
 ORM wrapper for the author data. More...
 
struct  orm_commit
 ORM wrapper for the commit data. More...
 
struct  orm_dir
 ORM wrapper for the directory data. More...
 
struct  orm_edited_files
 
struct  orm_file
 ORM wrapper for the file data. More...
 
struct  orm_file_path
 
struct  orm_line
 ORM wrapper for the line data. More...
 
struct  orm_lines_table
 ORM wrapper for the file lines data ir::File::lines. More...
 
struct  orm_renamed_file
 
struct  orm_string
 ORM wrapper for the string data. More...
 
struct  RenamedFile
 
struct  String
 Table of interned stirngs for different purposes. More...
 

Typedefs

using DbConnection = decltype(create_db(""))
 Database connection type alias. More...
 

Functions

 DECL_ID_TYPE (LineData, LineId, std::size_t)
 
 DECL_ID_TYPE (Commit, CommitId, std::size_t)
 
 DECL_ID_TYPE (File, FileId, std::size_t)
 
 DECL_ID_TYPE (FilePath, FilePathId, std::size_t)
 
 DECL_ID_TYPE (Directory, DirectoryId, std::size_t)
 
 DECL_ID_TYPE (String, StringId, std::size_t)
 
 DECL_ID_TYPE (Author, AuthorId, int)
 
void exec (sqlite3 *db, Str query)
 
auto create_db (CR< Str > storagePath)
 Instantiate database connection. More...
 

Typedef Documentation

◆ DbConnection

using ir::DbConnection = typedef decltype(create_db(""))

Database connection type alias.

Function Documentation

◆ create_db()

auto ir::create_db ( CR< Str >  storagePath)
inline

Instantiate database connection.

◆ DECL_ID_TYPE() [1/7]

ir::DECL_ID_TYPE ( Author  ,
AuthorId  ,
int   
)

◆ DECL_ID_TYPE() [2/7]

ir::DECL_ID_TYPE ( Commit  ,
CommitId  ,
std::size_t   
)

◆ DECL_ID_TYPE() [3/7]

ir::DECL_ID_TYPE ( Directory  ,
DirectoryId  ,
std::size_t   
)

◆ DECL_ID_TYPE() [4/7]

ir::DECL_ID_TYPE ( File  ,
FileId  ,
std::size_t   
)

◆ DECL_ID_TYPE() [5/7]

ir::DECL_ID_TYPE ( FilePath  ,
FilePathId  ,
std::size_t   
)

◆ DECL_ID_TYPE() [6/7]

ir::DECL_ID_TYPE ( LineData  ,
LineId  ,
std::size_t   
)

◆ DECL_ID_TYPE() [7/7]

ir::DECL_ID_TYPE ( String  ,
StringId  ,
std::size_t   
)

◆ exec()

void ir::exec ( sqlite3 *  db,
Str  query 
)
inline