MCPcopy Create free account
hub / github.com/Exiv2/exiv2 / main

Function main

samples/stringto-test.cpp:39–86  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

37};
38
39int main() {
40 Exiv2::XmpParser::initialize();
41 ::atexit(Exiv2::XmpParser::terminate);
42
43 std::cout << std::setfill(' ');
44
45 std::cout << std::setw(12) << std::left << "string";
46 std::cout << std::setw(12) << std::left << "long";
47 std::cout << std::setw(12) << std::left << "float";
48 std::cout << std::setw(12) << std::left << "Rational";
49
50 std::cout << std::endl;
51
52 for (auto&& testcase : testcases) {
53 try {
54 std::string s(testcase);
55 std::cout << std::setw(12) << std::left << s;
56 bool ok = false;
57
58 const auto l = Exiv2::parseInt64(s, ok);
59 std::cout << std::setw(12) << std::left;
60 if (ok)
61 std::cout << l;
62 else
63 std::cout << "nok";
64
65 float f = Exiv2::parseFloat(s, ok);
66 std::cout << std::setw(12) << std::left;
67 if (ok)
68 std::cout << f;
69 else
70 std::cout << "nok";
71
72 Exiv2::Rational r = Exiv2::parseRational(s, ok);
73 if (ok)
74 std::cout << r.first << "/" << r.second;
75 else
76 std::cout << "nok";
77
78 std::cout << std::endl;
79 } catch (Exiv2::Error& e) {
80 std::cout << "Caught Exiv2 exception '" << e << "'\n";
81 return EXIT_FAILURE;
82 }
83 }
84
85 return EXIT_SUCCESS;
86}

Callers

nothing calls this directly

Calls 3

parseInt64Function · 0.85
parseFloatFunction · 0.85
parseRationalFunction · 0.85

Tested by

no test coverage detected