Commit graph

18 commits

Author SHA1 Message Date
Bruno BELANYI fa563f2f59 kraken: make functional binary 2022-03-12 11:39:39 +01:00
Bruno BELANYI 37b04a678a kraken: engine: fix comparisons 2022-03-12 11:39:39 +01:00
Bruno BELANYI 4515fc1c36 kraken: engine: add 'CsvEngineListern.output'
Otherwise it would be difficult to actually get access to the output...
2022-03-12 11:39:39 +01:00
Bruno BELANYI 0817e7ac7e kraken: engin: add 'Engine'
This is the brains of the operation, the matching engine.
2022-03-12 11:39:39 +01:00
Bruno BELANYI 346dfc4e17 kraken: engine: add 'CsvEngineListener'
This is the listener that implements the expected output.
2022-03-12 11:07:20 +01:00
Bruno BELANYI e3b2d29463 kraken: engine: add 'EngineListener'
The `Engine` will be in charge of updating the book, triggering the
listener on each event.
2022-03-12 11:07:20 +01:00
Bruno BELANYI 21ff896730 kraken: move 'Order' definition to 'book'
I think it makes more sense to centralise these important types in the
`book` library.
2022-03-12 11:07:20 +01:00
Bruno BELANYI 0157c7b193 kraken: parse: order: add ordering 2022-03-12 11:07:20 +01:00
Bruno BELANYI f0ffc652d5 kraken: utils: strong-type: derive order 2022-03-12 11:07:20 +01:00
Bruno BELANYI 7f5f1f9e04 kraken: add 'config.h' 2022-03-12 11:07:20 +01:00
Bruno BELANYI 12f458cf94 kraken: parse: add input file parser 2022-03-12 11:07:20 +01:00
Bruno BELANYI 9550598a87 kraken: parse: define 'Order' type
Use strong typing for the various components of the order.
2022-03-12 11:07:20 +01:00
Bruno BELANYI b7182826ab kraken: utils: add 'StrongType'
I foresee the need to disambiguate a lot of `int`s.
2022-03-12 11:07:20 +01:00
Bruno BELANYI bd072e1025 kraken: csv: fix comma separation logic
Unfortunately, `std::ostream_iterator` puts its separator *after* every
element, not *in-between* each element.
2022-03-12 11:07:20 +01:00
Bruno BELANYI 23b71018ac kraken: csv: add writing functionality
Once again, pretty naive, but it will do.
2022-03-12 11:07:20 +01:00
Bruno BELANYI 0dee0e12dc kraken: csv: move type aliases to 'csv.hh' header
As we need to share it with the CSV writing files.
2022-03-12 11:07:20 +01:00
Bruno BELANYI 9d862c6a62 kraken: add 'csv' library
A very basic, naive CSV parser.
2022-03-12 11:07:20 +01:00
Bruno BELANYI 5cd9e11979 kraken: bootstrap build system 2022-03-12 11:07:20 +01:00