Skip to content

RUAN0007/cppackage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

153 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cppackage includes a handful tools collected during my project and reading.

It is forked and built from an existing cpp11 metaprogramming library. Welcome others to complement, share and use!


Introduction

cppackage consist of the following three components, each occupying a directory under include/.

  • tlp/ is a C++ template programming package. I add some TypeTrait and meta functions.
  • loki/ implements some techniques such as Multimethod, Small Object, Thread Model and so on, introduced in Book Modern C++ Design: Generic Programming and Design Patterns Applied by Andrei Alexandrescu.
  • utils/ include some handy tools commonly used for project, such as Timer, Log and so on.

NOTE: Modules in utils/ depend on those in tlp/ and modules in loki/ depend on those in utils/

Install and Test

Get

git clone git@github.com:RUAN0007/cppackage.git

Use

All modules are header only. Just include them in your project. All modules are easy to use. Refer to test cases for exact usage.

Build

cd cppackage
mkdir build
cd build
cmake ..
make -j4

Test TLP

Tlp use its own static test framework for testing.

  • Just compile the testcases for testing. If all tests are compiled ok, it means that all tests pass.

Other modules uses Gtest for runtime testing.

# First build the projct
./test/static-test/static_test # Static Test for TLP
./test/dynamic-test/dynamic_test # Dynamic Test for Utils and Loki

Supported Platform:

  • [MAC OS X] supported
  • [Linux] supported
  • [Windows] not supported

Supported Compilers:

  • [CLANG] 3.4 or later.
  • [GCC] 4.8 or later.
  • [MSVC] not supported.

About

Some handy design pattern implementation, tools compatible and meta function for c11

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages