stats: stats.cc
g++ -o $@ `pkg-config gdome2-cpp-smart --cflags --libs` $<
+stats.xml:
+ echo "<statistics>" >stats.xml
+ find /local/helm/library/coq_contribs/$(CONTRIB) -type f -exec ./stats.sh {} \; >>stats.xml
+ echo "</statistics>" >>stats.xml
+
+stats.html: stats.xml
+ xsltproc mkhtml.xsl $< >$@
+
+stats.txt: stats.html
+ w3m -dump a.html > a.txt
+
is_blank(const std::string& s)
{
for (int i = 0; i < s.length(); i++)
- if (!isblank(s[i])) return false;
+ if (!isspace(s[i])) return false;
return true;
}
}
void
-print_results(const std::string& URI)
+print_results(const std::string& URI, long size)
{
int n_depths = 0;
int tot_depth = 0;
tot_width += *p;
std::cout << "<stats for=\"" << URI << "\">" << std::endl;
+ std::cout << " <size>" << size << "</size>" << std::endl;
std::cout << " <depth>" << std::endl;
std::cout << " <max>" << max_depth << "</max>" << std::endl;
std::cout << " <leaf-avg>" << tot_depth / ((double) n_depths) << "</leaf-avg>" << std::endl;
int
main(int argc, char* argv[])
{
- if (argc != 2) {
- std::cerr << "Usage: stats <URI>" << std::endl;
+ if (argc != 3) {
+ std::cerr << "Usage: stats <URI> <size>" << std::endl;
return -1;
}
DOM::DOMImplementation di;
DOM::Document doc = di.createDocumentFromURI(argv[1]);
visit(doc, 0);
- print_results(argv[1]);
+ print_results(argv[1], atoi(argv[2]));
}