146c146
< Text::noOutput(const StatData &data)
---
> Text::noOutput(const Info &info)
148c148
< if (!(data.flags & print))
---
> if (!(info.flags & print))
151c151
< if (data.prereq && data.prereq->zero())
---
> if (info.prereq && info.prereq->zero())
538c538
< Text::visit(const ScalarData &data)
---
> Text::visit(const ScalarInfoBase &info)
540c540
< if (noOutput(data))
---
> if (noOutput(info))
544,547c544,547
< print.value = data.result();
< print.name = data.name;
< print.desc = data.desc;
< print.flags = data.flags;
---
> print.value = info.result();
> print.name = info.name;
> print.desc = info.desc;
> print.flags = info.flags;
550c550
< print.precision = data.precision;
---
> print.precision = info.precision;
558c558
< Text::visit(const VectorData &data)
---
> Text::visit(const VectorInfoBase &info)
560c560
< if (noOutput(data))
---
> if (noOutput(info))
563c563
< size_type size = data.size();
---
> size_type size = info.size();
566,568c566,568
< print.name = data.name;
< print.desc = data.desc;
< print.flags = data.flags;
---
> print.name = info.name;
> print.desc = info.desc;
> print.flags = info.flags;
571,573c571,573
< print.precision = data.precision;
< print.vec = data.result();
< print.total = data.total();
---
> print.precision = info.precision;
> print.vec = info.result();
> print.total = info.total();
575c575
< if (!data.subnames.empty()) {
---
> if (!info.subnames.empty()) {
577,578c577,578
< if (!data.subnames[i].empty()) {
< print.subnames = data.subnames;
---
> if (!info.subnames[i].empty()) {
> print.subnames = info.subnames;
581,583c581,583
< if (!data.subnames[i].empty() &&
< !data.subdescs[i].empty()) {
< print.subdescs = data.subdescs;
---
> if (!info.subnames[i].empty() &&
> !info.subdescs[i].empty()) {
> print.subdescs = info.subdescs;
597c597
< Text::visit(const Vector2dData &data)
---
> Text::visit(const Vector2dInfoBase &info)
599c599
< if (noOutput(data))
---
> if (noOutput(info))
605,606c605,606
< print.subnames = data.y_subnames;
< print.flags = data.flags;
---
> print.subnames = info.y_subnames;
> print.flags = info.flags;
609c609
< print.precision = data.precision;
---
> print.precision = info.precision;
611,613c611,613
< if (!data.subnames.empty()) {
< for (off_type i = 0; i < data.x; ++i)
< if (!data.subnames[i].empty())
---
> if (!info.subnames.empty()) {
> for (off_type i = 0; i < info.x; ++i)
> if (!info.subnames[i].empty())
617c617
< VResult tot_vec(data.y);
---
> VResult tot_vec(info.y);
619,620c619,620
< for (off_type i = 0; i < data.x; ++i) {
< if (havesub && (i >= data.subnames.size() || data.subnames[i].empty()))
---
> for (off_type i = 0; i < info.x; ++i) {
> if (havesub && (i >= info.subnames.size() || info.subnames[i].empty()))
623,624c623,624
< off_type iy = i * data.y;
< VResult yvec(data.y);
---
> off_type iy = i * info.y;
> VResult yvec(info.y);
627,628c627,628
< for (off_type j = 0; j < data.y; ++j) {
< yvec[j] = data.cvec[iy + j];
---
> for (off_type j = 0; j < info.y; ++j) {
> yvec[j] = info.cvec[iy + j];
634,636c634,636
< print.name = data.name + "_" +
< (havesub ? data.subnames[i] : to_string(i));
< print.desc = data.desc;
---
> print.name = info.name + "_" +
> (havesub ? info.subnames[i] : to_string(i));
> print.desc = info.desc;
642,644c642,644
< if ((data.flags & ::Stats::total) && (data.x > 1)) {
< print.name = data.name;
< print.desc = data.desc;
---
> if ((info.flags & ::Stats::total) && (info.x > 1)) {
> print.name = info.name;
> print.desc = info.desc;
652c652
< Text::visit(const DistData &data)
---
> Text::visit(const DistInfoBase &info)
654c654
< if (noOutput(data))
---
> if (noOutput(info))
659,661c659,661
< print.name = data.name;
< print.desc = data.desc;
< print.flags = data.flags;
---
> print.name = info.name;
> print.desc = info.desc;
> print.flags = info.flags;
664c664
< print.precision = data.precision;
---
> print.precision = info.precision;
666,670c666,672
< print.min_val = data.data.min_val;
< print.max_val = data.data.max_val;
< print.underflow = data.data.underflow;
< print.overflow = data.data.overflow;
< print.vec.resize(data.data.cvec.size());
---
> const DistData &data = info.data;
>
> print.min_val = data.min_val;
> print.max_val = data.max_val;
> print.underflow = data.underflow;
> print.overflow = data.overflow;
> print.vec.resize(data.cvec.size());
672,675c674,677
< print.vec[i] = (Result)data.data.cvec[i];
< print.sum = data.data.sum;
< print.squares = data.data.squares;
< print.samples = data.data.samples;
---
> print.vec[i] = (Result)data.cvec[i];
> print.sum = data.sum;
> print.squares = data.squares;
> print.samples = data.samples;
677,681c679,683
< print.min = data.data.min;
< print.max = data.data.max;
< print.bucket_size = data.data.bucket_size;
< print.size = data.data.size;
< print.fancy = data.data.fancy;
---
> print.min = data.min;
> print.max = data.max;
> print.bucket_size = data.bucket_size;
> print.size = data.size;
> print.fancy = data.fancy;
687c689
< Text::visit(const VectorDistData &data)
---
> Text::visit(const VectorDistInfoBase &info)
689c691
< if (noOutput(data))
---
> if (noOutput(info))
692c694
< for (off_type i = 0; i < data.size(); ++i) {
---
> for (off_type i = 0; i < info.size(); ++i) {
695,698c697,700
< print.name = data.name + "_" +
< (data.subnames[i].empty() ? (to_string(i)) : data.subnames[i]);
< print.desc = data.subdescs[i].empty() ? data.desc : data.subdescs[i];
< print.flags = data.flags;
---
> print.name = info.name + "_" +
> (info.subnames[i].empty() ? (to_string(i)) : info.subnames[i]);
> print.desc = info.subdescs[i].empty() ? info.desc : info.subdescs[i];
> print.flags = info.flags;
701c703
< print.precision = data.precision;
---
> print.precision = info.precision;
703,707c705,709
< print.min_val = data.data[i].min_val;
< print.max_val = data.data[i].max_val;
< print.underflow = data.data[i].underflow;
< print.overflow = data.data[i].overflow;
< print.vec.resize(data.data[i].cvec.size());
---
> print.min_val = info.data[i].min_val;
> print.max_val = info.data[i].max_val;
> print.underflow = info.data[i].underflow;
> print.overflow = info.data[i].overflow;
> print.vec.resize(info.data[i].cvec.size());
709,712c711,714
< print.vec[j] = (Result)data.data[i].cvec[j];
< print.sum = data.data[i].sum;
< print.squares = data.data[i].squares;
< print.samples = data.data[i].samples;
---
> print.vec[j] = (Result)info.data[i].cvec[j];
> print.sum = info.data[i].sum;
> print.squares = info.data[i].squares;
> print.samples = info.data[i].samples;
714,718c716,720
< print.min = data.data[i].min;
< print.max = data.data[i].max;
< print.bucket_size = data.data[i].bucket_size;
< print.size = data.data[i].size;
< print.fancy = data.data[i].fancy;
---
> print.min = info.data[i].min;
> print.max = info.data[i].max;
> print.bucket_size = info.data[i].bucket_size;
> print.size = info.data[i].size;
> print.fancy = info.data[i].fancy;
725c727
< Text::visit(const FormulaData &data)
---
> Text::visit(const FormulaInfoBase &info)
727c729
< visit((const VectorData &)data);
---
> visit((const VectorInfoBase &)info);