Data_deduplication_service
Service that will use hashes to deduplicate files
myConcepts.h
Go to the documentation of this file.
1 
2 #ifndef DATA_DEDUPLICATION_SERVICE_MYCONCEPTS_H
3 #define DATA_DEDUPLICATION_SERVICE_MYCONCEPTS_H
4 
5 #include <glog/logging.h>
6 
7 #include <cstdarg>
8 #include <concepts>
9 #include <array>
10 
11 #include <type_traits>
12 #include "clockArray.h"
13 
15 namespace myConcepts {
20  using symbolType = char;
21  extern clockType gClk;
22 
23 
28  template<typename T>
29  concept printable = requires(const T &elem, std::ofstream &out){
30  { out << elem } -> std::same_as<std::ostream &>;
31  };
32 
33 
34 
35 
36  // from https://stackoverflow.com/questions/2342162/stdstring-formatting-like-sprintf
42  std::string vformat(const char *zcFormat, ...);
43 
47  enum returnCodes {
51  ReturnSucess = 0
52  };
53 
57  enum paramType {
59  };
60 
61 
62 } // namespace myConcepts
63 
64 #endif // DATA_DEDUPLICATION_SERVICE_MYCONCEPTS_H
Clock array template class.
Definition: clockArray.h:103
concepts namespace
Definition: myConcepts.h:15
concept printable
Definition: myConcepts.h:29
char symbolType
Definition: myConcepts.h:20
returnCodes
Definition: myConcepts.h:47
@ ErrorOccured
Definition: myConcepts.h:50
@ AlreadyExists
Definition: myConcepts.h:49
@ ReturnSucess
Definition: myConcepts.h:51
@ WarningMessage
Definition: myConcepts.h:48
std::string vformat(const char *zcFormat,...)
Definition: myConcepts.cpp:11
paramType
Definition: myConcepts.h:57
@ EmptyParameterValue
Definition: myConcepts.h:58
clockType gClk
Definition: myConcepts.cpp:9