/* fix example written by Amlal El Mahrouss. licensed under the MIT license */ #include #include #include #include #include /* finally test it */ int main(int argc, char** argv) { constexpr auto default_fix = "8=FIX.4.2|9=65|35=A|49=SERVER|56=CLIENT|34=177|52=20090107-18:15:16|98=0|108=30|10=062|"; ocl::fix::basic_visitor basic_visitor; ocl::fix::basic_range_data fix = basic_visitor.visit(default_fix); std::cout << "magic=" << fix.magic_ << std::endl; std::cout << "magic_len=" << fix.magic_len_ << std::endl; std::cout << "is_valid=" << std::boolalpha << fix.is_valid() << std::endl; ocl::fix::must_pass(fix); for (auto fields : fix.body_) { std::cout << "key=" << fields.first; std::cout << ":value=" << fields.second << std::endl; } return 0; }