MCPcopy Create free account
hub / github.com/OpenFodder/openfodder / format_description

Function format_description

Source/Utils/cxxopts.hpp:1945–2073  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1943 }
1944
1945 String
1946 format_description
1947 (
1948 const HelpOptionDetails& o,
1949 size_t start,
1950 size_t allowed,
1951 bool tab_expansion
1952 )
1953 {
1954 auto desc = o.desc;
1955
1956 if (o.has_default && (!o.is_boolean || o.default_value != "false"))
1957 {
1958 if(!o.default_value.empty())
1959 {
1960 desc += toLocalString(" (default: " + o.default_value + ")");
1961 }
1962 else
1963 {
1964 desc += toLocalString(" (default: \"\")");
1965 }
1966 }
1967
1968 String result;
1969
1970 if (tab_expansion)
1971 {
1972 String desc2;
1973 auto size = size_t{ 0 };
1974 for (auto c = std::begin(desc); c != std::end(desc); ++c)
1975 {
1976 if (*c == '\n')
1977 {
1978 desc2 += *c;
1979 size = 0;
1980 }
1981 else if (*c == '\t')
1982 {
1983 auto skip = 8 - size % 8;
1984 stringAppend(desc2, skip, ' ');
1985 size += skip;
1986 }
1987 else
1988 {
1989 desc2 += *c;
1990 ++size;
1991 }
1992 }
1993 desc = desc2;
1994 }
1995
1996 desc += " ";
1997
1998 auto current = std::begin(desc);
1999 auto previous = current;
2000 auto startLine = current;
2001 auto lastSpace = current;
2002

Callers 1

help_one_groupMethod · 0.85

Calls 4

toLocalStringFunction · 0.85
beginFunction · 0.70
endFunction · 0.70
emptyMethod · 0.45

Tested by

no test coverage detected