CBMC
memory_units.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Memory units
4 
5 Author: Hannes Steffenhagen
6 
7 \*******************************************************************/
8 
9 #ifndef CPROVER_UTIL_MEMORY_UNITS_H
10 #define CPROVER_UTIL_MEMORY_UNITS_H
11 
12 #include <cstddef>
13 #include <string>
14 
16 {
17 public:
18  static memory_sizet from_bytes(std::size_t bytes);
19 
20  memory_sizet();
21  memory_sizet(const memory_sizet &);
23 
25  memory_sizet &operator=(memory_sizet &&) noexcept;
26 
28  memory_sizet operator+(const memory_sizet &) const;
29 
30  std::size_t get_bytes() const;
31  std::size_t get_kibibytes() const;
32  std::size_t get_mebibytes() const;
33  std::size_t get_gibibytes() const;
34  std::string to_string() const;
35 
36  static const char *si_byte_symbol;
37  static const char *si_kibibyte_symbol;
38  static const char *si_mebibyte_symbol;
39  static const char *si_gibibyte_symbol;
40 
41 private:
42  std::size_t bytes;
43  explicit memory_sizet(std::size_t bytes);
44 };
45 
46 #endif // CPROVER_UTIL_MEMORY_UNITS_H
memory_sizet::get_kibibytes
std::size_t get_kibibytes() const
Definition: memory_units.cpp:48
memory_sizet::si_kibibyte_symbol
static const char * si_kibibyte_symbol
Definition: memory_units.h:37
memory_sizet::get_bytes
std::size_t get_bytes() const
Definition: memory_units.cpp:43
memory_sizet::operator+=
memory_sizet & operator+=(const memory_sizet &)
Definition: memory_units.cpp:106
memory_sizet::si_mebibyte_symbol
static const char * si_mebibyte_symbol
Definition: memory_units.h:38
memory_sizet::memory_sizet
memory_sizet()
Definition: memory_units.cpp:13
memory_sizet::get_gibibytes
std::size_t get_gibibytes() const
Definition: memory_units.cpp:58
memory_sizet::operator=
memory_sizet & operator=(const memory_sizet &)
Definition: memory_units.cpp:26
memory_sizet::operator+
memory_sizet operator+(const memory_sizet &) const
Definition: memory_units.cpp:112
memory_sizet::si_byte_symbol
static const char * si_byte_symbol
Definition: memory_units.h:36
memory_sizet
Definition: memory_units.h:15
memory_sizet::to_string
std::string to_string() const
Definition: memory_units.cpp:63
memory_sizet::get_mebibytes
std::size_t get_mebibytes() const
Definition: memory_units.cpp:53
memory_sizet::bytes
std::size_t bytes
Definition: memory_units.h:42
memory_sizet::si_gibibyte_symbol
static const char * si_gibibyte_symbol
Definition: memory_units.h:39
memory_sizet::from_bytes
static memory_sizet from_bytes(std::size_t bytes)
Definition: memory_units.cpp:38