From 013fc969fdd11cd7d6c00a151cff76b43b403a92 Mon Sep 17 00:00:00 2001 From: rschoene <rene.schoene@tu-dresden.de> Date: Sat, 30 Mar 2019 13:40:22 +0100 Subject: [PATCH] Add metric script. --- trainbenchmark/cloc/.gitignore | 6 +++ trainbenchmark/cloc/cloc-def-flex.txt | 4 ++ trainbenchmark/cloc/cloc-def-grammar.txt | 5 ++ trainbenchmark/cloc/cloc-def-jrag-jadd.txt | 5 ++ trainbenchmark/cloc/cloc-def-parser.txt | 4 ++ trainbenchmark/cloc/run-cloc.sh | 59 ++++++++++++++++++++++ 6 files changed, 83 insertions(+) create mode 100644 trainbenchmark/cloc/.gitignore create mode 100644 trainbenchmark/cloc/cloc-def-flex.txt create mode 100644 trainbenchmark/cloc/cloc-def-grammar.txt create mode 100644 trainbenchmark/cloc/cloc-def-jrag-jadd.txt create mode 100644 trainbenchmark/cloc/cloc-def-parser.txt create mode 100755 trainbenchmark/cloc/run-cloc.sh diff --git a/trainbenchmark/cloc/.gitignore b/trainbenchmark/cloc/.gitignore new file mode 100644 index 000000000..c23149d43 --- /dev/null +++ b/trainbenchmark/cloc/.gitignore @@ -0,0 +1,6 @@ +my_definitions.txt +*-result.txt +acs.txt +cfcs.txt +trainbenchmark.file +trainbenchmark.lang diff --git a/trainbenchmark/cloc/cloc-def-flex.txt b/trainbenchmark/cloc/cloc-def-flex.txt new file mode 100644 index 000000000..4ac6dbb8d --- /dev/null +++ b/trainbenchmark/cloc/cloc-def-flex.txt @@ -0,0 +1,4 @@ +Flex + filter remove_matches ^\s*// + extension flex + 3rd_gen_scale 1.5 diff --git a/trainbenchmark/cloc/cloc-def-grammar.txt b/trainbenchmark/cloc/cloc-def-grammar.txt new file mode 100644 index 000000000..0afc6b8ad --- /dev/null +++ b/trainbenchmark/cloc/cloc-def-grammar.txt @@ -0,0 +1,5 @@ +Grammar + filter call_regexp_common Java + extension ast + extension relast + 3rd_gen_scale 30 diff --git a/trainbenchmark/cloc/cloc-def-jrag-jadd.txt b/trainbenchmark/cloc/cloc-def-jrag-jadd.txt new file mode 100644 index 000000000..b5e3435ab --- /dev/null +++ b/trainbenchmark/cloc/cloc-def-jrag-jadd.txt @@ -0,0 +1,5 @@ +Attributes + filter call_regexp_common Java + extension jrag + extension jadd + 3rd_gen_scale 1.5 diff --git a/trainbenchmark/cloc/cloc-def-parser.txt b/trainbenchmark/cloc/cloc-def-parser.txt new file mode 100644 index 000000000..c3df6758e --- /dev/null +++ b/trainbenchmark/cloc/cloc-def-parser.txt @@ -0,0 +1,4 @@ +Parser + filter remove_matches ^\s*// + extension parser + 3rd_gen_scale 1.5 diff --git a/trainbenchmark/cloc/run-cloc.sh b/trainbenchmark/cloc/run-cloc.sh new file mode 100755 index 000000000..bb2dff2a4 --- /dev/null +++ b/trainbenchmark/cloc/run-cloc.sh @@ -0,0 +1,59 @@ +#!/usr/bin/bash +shopt -s globstar + +if [ ] +then + : +else + +# --force-lang=Java,jrag --force-lang=Java,jadd +DEF_FILE=my_definitions.txt +echo "Export language definitions" +cloc --write-lang-def="$DEF_FILE" 2>cloc-errors.log +for f in cloc-def-*.txt; +do + cat $f >> "$DEF_FILE" +done +echo "Running cloc with new definitions" +# --ignored=bad-files.txt +CLOC_CMD="cloc --exclude-lang=JSON --read-lang-def=my_definitions.txt --exclude-list-file=.clocignore --quiet" +$CLOC_CMD --report-file=base-result.txt ../trainbenchmark-tool-jastadd-base/src/main/jastadd/{Helpers.*,Enums.jadd} 2>>cloc-errors.log + +$CLOC_CMD --report-file=namelookup-result.txt ../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/*.j{add,rag} 2>>cloc-errors.log +$CLOC_CMD --report-file=intrinsic-result.txt ../trainbenchmark-tool-jastadd-intrinsic-base/src/main/jastadd/*.j{add,rag} 2>>cloc-errors.log +$CLOC_CMD --report-file=relrag-result.txt ../trainbenchmark-tool-jastadd-relast-base/src/main/jastadd/*.j{add,rag} 2>>cloc-errors.log + +$CLOC_CMD --report-file=namelookup-queries-result.txt ../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/queries 2>>cloc-errors.log +$CLOC_CMD --report-file=intrinsic-queries-result.txt ../trainbenchmark-tool-jastadd-intrinsic-base/src/main/jastadd/queries 2>>cloc-errors.log +$CLOC_CMD --report-file=relrag-queries-result.txt ../trainbenchmark-tool-jastadd-relast-base/src/main/jastadd/queries 2>>cloc-errors.log + +$CLOC_CMD --report-file=namelookup-transfo-result.txt ../trainbenchmark-tool-jastadd-namelookup/src/main/java-include/**/transformations/{inject,repair} 2>>cloc-errors.log +$CLOC_CMD --report-file=intrinsic-transfo-result.txt ../trainbenchmark-tool-jastadd-intrinsic/src/main/java-include/**/transformations/{inject,repair} 2>>cloc-errors.log +$CLOC_CMD --report-file=relrag-transfo-result.txt ../trainbenchmark-tool-jastadd-relast/src/main/java-include/**/transformations/{inject,repair} 2>>cloc-errors.log + +$CLOC_CMD --report-file=ser-namelookup-result.txt ../trainbenchmark-tool-jastadd-namelookup/src/main/java-include/de/tudresden/inf/st/train/jastadd/driver/deserializer/ASTNodeDeserializer.java 2>>cloc-errors.log +$CLOC_CMD --report-file=ser-intrinsic-result.txt ../trainbenchmark-tool-jastadd-intrinsic/src/main/java-include/de/tudresden/inf/st/train/jastadd/driver/deserializer/ASTNodeDeserializer.java 2>>cloc-errors.log +$CLOC_CMD --report-file=ser-relrag-manual-result.txt ../trainbenchmark-tool-jastadd-manual-relast/src/main/java/de/tudresden/inf/st/train/jastadd/driver/deserializer/ASTNodeDeserializer.java 2>>cloc-errors.log +# $CLOC_CMD --report-file=ser-relrag-generated-result.txt ../trainbenchmark-tool-jastadd-relast/src/main/java 2>>cloc-errors.log +# $CLOC_CMD --sum-reports --report_file=trainbenchmark namelookup-result.txt intrinsic-result.txt relrag-result.txt relrag-manual-result.txt relrag-generated-result.txt 2>>cloc-errors.log + +CFC_CMD="grep -o 'if\|for\|return'" +echo "CFC stats" > cfcs.txt +echo "base: $($CFC_CMD ../trainbenchmark-tool-jastadd-base/src/main/jastadd/{Helpers.*,Enums.jadd} | wc -l)" >> cfcs.txt +echo "namelookup: $($CFC_CMD ../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/*.j{add,rag} | wc -l) + queries: $($CFC_CMD ../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/queries/* | wc -l)" >> cfcs.txt +echo "intrinsic: $($CFC_CMD ../trainbenchmark-tool-jastadd-intrinsic-base/src/main/jastadd/*.j{add,rag} | wc -l) + queries: $($CFC_CMD ../trainbenchmark-tool-jastadd-intrinsic-base/src/main/jastadd/queries/* | wc -l)" >> cfcs.txt +echo "relast: $($CFC_CMD ../trainbenchmark-tool-jastadd-relast-base/src/main/jastadd/*.j{add,rag} | wc -l) + queries: $($CFC_CMD ../trainbenchmark-tool-jastadd-relast-base/src/main/jastadd/queries/* | wc -l)" >> cfcs.txt +cat cfcs.txt + +AC_CMD='grep -w 'syn'' +# \|inh +echo "AC stats" > acs.txt +echo "base: $($AC_CMD ../trainbenchmark-tool-jastadd-base/src/main/jastadd/{Helpers.*,Enums.jadd} | wc -l)" >> acs.txt +echo "namelookup: $($AC_CMD ../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/*.j{add,rag} | wc -l) + queries: $($AC_CMD ../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/queries/* | wc -l)" >> acs.txt +echo "intrinsic: $($AC_CMD ../trainbenchmark-tool-jastadd-intrinsic-base/src/main/jastadd/*.j{add,rag} | wc -l) + queries: $($AC_CMD ../trainbenchmark-tool-jastadd-intrinsic-base/src/main/jastadd/queries/* | wc -l)" >> acs.txt +echo "relast: $($AC_CMD ../trainbenchmark-tool-jastadd-relast-base/src/main/jastadd/*.j{add,rag} | wc -l) + queries: $($AC_CMD ../trainbenchmark-tool-jastadd-relast-base/src/main/jastadd/queries/* | wc -l)" >> acs.txt +cat acs.txt + +fi + +( for t in *-result.txt ; do echo -e "\n==> $t <=="; cat $t; done) -- GitLab