22 using namespace mageec;
24 static std::string pad_string(std::string input,
unsigned long length,
bool left)
26 if (input.length() == length)
28 std::string pad(length-input.length(),
' ');
35 std::ostream &OS,
bool json)
37 if (features.size() == 0)
43 for (
unsigned long i = 0, size = features.size(); i < size; i++)
45 OS <<
"{\"name\":\"" << features[i]->name() <<
"\",";
46 OS <<
"\"desc\":\"" << features[i]->desc() <<
"\",";
47 OS <<
"\"value\":" << features[i]->get_feature() <<
"}";
53 unsigned long maxname = 0;
54 unsigned long maxdesc = 0;
56 for (
unsigned long i = 0, size = features.size(); i < size; i++)
58 if (maxname < features[i]->
name().length())
59 maxname = features[i]->
name().length();
60 if (maxdesc < features[i]->
desc().length())
61 maxdesc = features[i]->desc().length();
63 for (
unsigned long i = 0, size = features.size(); i < size; i++)
66 OS << pad_string(features[i]->
name(), maxname,
true);
68 OS << pad_string(features[i]->
desc(), maxdesc,
false);
70 OS << features[i]->get_feature();
83 feature_name = feat_name;
88 feature_name = feat_name;
90 feature_value = value;
96 feature_name = feat_name;
97 feature_desc = feat_desc;
98 feature_value = value;
113 return feature_value;