Skip to content
Daniel Esambu
Work
Work
Projects
Things I've built
Leka
A C++20 matching engine
Latency Lab
(opens in a new tab)
A C++ course I wrote
Resume
The formal version
Writing
Writing
Poetry
Poems, shelved by what they're about
Essays
Notes and essays
Math
Math
Notes
Notes I've written up
IB papers
Worked exam questions
Calculus lessons
(opens in a new tab)
On YouTube
Life
Life
Photos
Things I stopped to look at
Training
Reps, not phases
Modeling
Measurements and photos
Resume
Say hi
Say hi
Resume
Menu
Leka
A low-latency C++20 price-time-priority limit order book and matching engine
Replay viewer
Toggle main menu visibility
Loading...
Searching...
No Matches
price.hpp
1
// include/lob/types/price.hpp
2
#ifndef PRICE_HPP
3
#define PRICE_HPP
4
#include <cstdint>
5
#include <compare>
6
7
namespace
lob {
8
/** @brief Type-safe nonzero price value used for price ordering. */
9
class
Price
{
10
private
:
11
std::uint64_t price;
12
13
public
:
14
/** Constructs an invalid, zero-valued price. */
15
Price
(): price(0){}
16
17
/** Constructs a price from its numeric value. */
18
Price
(std::uint64_t price): price(price){}
19
20
/** Returns the underlying numeric price. */
21
std::uint64_t
getPrice
()
const
{
return
price;};
22
23
/** Compares prices chronologically by numeric value. */
24
auto
operator<=>
(
const
Price
&other)
const
{
25
return
this->price <=> other.price;
26
};
27
/** Returns whether the price is nonzero. */
28
bool
isValid
()
const
{
29
return
price != 0;
30
};
31
};
32
}
// namespace lob
33
34
#endif
lob::Price::isValid
bool isValid() const
Returns whether the price is nonzero.
Definition
price.hpp:28
lob::Price::Price
Price()
Constructs an invalid, zero-valued price.
Definition
price.hpp:15
lob::Price::getPrice
std::uint64_t getPrice() const
Returns the underlying numeric price.
Definition
price.hpp:21
lob::Price::operator<=>
auto operator<=>(const Price &other) const
Compares prices chronologically by numeric value.
Definition
price.hpp:24
lob::Price::Price
Price(std::uint64_t price)
Constructs a price from its numeric value.
Definition
price.hpp:18
include
lob
types
price.hpp
Generated by
1.18.0