|
| void | Clear () |
| |
| void | Output (int nest, bool span, std::string text) |
| |
| std::string | Print () |
| |
Definition at line 4907 of file mjsonrpc.cxx.
◆ Clear()
| void NestedOutput::Clear |
( |
| ) |
|
|
inline |
Definition at line 4912 of file mjsonrpc.cxx.
4913 {
4915 }
std::vector< NestedLine > fLines
◆ Output()
| void NestedOutput::Output |
( |
int |
nest, |
|
|
bool |
span, |
|
|
std::string |
text |
|
) |
| |
|
inline |
Definition at line 4917 of file mjsonrpc.cxx.
4918 {
4919 if (text.length() < 1)
4920 return;
4921
4927 };
◆ Print()
| std::string NestedOutput::Print |
( |
| ) |
|
|
inline |
Definition at line 4929 of file mjsonrpc.cxx.
4930 {
4931 std::vector<int> tablen;
4932 std::vector<std::string> tab;
4933 std::vector<std::string> tabx;
4934
4935 tablen.push_back(0);
4936 tab.push_back("");
4937 tabx.push_back("");
4938
4939 std::string xtab = "";
4940 int maxlen = 0;
4941 for (
int n=0; ;
n++) {
4942 int len = -1;
4943 for (
unsigned i=0;
i<
fLines.size();
i++) {
4946 if (pp)
4947 continue;
4949 continue;
4950 int l =
fLines[
i].text.length();
4951 if (l>len)
4952 len = l;
4953 }
4954
4955 if (len < 0)
4956 break;
4957 tablen.push_back(len);
4958 tab.push_back(
indent(len,
" ") +
" | ");
4959 xtab +=
indent(len,
" ") +
" | ";
4960 tabx.push_back(xtab);
4961 maxlen += 3+len;
4962 }
4963
4964 std::string s;
4965 int nest = 0;
4966
4967 for (
unsigned i=0;
i<
fLines.size();
i++) {
4970
4971 std::string pad;
4972
4973 if (!p) {
4974 int ipad = tablen[
n+1] -
fLines[
i].text.length();
4976 }
4977
4978 std::string hr =
indent(maxlen-tabx[
n].length(),
"-");
4979
4981 s += std::string(
" | ") +
fLines[
i].text + pad;
4982 else if (
n == nest) {
4983 s += "\n";
4984 if (
n == 0 ||
n == 1)
4985 s += tabx[
n] + hr +
"\n";
4986 s += tabx[
n] +
fLines[
i].text + pad;
4987 } else {
4988 s += "\n";
4989 if (
n == 0 ||
n == 1)
4990 s += tabx[
n] + hr +
"\n";
4991 s += tabx[
n] +
fLines[
i].text + pad;
4992 }
4993
4995 }
4996
4997 return s;
4998 }
static std::string indent(int x, const char *p=" ")
◆ fLines
The documentation for this class was generated from the following file: