string::size_type n0 = line.find_first_not_of(spaces);
if (n0 == string::npos)
return false; // Blank line
string::size_type n1 = line.find_first_of('#', n0);
if (n0 == n1)
return false; // Only a comment
val = line.substr(n0, n1 == string::npos ? n1 : n1 - n0);
n0 = val.find_first_of(spaces);
key = val.substr(0, n0);
if (n0 == string::npos) {
val = "";
return true;
}
n0 = val.find_first_not_of(spaces, n0);
if (n0 == string::npos) {
val = "";
return true;
}
n1 = val.find_last_not_of(spaces);
val = val.substr(n0, n1 + 1 - n0);
return true;
}
int Utility::set_digits(int ndigits) {
#if GEOGRAPHICLIB_PRECISION == 5
if (ndigits <= 0) {
char* digitenv = getenv("GEOGRAPHICLIB_DIGITS");
if (digitenv)
ndigits = strtol(digitenv, NULL, 0);
if (ndigits <= 0)
ndigits = 256;
}
#endif
return Math::set_digits(ndigits);
}
} // namespace GeographicLib