diff --git a/README.md b/README.md index 9ecb0c2..4601908 100644 --- a/README.md +++ b/README.md @@ -225,14 +225,11 @@ The script basically works for the multiple versions of bug repository and each ### Install Java All previous techniques are executed in Java Runtime Environment. If you have java in your computer, please skip this section. -> $ sudo apt-get install python-software-properties
-> $ sudo add-apt-repository ppa:webupd8team/java
-> $ sudo apt-get update
-> $ sudo apt-get install openjdk-8-jre-headless
+> $ sudo apt install openjdk-11-jre-headless
### Install indri - To execute BLUiR and AmaLgam, you need to install indri. -- Since there are compile problems, we chose indri-5.6 version. +- indri-5.15 can work. - In the installing process, please memorize the path in the first line in the "make install" log.
(In my case, /usr/local/bin. This is the installed path of indri) - And then, Change Settings.txt file. @@ -240,15 +237,15 @@ All previous techniques are executed in Java Runtime Environment. If you have ja > // Install g++ and make for indri
> $ sudo add-apt-repository ppa:ubuntu-toolchain-r/test
> $ sudo apt-get update
-> $ sudo apt-get install g++
+> $ sudo apt-get install gcc-6 g++-6
> $ sudo apt-get install make
> $ sudo apt-get install --reinstall zlibc zlib1g zlib1g-dev
>
> // download and install indri (If you faced an error in the compiling, please try with another version.)
-> $ wget https://downloads.sourceforge.net/project/lemur/lemur/indri-5.6/indri-5.6.tar.gz
-> $ tar -xzf indri-5.6.tar.gz
-> $ cd indri-5.6
-> $ ./configure
+> $ wget https://downloads.sourceforge.net/project/lemur/files/lemur/indri-5.15/indri-5.15.tar.gz
+> $ tar -xzf indri-5.15.tar.gz
+> $ cd indri-5.15
+> $ ./configure CC=gcc-6 CXX=g++-6
> $ make
> $ sudo make install
> /usr/bin/install -c -m 755 -d /usr/local/bin
@@ -299,11 +296,7 @@ So, If you want to load these techniques on Eclipse, please follow next sequence - Make a 'techniques' folder into workplace of Eclipse. Then .metadata folder will be created in 'techniques' folder. - On the 'Package Explorer' panel, Open context menu by clicking right mouse button. - Select 'Import', Then a pop-up windows will be placed. - - Except BLUiR project, choose 'General > Projects from Folder or Archive' item and click 'Next' button. - - Designate project folder in 'techniques' and click 'Finish' button. - - Then, the project will be loaded and be shown in the Package Explorer. - - BLUiR is made as Maven project. So, You should import with 'Maven > Existing Maven Project'. And then, just choose project folder. You don't need to change any other options. - - Especially BLIA project, need to add library JUnit. + - All techniques are made as Maven project. So, You should import with 'Maven > Existing Maven Project'. And then, just choose project folder. You don't need to change any other options. diff --git a/techniques/AmaLgam/.classpath b/techniques/AmaLgam/.classpath deleted file mode 100644 index 040ce6d..0000000 --- a/techniques/AmaLgam/.classpath +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/techniques/AmaLgam/.project b/techniques/AmaLgam/.project deleted file mode 100644 index 40ab2e5..0000000 --- a/techniques/AmaLgam/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - AmaLgam - - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jdt.core.javanature - - diff --git a/techniques/AmaLgam/bin/org/amalgam/AmaLgam.class b/techniques/AmaLgam/bin/org/amalgam/AmaLgam.class deleted file mode 100644 index c6d5eab..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/AmaLgam.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/Core.class b/techniques/AmaLgam/bin/org/amalgam/Core.class deleted file mode 100644 index cad5a66..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/Core.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/analysis/BugReportParser.class b/techniques/AmaLgam/bin/org/amalgam/analysis/BugReportParser.class deleted file mode 100644 index d50a654..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/analysis/BugReportParser.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/analysis/CodeRepository.class b/techniques/AmaLgam/bin/org/amalgam/analysis/CodeRepository.class deleted file mode 100644 index fc22429..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/analysis/CodeRepository.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/analysis/SimiLoader.class b/techniques/AmaLgam/bin/org/amalgam/analysis/SimiLoader.class deleted file mode 100644 index ea0f4ce..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/analysis/SimiLoader.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/analysis/VersionHistoryCalculator$EntryComparator.class b/techniques/AmaLgam/bin/org/amalgam/analysis/VersionHistoryCalculator$EntryComparator.class deleted file mode 100644 index 1eed2e9..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/analysis/VersionHistoryCalculator$EntryComparator.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/analysis/VersionHistoryCalculator.class b/techniques/AmaLgam/bin/org/amalgam/analysis/VersionHistoryCalculator.class deleted file mode 100644 index 7c05f6d..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/analysis/VersionHistoryCalculator.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/bugprediction/fixedFileObj.class b/techniques/AmaLgam/bin/org/amalgam/bugprediction/fixedFileObj.class deleted file mode 100644 index dc072ac..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/bugprediction/fixedFileObj.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/common/Property.class b/techniques/AmaLgam/bin/org/amalgam/common/Property.class deleted file mode 100644 index 126c754..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/common/Property.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/common/Utils.class b/techniques/AmaLgam/bin/org/amalgam/common/Utils.class deleted file mode 100644 index 28ededb..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/common/Utils.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/common/Weights.class b/techniques/AmaLgam/bin/org/amalgam/common/Weights.class deleted file mode 100644 index 632f678..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/common/Weights.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/evaluate/Evaluation.class b/techniques/AmaLgam/bin/org/amalgam/evaluate/Evaluation.class deleted file mode 100644 index fbfa0e7..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/evaluate/Evaluation.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/models/Bug$EntryComparator.class b/techniques/AmaLgam/bin/org/amalgam/models/Bug$EntryComparator.class deleted file mode 100644 index 6ca7da3..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/models/Bug$EntryComparator.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/models/Bug.class b/techniques/AmaLgam/bin/org/amalgam/models/Bug.class deleted file mode 100644 index 31908c3..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/models/Bug.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/models/CommitItem.class b/techniques/AmaLgam/bin/org/amalgam/models/CommitItem.class deleted file mode 100644 index 3cf827f..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/models/CommitItem.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/models/FileObjs.class b/techniques/AmaLgam/bin/org/amalgam/models/FileObjs.class deleted file mode 100644 index feca22b..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/models/FileObjs.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/preprocess/downloadRepository_luence.class b/techniques/AmaLgam/bin/org/amalgam/preprocess/downloadRepository_luence.class deleted file mode 100644 index 303f0b0..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/preprocess/downloadRepository_luence.class and /dev/null differ diff --git a/techniques/AmaLgam/bin/org/amalgam/preprocess/downloadRepository_tomcat.class b/techniques/AmaLgam/bin/org/amalgam/preprocess/downloadRepository_tomcat.class deleted file mode 100644 index 65d2702..0000000 Binary files a/techniques/AmaLgam/bin/org/amalgam/preprocess/downloadRepository_tomcat.class and /dev/null differ diff --git a/techniques/AmaLgam/libs/commons-io-2.5.jar b/techniques/AmaLgam/libs/commons-io-2.5.jar deleted file mode 100644 index 1234918..0000000 Binary files a/techniques/AmaLgam/libs/commons-io-2.5.jar and /dev/null differ diff --git a/techniques/AmaLgam/libs/commons-math3-3.6.1.jar b/techniques/AmaLgam/libs/commons-math3-3.6.1.jar deleted file mode 100644 index 0ff582c..0000000 Binary files a/techniques/AmaLgam/libs/commons-math3-3.6.1.jar and /dev/null differ diff --git a/techniques/AmaLgam/libs/hjson-1.1.0.jar b/techniques/AmaLgam/libs/hjson-1.1.0.jar deleted file mode 100644 index 927e4de..0000000 Binary files a/techniques/AmaLgam/libs/hjson-1.1.0.jar and /dev/null differ diff --git a/techniques/AmaLgam/pom.xml b/techniques/AmaLgam/pom.xml new file mode 100644 index 0000000..1ecf6ff --- /dev/null +++ b/techniques/AmaLgam/pom.xml @@ -0,0 +1,51 @@ + + 4.0.0 + AmaLgam + AmaLgam + 0.0.1-SNAPSHOT + + src + + + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.1.1 + + AmaLgam + false + + jar-with-dependencies + + + + org.amalgam.AmaLgam + + + + + + make-assembly + package + + single + + + + + + + + + commons-io + commons-io + 2.6 + + + diff --git a/techniques/AmaLgam/src/org/amalgam/analysis/CodeRepository.java b/techniques/AmaLgam/src/org/amalgam/analysis/CodeRepository.java index 031ea24..f729e72 100644 --- a/techniques/AmaLgam/src/org/amalgam/analysis/CodeRepository.java +++ b/techniques/AmaLgam/src/org/amalgam/analysis/CodeRepository.java @@ -30,12 +30,12 @@ public class CodeRepository { public static ArrayList commits = null; /** - * »ý¼ºÀÚ + * ������ */ public CodeRepository(){} /** - * git repository·ÎºÎÅÍ commitµéÀ» ·Îµå. + * git repository��� commit���� �ε�. */ public boolean loadCommits(){ @@ -63,7 +63,7 @@ public boolean loadCommits(){ } /** - * »ý¼ºµÈ ·Î±×ÆÄÀÏÀ» ÆÄ½Ì + * ������ ������� �Ľ� * @param logFilePath * @return */ @@ -103,7 +103,7 @@ public boolean parseGitLogFile(String logFilePath) /** - * commit log ÆÄÀÏ·Î ºÎÅÍ ÇÑ °³ÀÇ commit itemÀ» Àоî¿È. + * commit log ���Ϸ� ���� �� ���� commit item�� ��. * @param reader * @param repo_path * @return @@ -124,10 +124,10 @@ private CommitItem getOneCommitLog(BufferedReader reader) throws IOException, Pa break; } - //¿¹¿Üó¸® + //����ó�� line = line.trim(); - if (line.equals("")) continue; //°ø¹éÀÎ °æ¿ì ´ÙÀ½¶óÀÎÀ¸·Î. - if (line.compareTo(commit_split)==0) break; //ºÐ¸®ÀÚ Ã³¸® (µîÀåÇÏ¸é ´ÙÀ½À¸·Î ³Ñ¾î°¨) + if (line.equals("")) continue; //������ ��� ������������. + if (line.compareTo(commit_split)==0) break; //��� ó�� (�����ϸ� �������� �Ѿ) // get commit date @@ -162,10 +162,10 @@ private CommitItem getOneCommitLog(BufferedReader reader) throws IOException, Pa } } - //ÁËÁ¾ Á¾·á üũ. + //���� ���� üũ. if (endFlag==true && item.hash == "") return null; - //¹ö±×°¡ ¾Æ´Ñ °æ¿ì¿¡ ¹«½ÃÇϵµ·Ï ÇÔ. + //���װ� �ƴ� ��쿡 �����ϵ��� ��. if (!isBug(item.comment)) item.hash = ""; return item; @@ -173,9 +173,9 @@ private CommitItem getOneCommitLog(BufferedReader reader) throws IOException, Pa /** - * ÀÔ·ÂµÈ comment°¡ bug¼öÁ¤¿¡ ´ëÇÑ commentÀÎÁö È®ÀÎ - * @param comment : ÀÔ·Â comment - * @param regex : ¹ö±×¸¦ ÆÇ´ÜÇÒ Á¤±Ô½Ä. + * �Էµ� comment�� bug������ ���� comment���� Ȯ�� + * @param comment : �Է� comment + * @param regex : ���׸� �Ǵ��� ���Խ�. * @return */ private boolean isBug(String comment) { @@ -188,9 +188,9 @@ private boolean isBug(String comment) { /** - * ÀÔ·ÂµÈ ÆÄÀÏÀÇ FullClassNameÃßÃâ - * ÆÄÀÏ ³»¿¡ ÁöÁ¤µÈ packageName + FileNameÀ¸·Î »ý¼º - * (ÆÄÀÏ¿¡ ÇѰ³ÀÇ Å¬·¡½º¸¸ ÀÖ¾î¾ß µÇ°Ù´Âµ¥....) + * �Էµ� ������ FullClassName���� + * ���� ���� ������ packageName + FileName���� ���� + * (���Ͽ� �Ѱ��� Ŭ������ �־�� �ǰٴµ�....) * Deprecated * @param path * @return @@ -229,10 +229,10 @@ private static String getFullClassName(String path) { /** - * °¡°øµÈ git ·Î±× ÆÄÀÏ¿¡¼­ Á¤º¸¸¦ ÃßÃâÇÏ¿© - * °¢ ÆÄÀÏ Å¬·¡½º º°·Î ¼öÁ¤µÈ ³¯Â¥ Á¤º¸ ¼öÁý - * (ÇѰ³ÀÇ logsÆÄÀÏ¿¡ ´ëÇØ¼­ 󸮰¡´ÉÇϵµ·Ï ¼öÁ¤. by Zeck) - * @param logFilePath ·ÎµåÇÒ µ¥ÀÌÅ͸¦ ´ã°í ÀÖ´Â ·Î±×ÆÄÀÏ + * ������ git �α� ���Ͽ��� ������ �����Ͽ� + * �� ���� Ŭ���� ���� ������ ��¥ ���� ���� + * (�Ѱ��� logs���Ͽ� ���ؼ� ó�������ϵ��� ����. by Zeck) + * @param logFilePath ��� �����͸� ��� �ִ� ����� * @param bugs * @return * @throws IOException @@ -252,7 +252,7 @@ public HashMap> loadFileCommitHistory() { fullClassName = Utils.getUniqueClassName(item.files.get(j)); int fid = FileObjs.put(fullClassName); - if (!fileHistories.containsKey(fullClassName)) { + if (!fileHistories.containsKey(fid)) { HashSet histories = new HashSet(); histories.add(item); @@ -266,7 +266,7 @@ public HashMap> loadFileCommitHistory() { } /** - * LogÁ¤º¸·ÎºÎÅÍ commit Date Á¤º¸µé ¾òÀ½. (Hash, Date) + * Log������� commit Date ������ ����. (Hash, Date) * @return */ public HashMap getCommitDates() { @@ -278,12 +278,12 @@ public HashMap getCommitDates() { } /** - * commit log Á¤º¸¸¦ ºÐ¼®ÇÏ¿© bugObjs¿¡ commit date¸¦ ÀÔ·Â - * @param bugObjs : ´ë»ó bugs + * commit log ������ �м��Ͽ� bugObjs�� commit date�� �Է� + * @param bugObjs : ��� bugs */ public void getCommitDateOfBugObj(HashMap bugObjs) { - // ¸ðµç Ä¿¹Ô¿¡ ´ëÇØ¼­ + // ��� Ŀ�Կ� ���ؼ� for (CommitItem item : commits) { // check if message contain the bugid @@ -291,10 +291,10 @@ public void getCommitDateOfBugObj(HashMap bugObjs) int curIndex = 10000; String currentBugid = null; - //¸ðµç ¹ö±×µéÀ» ´ë»óÀ¸·Î È®ÀÎ. (comment Á¤º¸¿¡ bugID°¡ Æ÷ÇԵǾîÀÖ´ÂÁö È®ÀÎ) - for (Bug bug : bugObjs.values()) //¹ö±×¾ÆÀ̵ðµéÀ» ´ë»óÀ¸·Î + //��� ���׵��� ������� Ȯ��. (comment ������ bugID�� ���ԵǾ��ִ��� Ȯ��) + for (Bug bug : bugObjs.values()) //���׾��̵���� ������� { - //ÇÑ Ä¿¹Ô¿¡ ¿©·¯ ¹ö±× ¾ÆÀ̵𰡠Á¸ÀçÇÏ´Â °æ¿ì, °¡Àå ¾Õ¿¡ µîÀåÇÑ ¹ö±× ¾ÆÀ̵𸦠Ŀ¹ÔÀÇ ¹ö±×¾ÆÀ̵ð·Î °áÁ¤ + //�� Ŀ�Կ� ���� ���� ���̵� �����ϴ� ���, ���� �տ� ������ ���� ���̵� Ŀ���� ���׾��̵�� ���� if (item.comment.contains(bug.ID + " ")) { int index = item.comment.indexOf(bug.ID); if (index < curIndex) { diff --git a/techniques/BLIA/.classpath b/techniques/BLIA/.classpath deleted file mode 100644 index a02765c..0000000 --- a/techniques/BLIA/.classpath +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/techniques/BLIA/.project b/techniques/BLIA/.project deleted file mode 100644 index 6cde7fe..0000000 --- a/techniques/BLIA/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - BLIA - - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jdt.core.javanature - - diff --git a/techniques/BLIA/bin/edu/skku/.gitignore b/techniques/BLIA/bin/edu/skku/.gitignore deleted file mode 100644 index 2f2fa3a..0000000 --- a/techniques/BLIA/bin/edu/skku/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/.DS_Store diff --git a/techniques/BLIA/bin/edu/skku/selab/.gitignore b/techniques/BLIA/bin/edu/skku/selab/.gitignore deleted file mode 100644 index 2f2fa3a..0000000 --- a/techniques/BLIA/bin/edu/skku/selab/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/.DS_Store diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/.gitignore b/techniques/BLIA/bin/edu/skku/selab/blp/.gitignore deleted file mode 100644 index 2f2fa3a..0000000 --- a/techniques/BLIA/bin/edu/skku/selab/blp/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/.DS_Store diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/BLP.class b/techniques/BLIA/bin/edu/skku/selab/blp/BLP.class deleted file mode 100644 index 68d73fa..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/BLP.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/Property.class b/techniques/BLIA/bin/edu/skku/selab/blp/Property.class deleted file mode 100644 index 289790d..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/Property.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/PropertyTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/PropertyTest.class deleted file mode 100644 index d6a20b1..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/PropertyTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BLIA$WorkerThread.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BLIA$WorkerThread.class deleted file mode 100644 index 54aa2e0..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BLIA$WorkerThread.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BLIA.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BLIA.class deleted file mode 100644 index ca9d811..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BLIA.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BliaTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BliaTest.class deleted file mode 100644 index 991c6d2..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BliaTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BugRepoAnalyzer$WorkerThread.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BugRepoAnalyzer$WorkerThread.class deleted file mode 100644 index 93a65bf..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BugRepoAnalyzer$WorkerThread.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BugRepoAnalyzer.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BugRepoAnalyzer.class deleted file mode 100644 index 17d06a7..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/BugRepoAnalyzer.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzer$WorkerThread.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzer$WorkerThread.class deleted file mode 100644 index 4cb8591..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzer$WorkerThread.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzer.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzer.class deleted file mode 100644 index 76b72a8..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzer.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzerTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzerTest.class deleted file mode 100644 index 9c89cbe..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/ScmRepoAnalyzerTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/SourceFileAnalyzer$WorkerThread.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/SourceFileAnalyzer$WorkerThread.class deleted file mode 100644 index 602baf2..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/SourceFileAnalyzer$WorkerThread.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/SourceFileAnalyzer.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/SourceFileAnalyzer.class deleted file mode 100644 index bc27b2f..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/SourceFileAnalyzer.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/StackTraceAnalyzer$WorkerThread.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/StackTraceAnalyzer$WorkerThread.class deleted file mode 100644 index e17a5d9..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/StackTraceAnalyzer$WorkerThread.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/StackTraceAnalyzer.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/StackTraceAnalyzer.class deleted file mode 100644 index 96c4fba..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/analysis/StackTraceAnalyzer.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugCorpusCreator.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugCorpusCreator.class deleted file mode 100644 index 1f5651f..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugCorpusCreator.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugCorpusCreatorTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugCorpusCreatorTest.class deleted file mode 100644 index b0b2a5e..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugCorpusCreatorTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugSourceFileVectorCreator.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugSourceFileVectorCreator.class deleted file mode 100644 index 5ec7259..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugSourceFileVectorCreator.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreator$1.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreator$1.class deleted file mode 100644 index 8fd1b13..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreator$1.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreator.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreator.class deleted file mode 100644 index 4324129..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreator.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreatorTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreatorTest.class deleted file mode 100644 index 51b7380..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/BugVectorCreatorTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/GitCommitLogCollector.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/GitCommitLogCollector.class deleted file mode 100644 index 3554174..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/GitCommitLogCollector.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/GitCommitLogCollectorTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/GitCommitLogCollectorTest.class deleted file mode 100644 index 2f05dfc..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/GitCommitLogCollectorTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/ICommitLogCollector.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/ICommitLogCollector.class deleted file mode 100644 index e58afb4..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/ICommitLogCollector.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileCorpusCreator.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileCorpusCreator.class deleted file mode 100644 index 0745361..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileCorpusCreator.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileCorpusCreatorTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileCorpusCreatorTest.class deleted file mode 100644 index e83bee9..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileCorpusCreatorTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreator$WorkerThread.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreator$WorkerThread.class deleted file mode 100644 index ca8ddbf..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreator$WorkerThread.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreator.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreator.class deleted file mode 100644 index b51687d..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreator.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreatorTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreatorTest.class deleted file mode 100644 index 2d63bb0..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/SourceFileVectorCreatorTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/StructuredSourceFileCorpusCreator.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/StructuredSourceFileCorpusCreator.class deleted file mode 100644 index d7cd7a1..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/StructuredSourceFileCorpusCreator.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/StructuredSourceFileCorpusCreatorTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/StructuredSourceFileCorpusCreatorTest.class deleted file mode 100644 index 7c498a4..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/blia/indexer/StructuredSourceFileCorpusCreatorTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/ASTCreator.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/ASTCreator.class deleted file mode 100644 index 0e98bf1..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/ASTCreator.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/Bug.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/Bug.class deleted file mode 100644 index 77ad2f5..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/Bug.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/BugCorpus.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/BugCorpus.class deleted file mode 100644 index 2a9d4e2..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/BugCorpus.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/BugTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/BugTest.class deleted file mode 100644 index 37c3626..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/BugTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileDetector.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileDetector.class deleted file mode 100644 index 5115c83..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileDetector.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$1.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$1.class deleted file mode 100644 index 8219cce..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$1.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$2.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$2.class deleted file mode 100644 index cebf7fc..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$2.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$3.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$3.class deleted file mode 100644 index f97718b..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$3.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$4.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$4.class deleted file mode 100644 index c6f8d74..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$4.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$5.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$5.class deleted file mode 100644 index b3400d5..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$5.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$6.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$6.class deleted file mode 100644 index 272dbd5..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$6.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$7.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$7.class deleted file mode 100644 index c85c8ff..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$7.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$8.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$8.class deleted file mode 100644 index 2995814..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$8.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$9.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$9.class deleted file mode 100644 index 0011965..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser$9.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser.class deleted file mode 100644 index 0c8cb51..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/FileParser.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/Rank.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/Rank.class deleted file mode 100644 index ec13687..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/Rank.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/SourceFile.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/SourceFile.class deleted file mode 100644 index 4933aaf..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/SourceFile.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/common/SourceFileCorpus.class b/techniques/BLIA/bin/edu/skku/selab/blp/common/SourceFileCorpus.class deleted file mode 100644 index 2149957..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/common/SourceFileCorpus.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/AnalysisValue.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/AnalysisValue.class deleted file mode 100644 index 9df1875..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/AnalysisValue.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/CommitInfo.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/CommitInfo.class deleted file mode 100644 index b889e16..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/CommitInfo.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/ExperimentResult.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/ExperimentResult.class deleted file mode 100644 index 5f68fe8..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/ExperimentResult.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/IntegratedAnalysisValue.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/IntegratedAnalysisValue.class deleted file mode 100644 index 6503eb0..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/IntegratedAnalysisValue.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/SimilarBugInfo.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/SimilarBugInfo.class deleted file mode 100644 index 9be9d91..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/SimilarBugInfo.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BaseDAO.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BaseDAO.class deleted file mode 100644 index 4b5dc65..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BaseDAO.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BugDAO.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BugDAO.class deleted file mode 100644 index f18b4a8..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BugDAO.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BugDAOTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BugDAOTest.class deleted file mode 100644 index ac797fb..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/BugDAOTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/CommitDAO.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/CommitDAO.class deleted file mode 100644 index 30b11f3..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/CommitDAO.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/CommitDAOTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/CommitDAOTest.class deleted file mode 100644 index 34433ae..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/CommitDAOTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/DbUtil.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/DbUtil.class deleted file mode 100644 index fe04188..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/DbUtil.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/ExperimentResultDAO.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/ExperimentResultDAO.class deleted file mode 100644 index 576a379..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/ExperimentResultDAO.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/ExperimentResultDAOTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/ExperimentResultDAOTest.class deleted file mode 100644 index 328fe1f..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/ExperimentResultDAOTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/FunctionDAO.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/FunctionDAO.class deleted file mode 100644 index d869afb..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/FunctionDAO.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/IntegratedAnalysisDAO.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/IntegratedAnalysisDAO.class deleted file mode 100644 index 474926d..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/IntegratedAnalysisDAO.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/IntegratedAnalysisDAOTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/IntegratedAnalysisDAOTest.class deleted file mode 100644 index e8e89ca..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/IntegratedAnalysisDAOTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/SourceFileDAO.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/SourceFileDAO.class deleted file mode 100644 index a43ca87..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/SourceFileDAO.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/SourceFileDAOTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/SourceFileDAOTest.class deleted file mode 100644 index 6fac7d8..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/db/dao/SourceFileDAOTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/evaluation/Evaluator.class b/techniques/BLIA/bin/edu/skku/selab/blp/evaluation/Evaluator.class deleted file mode 100644 index bec59e6..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/evaluation/Evaluator.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/evaluation/EvaluatorTest.class b/techniques/BLIA/bin/edu/skku/selab/blp/evaluation/EvaluatorTest.class deleted file mode 100644 index 806031e..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/evaluation/EvaluatorTest.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/test/utils/PrintTestResult.class b/techniques/BLIA/bin/edu/skku/selab/blp/test/utils/PrintTestResult.class deleted file mode 100644 index c723b74..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/test/utils/PrintTestResult.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/BLIAAllTests.class b/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/BLIAAllTests.class deleted file mode 100644 index 3b69110..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/BLIAAllTests.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/DAOAllTests.class b/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/DAOAllTests.class deleted file mode 100644 index 939cab9..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/DAOAllTests.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/FullTests.class b/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/FullTests.class deleted file mode 100644 index 19ca084..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/testsuite/FullTests.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/utils/PorterStemmer.class b/techniques/BLIA/bin/edu/skku/selab/blp/utils/PorterStemmer.class deleted file mode 100644 index d071672..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/utils/PorterStemmer.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/utils/Splitter.class b/techniques/BLIA/bin/edu/skku/selab/blp/utils/Splitter.class deleted file mode 100644 index 380a27f..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/utils/Splitter.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/utils/Stem.class b/techniques/BLIA/bin/edu/skku/selab/blp/utils/Stem.class deleted file mode 100644 index 8c7351f..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/utils/Stem.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/utils/Stopword.class b/techniques/BLIA/bin/edu/skku/selab/blp/utils/Stopword.class deleted file mode 100644 index a31e6ad..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/utils/Stopword.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/utils/Util.class b/techniques/BLIA/bin/edu/skku/selab/blp/utils/Util.class deleted file mode 100644 index f92ac2d..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/utils/Util.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/utils/temp/BugRepositoryUtil.class b/techniques/BLIA/bin/edu/skku/selab/blp/utils/temp/BugRepositoryUtil.class deleted file mode 100644 index a443d52..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/utils/temp/BugRepositoryUtil.class and /dev/null differ diff --git a/techniques/BLIA/bin/edu/skku/selab/blp/utils/temp/JGitUtil.class b/techniques/BLIA/bin/edu/skku/selab/blp/utils/temp/JGitUtil.class deleted file mode 100644 index 5be946e..0000000 Binary files a/techniques/BLIA/bin/edu/skku/selab/blp/utils/temp/JGitUtil.class and /dev/null differ diff --git a/techniques/BLIA/lib/args4j-2.0.6.jar b/techniques/BLIA/lib/args4j-2.0.6.jar deleted file mode 100644 index fe8aa60..0000000 Binary files a/techniques/BLIA/lib/args4j-2.0.6.jar and /dev/null differ diff --git a/techniques/BLIA/lib/commons-lang3-3.3.2.jar b/techniques/BLIA/lib/commons-lang3-3.3.2.jar deleted file mode 100644 index bb06979..0000000 Binary files a/techniques/BLIA/lib/commons-lang3-3.3.2.jar and /dev/null differ diff --git a/techniques/BLIA/lib/contenttype-3.2.0-v20060603.jar b/techniques/BLIA/lib/contenttype-3.2.0-v20060603.jar deleted file mode 100644 index 816e3fc..0000000 Binary files a/techniques/BLIA/lib/contenttype-3.2.0-v20060603.jar and /dev/null differ diff --git a/techniques/BLIA/lib/dom4j-1.6.1.jar b/techniques/BLIA/lib/dom4j-1.6.1.jar deleted file mode 100644 index c8c4dbb..0000000 Binary files a/techniques/BLIA/lib/dom4j-1.6.1.jar and /dev/null differ diff --git a/techniques/BLIA/lib/h2-1.4.184.jar b/techniques/BLIA/lib/h2-1.4.184.jar deleted file mode 100644 index c88f163..0000000 Binary files a/techniques/BLIA/lib/h2-1.4.184.jar and /dev/null differ diff --git a/techniques/BLIA/lib/lucene-core-2.9.4.jar b/techniques/BLIA/lib/lucene-core-2.9.4.jar deleted file mode 100644 index 898d400..0000000 Binary files a/techniques/BLIA/lib/lucene-core-2.9.4.jar and /dev/null differ diff --git a/techniques/BLIA/lib/mysql-connector-java-5.1.13-bin.jar b/techniques/BLIA/lib/mysql-connector-java-5.1.13-bin.jar deleted file mode 100644 index ef5d71e..0000000 Binary files a/techniques/BLIA/lib/mysql-connector-java-5.1.13-bin.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar b/techniques/BLIA/lib/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar deleted file mode 100644 index cfce073..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar b/techniques/BLIA/lib/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar deleted file mode 100644 index 89131bb..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.core.runtime_3.4.0.v20080512.jar b/techniques/BLIA/lib/org.eclipse.core.runtime_3.4.0.v20080512.jar deleted file mode 100644 index 49bbc18..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.core.runtime_3.4.0.v20080512.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar b/techniques/BLIA/lib/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar deleted file mode 100644 index ecac7a8..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar b/techniques/BLIA/lib/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar deleted file mode 100644 index 1cd6ea2..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.jface_3.4.1.M20080827-2000.jar b/techniques/BLIA/lib/org.eclipse.jface_3.4.1.M20080827-2000.jar deleted file mode 100644 index ad1c58f..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.jface_3.4.1.M20080827-2000.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.jgit-3.6.2.201501210735-r.jar b/techniques/BLIA/lib/org.eclipse.jgit-3.6.2.201501210735-r.jar deleted file mode 100644 index 7a3fdbb..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.jgit-3.6.2.201501210735-r.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar b/techniques/BLIA/lib/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar deleted file mode 100644 index 673f3f5..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar and /dev/null differ diff --git a/techniques/BLIA/lib/org.eclipse.text_3.4.0.v20080605-1800.jar b/techniques/BLIA/lib/org.eclipse.text_3.4.0.v20080605-1800.jar deleted file mode 100644 index 5eaefd0..0000000 Binary files a/techniques/BLIA/lib/org.eclipse.text_3.4.0.v20080605-1800.jar and /dev/null differ diff --git a/techniques/BLIA/lib/preferences-3.2.100-v20070522.jar b/techniques/BLIA/lib/preferences-3.2.100-v20070522.jar deleted file mode 100644 index 8ca9b2f..0000000 Binary files a/techniques/BLIA/lib/preferences-3.2.100-v20070522.jar and /dev/null differ diff --git a/techniques/BLIA/pom.xml b/techniques/BLIA/pom.xml new file mode 100644 index 0000000..5e7cdff --- /dev/null +++ b/techniques/BLIA/pom.xml @@ -0,0 +1,108 @@ + + 4.0.0 + BLIA + BLIA + 0.0.1-SNAPSHOT + + src + test + + + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.apache.maven.plugins + maven-dependency-plugin + + + prepare-package + + unpack-dependencies + + + ${project.build.directory}/classes + wvtool + + + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.1.1 + + BLIA + false + + jar-with-dependencies + + + + edu.skku.selab.blp.BLP + + + + + + make-assembly + package + + single + + + + + + + + + openmind + OpenMind + http://repository.openmindonline.it/ + + + + + junit + junit + 4.12 + test + + + org.apache.commons + commons-lang3 + 3.9 + + + com.h2database + h2 + 1.4.200 + + + org.eclipse.jgit + org.eclipse.jgit + 5.5.1.201910021850-r + + + edu.udo.cs + wvtool + 1.0.0 + system + ${project.basedir}/lib/wvtool.jar + + + org.eclipse.jdt + org.eclipse.jdt.core + 3.4.2-20081006 + + + org.eclipse.core + org.eclipse.core.runtime + 3.4.0-20081006 + + + diff --git a/techniques/BLUiR/.classpath b/techniques/BLUiR/.classpath deleted file mode 100644 index c03bc1b..0000000 --- a/techniques/BLUiR/.classpath +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/techniques/BLUiR/.project b/techniques/BLUiR/.project deleted file mode 100644 index 2be0852..0000000 --- a/techniques/BLUiR/.project +++ /dev/null @@ -1,23 +0,0 @@ - - - BLUiR - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - - diff --git a/techniques/BLUiR/.settings/org.eclipse.jdt.core.prefs b/techniques/BLUiR/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index d59e09c..0000000 --- a/techniques/BLUiR/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/techniques/BLUiR/bin/.gitignore b/techniques/BLUiR/bin/.gitignore deleted file mode 100644 index 24d6437..0000000 --- a/techniques/BLUiR/bin/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/target/ diff --git a/techniques/BLUiR/bin/.project b/techniques/BLUiR/bin/.project deleted file mode 100644 index 2be0852..0000000 --- a/techniques/BLUiR/bin/.project +++ /dev/null @@ -1,23 +0,0 @@ - - - BLUiR - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - - diff --git a/techniques/BLUiR/bin/Settings.txt b/techniques/BLUiR/bin/Settings.txt deleted file mode 100644 index e5957da..0000000 --- a/techniques/BLUiR/bin/Settings.txt +++ /dev/null @@ -1 +0,0 @@ -indripath=C:\Program Files\Indri\Indri 5.11\bin\ \ No newline at end of file diff --git a/techniques/BLUiR/bin/fields b/techniques/BLUiR/bin/fields deleted file mode 100644 index f816c93..0000000 --- a/techniques/BLUiR/bin/fields +++ /dev/null @@ -1,14 +0,0 @@ - - - class - - - method - - - identifier - - - comments - - \ No newline at end of file diff --git a/techniques/BLUiR/bin/pom.xml b/techniques/BLUiR/bin/pom.xml deleted file mode 100644 index 599fed9..0000000 --- a/techniques/BLUiR/bin/pom.xml +++ /dev/null @@ -1,42 +0,0 @@ - - 4.0.0 - BLUiR - BLUiR - 0.0.1-SNAPSHOT - BLUiR - BLUiR - - src - - - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - - - - - - org.eclipse.jdt - org.eclipse.jdt.core - 3.10.0 - - - com.beust - jcommander - 1.58 - - - - - - \ No newline at end of file diff --git a/techniques/BLUiR/bin/src/bluir/core/BLUiR.class b/techniques/BLUiR/bin/src/bluir/core/BLUiR.class deleted file mode 100644 index 0fd0633..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/core/BLUiR.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/core/Core.class b/techniques/BLUiR/bin/src/bluir/core/Core.class deleted file mode 100644 index fed3725..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/core/Core.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/core/GenericVisitorFact.class b/techniques/BLUiR/bin/src/bluir/core/GenericVisitorFact.class deleted file mode 100644 index 6ac3d15..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/core/GenericVisitorFact.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/core/Parameters.class b/techniques/BLUiR/bin/src/bluir/core/Parameters.class deleted file mode 100644 index 5acbe26..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/core/Parameters.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/core/Property.class b/techniques/BLUiR/bin/src/bluir/core/Property.class deleted file mode 100644 index a2f2a7a..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/core/Property.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/core/Runner.class b/techniques/BLUiR/bin/src/bluir/core/Runner.class deleted file mode 100644 index 6dc8fb3..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/core/Runner.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/entity/BugReport.class b/techniques/BLUiR/bin/src/bluir/entity/BugReport.class deleted file mode 100644 index 41125c7..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/entity/BugReport.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/evaluation/Evaluation.class b/techniques/BLUiR/bin/src/bluir/evaluation/Evaluation.class deleted file mode 100644 index 39e31a5..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/evaluation/Evaluation.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/evaluation/Rank.class b/techniques/BLUiR/bin/src/bluir/evaluation/Rank.class deleted file mode 100644 index 735eccb..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/evaluation/Rank.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/extraction/FactExtractor.class b/techniques/BLUiR/bin/src/bluir/extraction/FactExtractor.class deleted file mode 100644 index 0637827..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/extraction/FactExtractor.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/extraction/QueryExtractor.class b/techniques/BLUiR/bin/src/bluir/extraction/QueryExtractor.class deleted file mode 100644 index 8731546..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/extraction/QueryExtractor.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/parser/XMLParser.class b/techniques/BLUiR/bin/src/bluir/parser/XMLParser.class deleted file mode 100644 index 83d3d4d..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/parser/XMLParser.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/utility/FileDetector.class b/techniques/BLUiR/bin/src/bluir/utility/FileDetector.class deleted file mode 100644 index cee2ef7..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/utility/FileDetector.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/utility/FileSystem.class b/techniques/BLUiR/bin/src/bluir/utility/FileSystem.class deleted file mode 100644 index c693e31..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/utility/FileSystem.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/utility/PreProcessor.class b/techniques/BLUiR/bin/src/bluir/utility/PreProcessor.class deleted file mode 100644 index 06dbb59..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/utility/PreProcessor.class and /dev/null differ diff --git a/techniques/BLUiR/bin/src/bluir/utility/StructureDiffUtils.class b/techniques/BLUiR/bin/src/bluir/utility/StructureDiffUtils.class deleted file mode 100644 index 9361042..0000000 Binary files a/techniques/BLUiR/bin/src/bluir/utility/StructureDiffUtils.class and /dev/null differ diff --git a/techniques/BLUiR/bin/stopwords b/techniques/BLUiR/bin/stopwords deleted file mode 100644 index e14d537..0000000 --- a/techniques/BLUiR/bin/stopwords +++ /dev/null @@ -1,422 +0,0 @@ - - -a -about -above -according -across -after -afterwards -again -against -albeit -all -almost -alone -along -already -also -although -always -am -among -amongst -an -and -another -any -anybody -anyhow -anyone -anything -anyway -anywhere -apart -are -around -as -at -av -be -became -because -become -becomes -becoming -been -before -beforehand -behind -being -below -beside -besides -between -beyond -both -but -by -can -cannot -canst -certain -cf -choose -contrariwise -cos -could -cu -day -do -does -doesn't -doing -dost -doth -double -down -dual -during -each -either -else -elsewhere -enough -et -etc -even -ever -every -everybody -everyone -everything -everywhere -except -excepted -excepting -exception -exclude -excluding -exclusive -far -farther -farthest -few -ff -first -for -formerly -forth -forward -from -front -further -furthermore -furthest -get -go -had -halves -hardly -has -hast -hath -have -he -hence -henceforth -her -here -hereabouts -hereafter -hereby -herein -hereto -hereupon -hers -herself -him -himself -hindmost -his -hither -hitherto -how -however -howsoever -i -ie -if -in -inasmuch -inc -include -included -including -indeed -indoors -inside -insomuch -instead -into -inward -inwards -is -it -its -itself -just -kind -kg -km -last -latter -latterly -less -lest -let -like -little -ltd -many -may -maybe -me -meantime -meanwhile -might -moreover -most -mostly -more -mr -mrs -ms -much -must -my -myself -namely -need -neither -never -nevertheless -next -no -nobody -none -nonetheless -noone -nope -nor -not -nothing -notwithstanding -now -nowadays -nowhere -of -off -often -ok -on -once -one -only -onto -or -other -others -otherwise -ought -our -ours -ourselves -out -outside -over -own -per -perhaps -plenty -provide -quite -rather -really -round -said -sake -same -sang -save -saw -see -seeing -seem -seemed -seeming -seems -seen -seldom -selves -sent -several -shalt -she -should -shown -sideways -since -slept -slew -slung -slunk -smote -so -some -somebody -somehow -someone -something -sometime -sometimes -somewhat -somewhere -spake -spat -spoke -spoken -sprang -sprung -stave -staves -still -such -supposing -than -that -the -thee -their -them -themselves -then -thence -thenceforth -there -thereabout -thereabouts -thereafter -thereby -therefore -therein -thereof -thereon -thereto -thereupon -these -they -this -those -thou -though -thrice -through -throughout -thru -thus -thy -thyself -till -to -together -too -toward -towards -ugh -unable -under -underneath -unless -unlike -until -up -upon -upward -upwards -us -use -used -using -very -via -vs -want -was -we -week -well -were -what -whatever -whatsoever -when -whence -whenever -whensoever -where -whereabouts -whereafter -whereas -whereat -whereby -wherefore -wherefrom -wherein -whereinto -whereof -whereon -wheresoever -whereto -whereunto -whereupon -wherever -wherewith -whether -whew -which -whichever -whichsoever -while -whilst -whither -who -whoa -whoever -whole -whom -whomever -whomsoever -whose -whosoever -why -will -wilt -with -within -without -worse -worst -would -wow -ye -yet -year -yippee -you -your -yours -yourself -yourselves - - diff --git a/techniques/BLUiR/pom.xml b/techniques/BLUiR/pom.xml index 599fed9..ab01a56 100644 --- a/techniques/BLUiR/pom.xml +++ b/techniques/BLUiR/pom.xml @@ -1,42 +1,57 @@ - 4.0.0 - BLUiR - BLUiR - 0.0.1-SNAPSHOT - BLUiR - BLUiR - - src - - - maven-compiler-plugin - 3.5.1 - - 1.8 - 1.8 - - - - - - - org.eclipse.jdt - org.eclipse.jdt.core - 3.10.0 - - - com.beust - jcommander - 1.58 - + 4.0.0 + BLUiR + BLUiR + 0.0.1-SNAPSHOT + + src + + + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.1.1 + + BLUiR + false + + jar-with-dependencies + + + + bluir.core.BLUiR + + + + + + make-assembly + package + + single + + + + + + + + + org.eclipse.jdt + org.eclipse.jdt.core + 3.10.0 + + + com.beust + jcommander + 1.78 + + + - - - - \ No newline at end of file diff --git a/techniques/BRTracer/.classpath b/techniques/BRTracer/.classpath deleted file mode 100644 index e87665d..0000000 --- a/techniques/BRTracer/.classpath +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/techniques/BRTracer/.project b/techniques/BRTracer/.project deleted file mode 100644 index dffbc40..0000000 --- a/techniques/BRTracer/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - BRTracer - - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jdt.core.javanature - - diff --git a/techniques/BRTracer/bin/META-INF/MANIFEST.MF b/techniques/BRTracer/bin/META-INF/MANIFEST.MF deleted file mode 100644 index 50de719..0000000 --- a/techniques/BRTracer/bin/META-INF/MANIFEST.MF +++ /dev/null @@ -1,11 +0,0 @@ -Manifest-Version: 1.0 -Class-Path: org.eclipse.core.runtime_3.4.0.v20080512.jar org.eclipse.c - ore.resources_3.4.2.R34x_v20090126.jar args4j-2.0.6.jar org.eclipse.o - sgi_3.4.2.R34x_v20080826-1230.jar org.eclipse.core.jobs_3.4.1.R34x_v2 - 0081128.jar contenttype-3.2.0-v20060603.jar org.eclipse.equinox.commo - n_3.4.0.v20080421-2006.jar preferences-3.2.100-v20070522.jar dom4j-1. - 6.1.jar wvtool.jar org.eclipse.text_3.4.0.v20080605-1800.jar org.ecli - pse.jdt.core_3.4.4.v_894_R34x.jar org.eclipse.jface_3.4.1.M20080827-2 - 000.jar mysql-connector-java-5.1.13-bin.jar lucene-core-2.9.4.jar -Main-Class: BRTracer - diff --git a/techniques/BRTracer/bin/japa/parser/ASTHelper.class b/techniques/BRTracer/bin/japa/parser/ASTHelper.class deleted file mode 100644 index 11abb80..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ASTHelper.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ASTParser$GTToken.class b/techniques/BRTracer/bin/japa/parser/ASTParser$GTToken.class deleted file mode 100644 index 83ec881..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ASTParser$GTToken.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ASTParser$JJCalls.class b/techniques/BRTracer/bin/japa/parser/ASTParser$JJCalls.class deleted file mode 100644 index a03ad01..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ASTParser$JJCalls.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ASTParser$LookaheadSuccess.class b/techniques/BRTracer/bin/japa/parser/ASTParser$LookaheadSuccess.class deleted file mode 100644 index f91c946..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ASTParser$LookaheadSuccess.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ASTParser$Modifier.class b/techniques/BRTracer/bin/japa/parser/ASTParser$Modifier.class deleted file mode 100644 index ee7ac7e..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ASTParser$Modifier.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ASTParser.class b/techniques/BRTracer/bin/japa/parser/ASTParser.class deleted file mode 100644 index ce15fc7..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ASTParser.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ASTParserConstants.class b/techniques/BRTracer/bin/japa/parser/ASTParserConstants.class deleted file mode 100644 index 74ec9cc..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ASTParserConstants.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ASTParserTokenManager.class b/techniques/BRTracer/bin/japa/parser/ASTParserTokenManager.class deleted file mode 100644 index 53fe76a..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ASTParserTokenManager.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/JavaCharStream.class b/techniques/BRTracer/bin/japa/parser/JavaCharStream.class deleted file mode 100644 index ab4df72..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/JavaCharStream.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/JavaParser.class b/techniques/BRTracer/bin/japa/parser/JavaParser.class deleted file mode 100644 index 0790527..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/JavaParser.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ParseException.class b/techniques/BRTracer/bin/japa/parser/ParseException.class deleted file mode 100644 index b86f3f8..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ParseException.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/Token.class b/techniques/BRTracer/bin/japa/parser/Token.class deleted file mode 100644 index a742941..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/Token.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/TokenMgrError.class b/techniques/BRTracer/bin/japa/parser/TokenMgrError.class deleted file mode 100644 index b9c9259..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/TokenMgrError.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/BlockComment.class b/techniques/BRTracer/bin/japa/parser/ast/BlockComment.class deleted file mode 100644 index b2ec794..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/BlockComment.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/Comment.class b/techniques/BRTracer/bin/japa/parser/ast/Comment.class deleted file mode 100644 index 45e7d54..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/Comment.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/CompilationUnit.class b/techniques/BRTracer/bin/japa/parser/ast/CompilationUnit.class deleted file mode 100644 index aca0deb..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/CompilationUnit.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/ImportDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/ImportDeclaration.class deleted file mode 100644 index ef9816e..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/ImportDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/LineComment.class b/techniques/BRTracer/bin/japa/parser/ast/LineComment.class deleted file mode 100644 index 87b6c30..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/LineComment.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/Node.class b/techniques/BRTracer/bin/japa/parser/ast/Node.class deleted file mode 100644 index b2b4fe1..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/Node.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/PackageDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/PackageDeclaration.class deleted file mode 100644 index 077157e..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/PackageDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/TypeParameter.class b/techniques/BRTracer/bin/japa/parser/ast/TypeParameter.class deleted file mode 100644 index 8b387db..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/TypeParameter.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/AnnotationDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/AnnotationDeclaration.class deleted file mode 100644 index 2663d5f..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/AnnotationDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/AnnotationMemberDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/AnnotationMemberDeclaration.class deleted file mode 100644 index 8061843..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/AnnotationMemberDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/BodyDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/BodyDeclaration.class deleted file mode 100644 index 9d11ae2..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/BodyDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/ClassOrInterfaceDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/ClassOrInterfaceDeclaration.class deleted file mode 100644 index 24ac0b6..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/ClassOrInterfaceDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/ConstructorDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/ConstructorDeclaration.class deleted file mode 100644 index 7427e82..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/ConstructorDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/EmptyMemberDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/EmptyMemberDeclaration.class deleted file mode 100644 index 7359cec..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/EmptyMemberDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/EmptyTypeDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/EmptyTypeDeclaration.class deleted file mode 100644 index b860e57..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/EmptyTypeDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/EnumConstantDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/EnumConstantDeclaration.class deleted file mode 100644 index abed269..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/EnumConstantDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/EnumDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/EnumDeclaration.class deleted file mode 100644 index e09b47f..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/EnumDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/FieldDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/FieldDeclaration.class deleted file mode 100644 index 8f36b4d..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/FieldDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/InitializerDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/InitializerDeclaration.class deleted file mode 100644 index 67aa406..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/InitializerDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/JavadocComment.class b/techniques/BRTracer/bin/japa/parser/ast/body/JavadocComment.class deleted file mode 100644 index 78402e5..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/JavadocComment.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/MethodDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/MethodDeclaration.class deleted file mode 100644 index 72a2e82..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/MethodDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/ModifierSet.class b/techniques/BRTracer/bin/japa/parser/ast/body/ModifierSet.class deleted file mode 100644 index 8f4046d..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/ModifierSet.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/Parameter.class b/techniques/BRTracer/bin/japa/parser/ast/body/Parameter.class deleted file mode 100644 index 4d740f5..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/Parameter.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/TypeDeclaration.class b/techniques/BRTracer/bin/japa/parser/ast/body/TypeDeclaration.class deleted file mode 100644 index f8c4809..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/TypeDeclaration.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/VariableDeclarator.class b/techniques/BRTracer/bin/japa/parser/ast/body/VariableDeclarator.class deleted file mode 100644 index 662e7b6..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/VariableDeclarator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/body/VariableDeclaratorId.class b/techniques/BRTracer/bin/japa/parser/ast/body/VariableDeclaratorId.class deleted file mode 100644 index cda397f..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/body/VariableDeclaratorId.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/AnnotationExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/AnnotationExpr.class deleted file mode 100644 index a86f309..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/AnnotationExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayAccessExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayAccessExpr.class deleted file mode 100644 index 75f2327..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayAccessExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayCreationExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayCreationExpr.class deleted file mode 100644 index a85c6ca..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayCreationExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayInitializerExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayInitializerExpr.class deleted file mode 100644 index 718368b..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/ArrayInitializerExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/AssignExpr$Operator.class b/techniques/BRTracer/bin/japa/parser/ast/expr/AssignExpr$Operator.class deleted file mode 100644 index e673721..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/AssignExpr$Operator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/AssignExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/AssignExpr.class deleted file mode 100644 index 4ad690d..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/AssignExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/BinaryExpr$Operator.class b/techniques/BRTracer/bin/japa/parser/ast/expr/BinaryExpr$Operator.class deleted file mode 100644 index 257ae4d..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/BinaryExpr$Operator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/BinaryExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/BinaryExpr.class deleted file mode 100644 index 885528f..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/BinaryExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/BooleanLiteralExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/BooleanLiteralExpr.class deleted file mode 100644 index 10010f6..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/BooleanLiteralExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/CastExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/CastExpr.class deleted file mode 100644 index 1db565f..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/CastExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/CharLiteralExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/CharLiteralExpr.class deleted file mode 100644 index 9ed8ebb..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/CharLiteralExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/ClassExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/ClassExpr.class deleted file mode 100644 index 8db33df..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/ClassExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/ConditionalExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/ConditionalExpr.class deleted file mode 100644 index 6da99fa..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/ConditionalExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/DoubleLiteralExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/DoubleLiteralExpr.class deleted file mode 100644 index b24ba52..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/DoubleLiteralExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/EnclosedExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/EnclosedExpr.class deleted file mode 100644 index 8bc2712..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/EnclosedExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/Expression.class b/techniques/BRTracer/bin/japa/parser/ast/expr/Expression.class deleted file mode 100644 index e7a7b4f..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/Expression.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/FieldAccessExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/FieldAccessExpr.class deleted file mode 100644 index f1bc39b..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/FieldAccessExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/InstanceOfExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/InstanceOfExpr.class deleted file mode 100644 index 2ce4e44..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/InstanceOfExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/IntegerLiteralExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/IntegerLiteralExpr.class deleted file mode 100644 index 9fac128..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/IntegerLiteralExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/IntegerLiteralMinValueExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/IntegerLiteralMinValueExpr.class deleted file mode 100644 index 223a617..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/IntegerLiteralMinValueExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/LiteralExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/LiteralExpr.class deleted file mode 100644 index 0fe7c36..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/LiteralExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/LongLiteralExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/LongLiteralExpr.class deleted file mode 100644 index 45b1e5e..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/LongLiteralExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/LongLiteralMinValueExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/LongLiteralMinValueExpr.class deleted file mode 100644 index c6c7956..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/LongLiteralMinValueExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/MarkerAnnotationExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/MarkerAnnotationExpr.class deleted file mode 100644 index 4317870..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/MarkerAnnotationExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/MemberValuePair.class b/techniques/BRTracer/bin/japa/parser/ast/expr/MemberValuePair.class deleted file mode 100644 index 13d8650..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/MemberValuePair.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/MethodCallExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/MethodCallExpr.class deleted file mode 100644 index f3f9410..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/MethodCallExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/NameExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/NameExpr.class deleted file mode 100644 index d042460..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/NameExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/NormalAnnotationExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/NormalAnnotationExpr.class deleted file mode 100644 index b4c8470..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/NormalAnnotationExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/NullLiteralExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/NullLiteralExpr.class deleted file mode 100644 index 12c9a75..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/NullLiteralExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/ObjectCreationExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/ObjectCreationExpr.class deleted file mode 100644 index e592bd6..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/ObjectCreationExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/QualifiedNameExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/QualifiedNameExpr.class deleted file mode 100644 index c120b66..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/QualifiedNameExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/SingleMemberAnnotationExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/SingleMemberAnnotationExpr.class deleted file mode 100644 index b51aa90..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/SingleMemberAnnotationExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/StringLiteralExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/StringLiteralExpr.class deleted file mode 100644 index 59ce62d..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/StringLiteralExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/SuperExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/SuperExpr.class deleted file mode 100644 index 48ebaa9..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/SuperExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/ThisExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/ThisExpr.class deleted file mode 100644 index 2aac7ca..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/ThisExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/UnaryExpr$Operator.class b/techniques/BRTracer/bin/japa/parser/ast/expr/UnaryExpr$Operator.class deleted file mode 100644 index cce8246..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/UnaryExpr$Operator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/UnaryExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/UnaryExpr.class deleted file mode 100644 index fa5ed6c..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/UnaryExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/expr/VariableDeclarationExpr.class b/techniques/BRTracer/bin/japa/parser/ast/expr/VariableDeclarationExpr.class deleted file mode 100644 index 55cb400..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/expr/VariableDeclarationExpr.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/AssertStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/AssertStmt.class deleted file mode 100644 index ec9ea13..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/AssertStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/BlockStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/BlockStmt.class deleted file mode 100644 index 36d4868..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/BlockStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/BreakStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/BreakStmt.class deleted file mode 100644 index 280c7a9..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/BreakStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/CatchClause.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/CatchClause.class deleted file mode 100644 index 2141cda..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/CatchClause.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/ContinueStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/ContinueStmt.class deleted file mode 100644 index 8dc8ed6..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/ContinueStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/DoStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/DoStmt.class deleted file mode 100644 index 120f598..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/DoStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/EmptyStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/EmptyStmt.class deleted file mode 100644 index 0f47997..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/EmptyStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/ExplicitConstructorInvocationStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/ExplicitConstructorInvocationStmt.class deleted file mode 100644 index ec09455..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/ExplicitConstructorInvocationStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/ExpressionStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/ExpressionStmt.class deleted file mode 100644 index f834d91..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/ExpressionStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/ForStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/ForStmt.class deleted file mode 100644 index 6e84fb1..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/ForStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/ForeachStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/ForeachStmt.class deleted file mode 100644 index 083bb86..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/ForeachStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/IfStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/IfStmt.class deleted file mode 100644 index a00fe52..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/IfStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/LabeledStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/LabeledStmt.class deleted file mode 100644 index 43ef944..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/LabeledStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/ReturnStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/ReturnStmt.class deleted file mode 100644 index 58b4242..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/ReturnStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/Statement.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/Statement.class deleted file mode 100644 index 64525de..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/Statement.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/SwitchEntryStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/SwitchEntryStmt.class deleted file mode 100644 index ba24ae6..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/SwitchEntryStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/SwitchStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/SwitchStmt.class deleted file mode 100644 index dddf0fc..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/SwitchStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/SynchronizedStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/SynchronizedStmt.class deleted file mode 100644 index 9aa78a3..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/SynchronizedStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/ThrowStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/ThrowStmt.class deleted file mode 100644 index 3636c00..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/ThrowStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/TryStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/TryStmt.class deleted file mode 100644 index 2b8636b..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/TryStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/TypeDeclarationStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/TypeDeclarationStmt.class deleted file mode 100644 index 219f9d1..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/TypeDeclarationStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/stmt/WhileStmt.class b/techniques/BRTracer/bin/japa/parser/ast/stmt/WhileStmt.class deleted file mode 100644 index 740c3a5..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/stmt/WhileStmt.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/type/ClassOrInterfaceType.class b/techniques/BRTracer/bin/japa/parser/ast/type/ClassOrInterfaceType.class deleted file mode 100644 index c320bb8..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/type/ClassOrInterfaceType.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/type/PrimitiveType$Primitive.class b/techniques/BRTracer/bin/japa/parser/ast/type/PrimitiveType$Primitive.class deleted file mode 100644 index f6a9858..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/type/PrimitiveType$Primitive.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/type/PrimitiveType.class b/techniques/BRTracer/bin/japa/parser/ast/type/PrimitiveType.class deleted file mode 100644 index c9fb312..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/type/PrimitiveType.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/type/ReferenceType.class b/techniques/BRTracer/bin/japa/parser/ast/type/ReferenceType.class deleted file mode 100644 index 1535408..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/type/ReferenceType.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/type/Type.class b/techniques/BRTracer/bin/japa/parser/ast/type/Type.class deleted file mode 100644 index f7845a7..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/type/Type.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/type/VoidType.class b/techniques/BRTracer/bin/japa/parser/ast/type/VoidType.class deleted file mode 100644 index 997ed5f..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/type/VoidType.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/type/WildcardType.class b/techniques/BRTracer/bin/japa/parser/ast/type/WildcardType.class deleted file mode 100644 index 96f8139..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/type/WildcardType.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/visitor/DumpVisitor$SourcePrinter.class b/techniques/BRTracer/bin/japa/parser/ast/visitor/DumpVisitor$SourcePrinter.class deleted file mode 100644 index 8712615..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/visitor/DumpVisitor$SourcePrinter.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/visitor/DumpVisitor.class b/techniques/BRTracer/bin/japa/parser/ast/visitor/DumpVisitor.class deleted file mode 100644 index 58f70a2..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/visitor/DumpVisitor.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/visitor/EqualsVisitor.class b/techniques/BRTracer/bin/japa/parser/ast/visitor/EqualsVisitor.class deleted file mode 100644 index dba22a7..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/visitor/EqualsVisitor.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/visitor/GenericVisitor.class b/techniques/BRTracer/bin/japa/parser/ast/visitor/GenericVisitor.class deleted file mode 100644 index 69bc68c..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/visitor/GenericVisitor.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/visitor/GenericVisitorAdapter.class b/techniques/BRTracer/bin/japa/parser/ast/visitor/GenericVisitorAdapter.class deleted file mode 100644 index 4bfcf27..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/visitor/GenericVisitorAdapter.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/visitor/ModifierVisitorAdapter.class b/techniques/BRTracer/bin/japa/parser/ast/visitor/ModifierVisitorAdapter.class deleted file mode 100644 index 0e8e529..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/visitor/ModifierVisitorAdapter.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/visitor/VoidVisitor.class b/techniques/BRTracer/bin/japa/parser/ast/visitor/VoidVisitor.class deleted file mode 100644 index 1fd7a3d..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/visitor/VoidVisitor.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/ast/visitor/VoidVisitorAdapter.class b/techniques/BRTracer/bin/japa/parser/ast/visitor/VoidVisitorAdapter.class deleted file mode 100644 index 348ca8d..0000000 Binary files a/techniques/BRTracer/bin/japa/parser/ast/visitor/VoidVisitorAdapter.class and /dev/null differ diff --git a/techniques/BRTracer/bin/japa/parser/java_1_5.jj b/techniques/BRTracer/bin/japa/parser/java_1_5.jj deleted file mode 100644 index cb3ee81..0000000 --- a/techniques/BRTracer/bin/japa/parser/java_1_5.jj +++ /dev/null @@ -1,3000 +0,0 @@ -/* - * Copyright (C) 2008 Júlio Vilmar Gesser. - * - * This file is part of Java 1.5 parser and Abstract Syntax Tree. - * - * Java 1.5 parser and Abstract Syntax Tree is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Java 1.5 parser and Abstract Syntax Tree is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Java 1.5 parser and Abstract Syntax Tree. If not, see . - */ - -options { - LOOKAHEAD=1; - STATIC=false; - JAVA_UNICODE_ESCAPE=true; - COMMON_TOKEN_ACTION=true; - //SUPPORT_CLASS_VISIBILITY_PUBLIC=false; - JDK_VERSION = "1.5"; - TOKEN_FACTORY = "ASTParser.GTToken"; -} - -PARSER_BEGIN(ASTParser) -/* - * Copyright (C) 2008 Júlio Vilmar Gesser. - * - * This file is part of Java 1.5 parser and Abstract Syntax Tree. - * - * Java 1.5 parser and Abstract Syntax Tree is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Java 1.5 parser and Abstract Syntax Tree is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Java 1.5 parser and Abstract Syntax Tree. If not, see . - */ -package japa.parser; - -import java.io.*; -import java.util.*; -import japa.parser.ast.*; -import japa.parser.ast.body.*; -import japa.parser.ast.expr.*; -import japa.parser.ast.stmt.*; -import japa.parser.ast.type.*; - -/** - *

This class was generated automatically by javacc, do not edit.

- * @author Júlio Vilmar Gesser - */ -final class ASTParser { - - void reset(InputStream in, String encoding) { - ReInit(in, encoding); - token_source.clearComments(); - } - - private List add(List list, Object obj) { - if (list == null) { - list = new LinkedList(); - } - list.add(obj); - return list; - } - - private List add(int pos, List list, Object obj) { - if (list == null) { - list = new LinkedList(); - } - list.add(pos, obj); - return list; - } - - private class Modifier { - - final int modifiers; - final List annotations; - final int beginLine; - final int beginColumn; - - public Modifier(int beginLine, int beginColumn, int modifiers, List annotations) { - this.beginLine = beginLine; - this.beginColumn = beginColumn; - this.modifiers = modifiers; - this.annotations = annotations; - } - } - - public int addModifier(int modifiers, int mod, Token token) throws ParseException { - if ((ModifierSet.hasModifier(modifiers, mod))) { - throwParseException(token, "Duplicated modifier"); - } - return ModifierSet.addModifier(modifiers, mod); - } - - private void pushJavadoc() { - token_source.pushJavadoc(); - } - - private JavadocComment popJavadoc() { - return token_source.popJavadoc(); - } - - private List getComments() { - return token_source.getComments(); - } - - private void throwParseException(Token token, String message) throws ParseException { - StringBuilder buf = new StringBuilder(); - buf.append(message); - buf.append(": \""); - buf.append(token.image); - buf.append("\" at line "); - buf.append(token.beginLine); - buf.append(", column "); - buf.append(token.beginColumn); - ParseException e = new ParseException(buf.toString()); - e.currentToken = token; - throw e; - } - - static final class GTToken extends Token { - - int realKind = ASTParserConstants.GT; - - GTToken(int kind, String image) { - this.kind = kind; - this.image = image; - } - - public static Token newToken(int kind, String image) { - return new GTToken(kind, image); - } - } -} - -PARSER_END(ASTParser) - -/* WHITE SPACE */ - -SKIP : -{ - " " -| "\t" -| "\n" -| "\r" -| "\f" -} - -/* COMMENTS */ - -TOKEN_MGR_DECLS : -{ - private List comments; - private final Stack javadocStack = new Stack(); - private JavadocComment lastJavadoc; - - void pushJavadoc() { - javadocStack.push(lastJavadoc); - } - - JavadocComment popJavadoc() { - return javadocStack.pop(); - } - - List getComments() { - return comments; - } - - void clearComments() { - comments = null; - javadocStack.clear(); - lastJavadoc = null; - } - - private void CommonTokenAction(Token token) { - lastJavadoc = null; - if (token.specialToken != null) { - if(comments == null) { - comments = new LinkedList(); - } - Token special = token.specialToken; - if(special.kind == JAVA_DOC_COMMENT) { - lastJavadoc = new JavadocComment(special.beginLine, special.beginColumn, special.endLine, special.endColumn, special.image.substring(3, special.image.length()-2)); - comments.add(lastJavadoc); - } else if(special.kind == SINGLE_LINE_COMMENT) { - LineComment comment = new LineComment(special.beginLine, special.beginColumn, special.endLine, special.endColumn, special.image.substring(2)); - comments.add(comment); - } else if(special.kind == MULTI_LINE_COMMENT) { - BlockComment comment = new BlockComment(special.beginLine, special.beginColumn, special.endLine, special.endColumn, special.image.substring(2, special.image.length()-2)); - comments.add(comment); - } - } - } -} - -SPECIAL_TOKEN : -{ - -} - -MORE : -{ - <"/**" ~["/"]> { input_stream.backup(1); } : IN_JAVA_DOC_COMMENT -| - <"/*"> : IN_MULTI_LINE_COMMENT -} - - -SPECIAL_TOKEN : -{ - : DEFAULT -} - - -SPECIAL_TOKEN : -{ - : DEFAULT -} - - -MORE : -{ - < ~[] > -} - -/* RESERVED WORDS AND LITERALS */ - -TOKEN : -{ - < ABSTRACT: "abstract" > -| < ASSERT: "assert" > -| < BOOLEAN: "boolean" > -| < BREAK: "break" > -| < BYTE: "byte" > -| < CASE: "case" > -| < CATCH: "catch" > -| < CHAR: "char" > -| < CLASS: "class" > -| < CONST: "const" > -| < CONTINUE: "continue" > -| < _DEFAULT: "default" > -| < DO: "do" > -| < DOUBLE: "double" > -| < ELSE: "else" > -| < ENUM: "enum" > -| < EXTENDS: "extends" > -| < FALSE: "false" > -| < FINAL: "final" > -| < FINALLY: "finally" > -| < FLOAT: "float" > -| < FOR: "for" > -| < GOTO: "goto" > -| < IF: "if" > -| < IMPLEMENTS: "implements" > -| < IMPORT: "import" > -| < INSTANCEOF: "instanceof" > -| < INT: "int" > -| < INTERFACE: "interface" > -| < LONG: "long" > -| < NATIVE: "native" > -| < NEW: "new" > -| < NULL: "null" > -| < PACKAGE: "package"> -| < PRIVATE: "private" > -| < PROTECTED: "protected" > -| < PUBLIC: "public" > -| < RETURN: "return" > -| < SHORT: "short" > -| < STATIC: "static" > -| < STRICTFP: "strictfp" > -| < SUPER: "super" > -| < SWITCH: "switch" > -| < SYNCHRONIZED: "synchronized" > -| < THIS: "this" > -| < THROW: "throw" > -| < THROWS: "throws" > -| < TRANSIENT: "transient" > -| < TRUE: "true" > -| < TRY: "try" > -| < VOID: "void" > -| < VOLATILE: "volatile" > -| < WHILE: "while" > -} - -/* LITERALS */ - -TOKEN : -{ - < LONG_LITERAL: - (["l","L"]) - | (["l","L"]) - | (["l","L"]) - > -| - < INTEGER_LITERAL: - - | - | - > -| - < #DECIMAL_LITERAL: ["1"-"9"] (["0"-"9"])* > -| - < #HEX_LITERAL: "0" ["x","X"] (["0"-"9","a"-"f","A"-"F"])+ > -| - < #OCTAL_LITERAL: "0" (["0"-"7"])* > -| - < FLOATING_POINT_LITERAL: - - | - > -| - < #DECIMAL_FLOATING_POINT_LITERAL: - (["0"-"9"])+ "." (["0"-"9"])* ()? (["f","F","d","D"])? - | "." (["0"-"9"])+ ()? (["f","F","d","D"])? - | (["0"-"9"])+ (["f","F","d","D"])? - | (["0"-"9"])+ ()? ["f","F","d","D"] - > -| - < #DECIMAL_EXPONENT: ["e","E"] (["+","-"])? (["0"-"9"])+ > -| - < #HEXADECIMAL_FLOATING_POINT_LITERAL: - "0" ["x", "X"] (["0"-"9","a"-"f","A"-"F"])+ (".")? (["f","F","d","D"])? - | "0" ["x", "X"] (["0"-"9","a"-"f","A"-"F"])* "." (["0"-"9","a"-"f","A"-"F"])+ (["f","F","d","D"])? - > -| - < #HEXADECIMAL_EXPONENT: ["p","P"] (["+","-"])? (["0"-"9"])+ > -| - < CHARACTER_LITERAL: - "'" - ( (~["'","\\","\n","\r"]) - | ("\\" - ( ["n","t","b","r","f","\\","'","\""] - | ["0"-"7"] ( ["0"-"7"] )? - | ["0"-"3"] ["0"-"7"] ["0"-"7"] - ) - ) - | ("\\u" - ["0"-"9","A"-"F","a"-"f"] - ["0"-"9","A"-"F","a"-"f"] - ["0"-"9","A"-"F","a"-"f"] - ["0"-"9","A"-"F","a"-"f"] - ) - ) - "'" - > -| - < STRING_LITERAL: - "\"" - ( (~["\"","\\","\n","\r"]) - | ("\\" - ( ["n","t","b","r","f","\\","'","\""] - | ["0"-"7"] ( ["0"-"7"] )? - | ["0"-"3"] ["0"-"7"] ["0"-"7"] - ) - ) - | ("\\u" - ["0"-"9","A"-"F","a"-"f"] - ["0"-"9","A"-"F","a"-"f"] - ["0"-"9","A"-"F","a"-"f"] - ["0"-"9","A"-"F","a"-"f"] - ) - )* - "\"" - > -} - -/* IDENTIFIERS */ - -TOKEN : -{ - < IDENTIFIER: ()* > -| - < #LETTER: - [ // all chars for which Character.isIdentifierStart is true - "\u0024", // "$" - "\u0041"-"\u005a", // "A"-"Z" - "\u005f", // "_" - "\u0061"-"\u007a", // "a"-"z" - "\u00a2"-"\u00a5", - "\u00aa", - "\u00b5", - "\u00ba", - "\u00c0"-"\u00d6", - "\u00d8"-"\u00f6", - "\u00f8"-"\u0236", - "\u0250"-"\u02c1", - "\u02c6"-"\u02d1", - "\u02e0"-"\u02e4", - "\u02ee", - "\u037a", - "\u0386", - "\u0388"-"\u038a", - "\u038c", - "\u038e"-"\u03a1", - "\u03a3"-"\u03ce", - "\u03d0"-"\u03f5", - "\u03f7"-"\u03fb", - "\u0400"-"\u0481", - "\u048a"-"\u04ce", - "\u04d0"-"\u04f5", - "\u04f8"-"\u04f9", - "\u0500"-"\u050f", - "\u0531"-"\u0556", - "\u0559", - "\u0561"-"\u0587", - "\u05d0"-"\u05ea", - "\u05f0"-"\u05f2", - "\u0621"-"\u063a", - "\u0640"-"\u064a", - "\u066e"-"\u066f", - "\u0671"-"\u06d3", - "\u06d5", - "\u06e5"-"\u06e6", - "\u06ee"-"\u06ef", - "\u06fa"-"\u06fc", - "\u06ff", - "\u0710", - "\u0712"-"\u072f", - "\u074d"-"\u074f", - "\u0780"-"\u07a5", - "\u07b1", - "\u0904"-"\u0939", - "\u093d", - "\u0950", - "\u0958"-"\u0961", - "\u0985"-"\u098c", - "\u098f"-"\u0990", - "\u0993"-"\u09a8", - "\u09aa"-"\u09b0", - "\u09b2", - "\u09b6"-"\u09b9", - "\u09bd", - "\u09dc"-"\u09dd", - "\u09df"-"\u09e1", - "\u09f0"-"\u09f3", - "\u0a05"-"\u0a0a", - "\u0a0f"-"\u0a10", - "\u0a13"-"\u0a28", - "\u0a2a"-"\u0a30", - "\u0a32"-"\u0a33", - "\u0a35"-"\u0a36", - "\u0a38"-"\u0a39", - "\u0a59"-"\u0a5c", - "\u0a5e", - "\u0a72"-"\u0a74", - "\u0a85"-"\u0a8d", - "\u0a8f"-"\u0a91", - "\u0a93"-"\u0aa8", - "\u0aaa"-"\u0ab0", - "\u0ab2"-"\u0ab3", - "\u0ab5"-"\u0ab9", - "\u0abd", - "\u0ad0", - "\u0ae0"-"\u0ae1", - "\u0af1", - "\u0b05"-"\u0b0c", - "\u0b0f"-"\u0b10", - "\u0b13"-"\u0b28", - "\u0b2a"-"\u0b30", - "\u0b32"-"\u0b33", - "\u0b35"-"\u0b39", - "\u0b3d", - "\u0b5c"-"\u0b5d", - "\u0b5f"-"\u0b61", - "\u0b71", - "\u0b83", - "\u0b85"-"\u0b8a", - "\u0b8e"-"\u0b90", - "\u0b92"-"\u0b95", - "\u0b99"-"\u0b9a", - "\u0b9c", - "\u0b9e"-"\u0b9f", - "\u0ba3"-"\u0ba4", - "\u0ba8"-"\u0baa", - "\u0bae"-"\u0bb5", - "\u0bb7"-"\u0bb9", - "\u0bf9", - "\u0c05"-"\u0c0c", - "\u0c0e"-"\u0c10", - "\u0c12"-"\u0c28", - "\u0c2a"-"\u0c33", - "\u0c35"-"\u0c39", - "\u0c60"-"\u0c61", - "\u0c85"-"\u0c8c", - "\u0c8e"-"\u0c90", - "\u0c92"-"\u0ca8", - "\u0caa"-"\u0cb3", - "\u0cb5"-"\u0cb9", - "\u0cbd", - "\u0cde", - "\u0ce0"-"\u0ce1", - "\u0d05"-"\u0d0c", - "\u0d0e"-"\u0d10", - "\u0d12"-"\u0d28", - "\u0d2a"-"\u0d39", - "\u0d60"-"\u0d61", - "\u0d85"-"\u0d96", - "\u0d9a"-"\u0db1", - "\u0db3"-"\u0dbb", - "\u0dbd", - "\u0dc0"-"\u0dc6", - "\u0e01"-"\u0e30", - "\u0e32"-"\u0e33", - "\u0e3f"-"\u0e46", - "\u0e81"-"\u0e82", - "\u0e84", - "\u0e87"-"\u0e88", - "\u0e8a", - "\u0e8d", - "\u0e94"-"\u0e97", - "\u0e99"-"\u0e9f", - "\u0ea1"-"\u0ea3", - "\u0ea5", - "\u0ea7", - "\u0eaa"-"\u0eab", - "\u0ead"-"\u0eb0", - "\u0eb2"-"\u0eb3", - "\u0ebd", - "\u0ec0"-"\u0ec4", - "\u0ec6", - "\u0edc"-"\u0edd", - "\u0f00", - "\u0f40"-"\u0f47", - "\u0f49"-"\u0f6a", - "\u0f88"-"\u0f8b", - "\u1000"-"\u1021", - "\u1023"-"\u1027", - "\u1029"-"\u102a", - "\u1050"-"\u1055", - "\u10a0"-"\u10c5", - "\u10d0"-"\u10f8", - "\u1100"-"\u1159", - "\u115f"-"\u11a2", - "\u11a8"-"\u11f9", - "\u1200"-"\u1206", - "\u1208"-"\u1246", - "\u1248", - "\u124a"-"\u124d", - "\u1250"-"\u1256", - "\u1258", - "\u125a"-"\u125d", - "\u1260"-"\u1286", - "\u1288", - "\u128a"-"\u128d", - "\u1290"-"\u12ae", - "\u12b0", - "\u12b2"-"\u12b5", - "\u12b8"-"\u12be", - "\u12c0", - "\u12c2"-"\u12c5", - "\u12c8"-"\u12ce", - "\u12d0"-"\u12d6", - "\u12d8"-"\u12ee", - "\u12f0"-"\u130e", - "\u1310", - "\u1312"-"\u1315", - "\u1318"-"\u131e", - "\u1320"-"\u1346", - "\u1348"-"\u135a", - "\u13a0"-"\u13f4", - "\u1401"-"\u166c", - "\u166f"-"\u1676", - "\u1681"-"\u169a", - "\u16a0"-"\u16ea", - "\u16ee"-"\u16f0", - "\u1700"-"\u170c", - "\u170e"-"\u1711", - "\u1720"-"\u1731", - "\u1740"-"\u1751", - "\u1760"-"\u176c", - "\u176e"-"\u1770", - "\u1780"-"\u17b3", - "\u17d7", - "\u17db"-"\u17dc", - "\u1820"-"\u1877", - "\u1880"-"\u18a8", - "\u1900"-"\u191c", - "\u1950"-"\u196d", - "\u1970"-"\u1974", - "\u1d00"-"\u1d6b", - "\u1e00"-"\u1e9b", - "\u1ea0"-"\u1ef9", - "\u1f00"-"\u1f15", - "\u1f18"-"\u1f1d", - "\u1f20"-"\u1f45", - "\u1f48"-"\u1f4d", - "\u1f50"-"\u1f57", - "\u1f59", - "\u1f5b", - "\u1f5d", - "\u1f5f"-"\u1f7d", - "\u1f80"-"\u1fb4", - "\u1fb6"-"\u1fbc", - "\u1fbe", - "\u1fc2"-"\u1fc4", - "\u1fc6"-"\u1fcc", - "\u1fd0"-"\u1fd3", - "\u1fd6"-"\u1fdb", - "\u1fe0"-"\u1fec", - "\u1ff2"-"\u1ff4", - "\u1ff6"-"\u1ffc", - "\u203f"-"\u2040", - "\u2054", - "\u2071", - "\u207f", - "\u20a0"-"\u20b1", - "\u2102", - "\u2107", - "\u210a"-"\u2113", - "\u2115", - "\u2119"-"\u211d", - "\u2124", - "\u2126", - "\u2128", - "\u212a"-"\u212d", - "\u212f"-"\u2131", - "\u2133"-"\u2139", - "\u213d"-"\u213f", - "\u2145"-"\u2149", - "\u2160"-"\u2183", - "\u3005"-"\u3007", - "\u3021"-"\u3029", - "\u3031"-"\u3035", - "\u3038"-"\u303c", - "\u3041"-"\u3096", - "\u309d"-"\u309f", - "\u30a1"-"\u30ff", - "\u3105"-"\u312c", - "\u3131"-"\u318e", - "\u31a0"-"\u31b7", - "\u31f0"-"\u31ff", - "\u3400"-"\u4db5", - "\u4e00"-"\u9fa5", - "\ua000"-"\ua48c", - "\uac00"-"\ud7a3", - "\ud801", //for supplementary characters suport - "\ud802", //for supplementary characters suport - "\uf900"-"\ufa2d", - "\ufa30"-"\ufa6a", - "\ufb00"-"\ufb06", - "\ufb13"-"\ufb17", - "\ufb1d", - "\ufb1f"-"\ufb28", - "\ufb2a"-"\ufb36", - "\ufb38"-"\ufb3c", - "\ufb3e", - "\ufb40"-"\ufb41", - "\ufb43"-"\ufb44", - "\ufb46"-"\ufbb1", - "\ufbd3"-"\ufd3d", - "\ufd50"-"\ufd8f", - "\ufd92"-"\ufdc7", - "\ufdf0"-"\ufdfc", - "\ufe33"-"\ufe34", - "\ufe4d"-"\ufe4f", - "\ufe69", - "\ufe70"-"\ufe74", - "\ufe76"-"\ufefc", - "\uff04", - "\uff21"-"\uff3a", - "\uff3f", - "\uff41"-"\uff5a", - "\uff65"-"\uffbe", - "\uffc2"-"\uffc7", - "\uffca"-"\uffcf", - "\uffd2"-"\uffd7", - "\uffda"-"\uffdc", - "\uffe0"-"\uffe1", - "\uffe5"-"\uffe6" - ] - > -| - < #PART_LETTER: - [ // all chars for which Character.isIdentifierPart is true - "\u0000"-"\u0008", - "\u000e"-"\u001b", - "\u0024", // "$" - "\u0030"-"\u0039", // "0"-"9" - "\u0041"-"\u005a", // "A"-"Z" - "\u005f", // "_" - "\u0061"-"\u007a", // "a"-"z" - "\u007f"-"\u009f", - "\u00a2"-"\u00a5", - "\u00aa", - "\u00ad", - "\u00b5", - "\u00ba", - "\u00c0"-"\u00d6", - "\u00d8"-"\u00f6", - "\u00f8"-"\u0236", - "\u0250"-"\u02c1", - "\u02c6"-"\u02d1", - "\u02e0"-"\u02e4", - "\u02ee", - "\u0300"-"\u0357", - "\u035d"-"\u036f", - "\u037a", - "\u0386", - "\u0388"-"\u038a", - "\u038c", - "\u038e"-"\u03a1", - "\u03a3"-"\u03ce", - "\u03d0"-"\u03f5", - "\u03f7"-"\u03fb", - "\u0400"-"\u0481", - "\u0483"-"\u0486", - "\u048a"-"\u04ce", - "\u04d0"-"\u04f5", - "\u04f8"-"\u04f9", - "\u0500"-"\u050f", - "\u0531"-"\u0556", - "\u0559", - "\u0561"-"\u0587", - "\u0591"-"\u05a1", - "\u05a3"-"\u05b9", - "\u05bb"-"\u05bd", - "\u05bf", - "\u05c1"-"\u05c2", - "\u05c4", - "\u05d0"-"\u05ea", - "\u05f0"-"\u05f2", - "\u0600"-"\u0603", - "\u0610"-"\u0615", - "\u0621"-"\u063a", - "\u0640"-"\u0658", - "\u0660"-"\u0669", - "\u066e"-"\u06d3", - "\u06d5"-"\u06dd", - "\u06df"-"\u06e8", - "\u06ea"-"\u06fc", - "\u06ff", - "\u070f"-"\u074a", - "\u074d"-"\u074f", - "\u0780"-"\u07b1", - "\u0901"-"\u0939", - "\u093c"-"\u094d", - "\u0950"-"\u0954", - "\u0958"-"\u0963", - "\u0966"-"\u096f", - "\u0981"-"\u0983", - "\u0985"-"\u098c", - "\u098f"-"\u0990", - "\u0993"-"\u09a8", - "\u09aa"-"\u09b0", - "\u09b2", - "\u09b6"-"\u09b9", - "\u09bc"-"\u09c4", - "\u09c7"-"\u09c8", - "\u09cb"-"\u09cd", - "\u09d7", - "\u09dc"-"\u09dd", - "\u09df"-"\u09e3", - "\u09e6"-"\u09f3", - "\u0a01"-"\u0a03", - "\u0a05"-"\u0a0a", - "\u0a0f"-"\u0a10", - "\u0a13"-"\u0a28", - "\u0a2a"-"\u0a30", - "\u0a32"-"\u0a33", - "\u0a35"-"\u0a36", - "\u0a38"-"\u0a39", - "\u0a3c", - "\u0a3e"-"\u0a42", - "\u0a47"-"\u0a48", - "\u0a4b"-"\u0a4d", - "\u0a59"-"\u0a5c", - "\u0a5e", - "\u0a66"-"\u0a74", - "\u0a81"-"\u0a83", - "\u0a85"-"\u0a8d", - "\u0a8f"-"\u0a91", - "\u0a93"-"\u0aa8", - "\u0aaa"-"\u0ab0", - "\u0ab2"-"\u0ab3", - "\u0ab5"-"\u0ab9", - "\u0abc"-"\u0ac5", - "\u0ac7"-"\u0ac9", - "\u0acb"-"\u0acd", - "\u0ad0", - "\u0ae0"-"\u0ae3", - "\u0ae6"-"\u0aef", - "\u0af1", - "\u0b01"-"\u0b03", - "\u0b05"-"\u0b0c", - "\u0b0f"-"\u0b10", - "\u0b13"-"\u0b28", - "\u0b2a"-"\u0b30", - "\u0b32"-"\u0b33", - "\u0b35"-"\u0b39", - "\u0b3c"-"\u0b43", - "\u0b47"-"\u0b48", - "\u0b4b"-"\u0b4d", - "\u0b56"-"\u0b57", - "\u0b5c"-"\u0b5d", - "\u0b5f"-"\u0b61", - "\u0b66"-"\u0b6f", - "\u0b71", - "\u0b82"-"\u0b83", - "\u0b85"-"\u0b8a", - "\u0b8e"-"\u0b90", - "\u0b92"-"\u0b95", - "\u0b99"-"\u0b9a", - "\u0b9c", - "\u0b9e"-"\u0b9f", - "\u0ba3"-"\u0ba4", - "\u0ba8"-"\u0baa", - "\u0bae"-"\u0bb5", - "\u0bb7"-"\u0bb9", - "\u0bbe"-"\u0bc2", - "\u0bc6"-"\u0bc8", - "\u0bca"-"\u0bcd", - "\u0bd7", - "\u0be7"-"\u0bef", - "\u0bf9", - "\u0c01"-"\u0c03", - "\u0c05"-"\u0c0c", - "\u0c0e"-"\u0c10", - "\u0c12"-"\u0c28", - "\u0c2a"-"\u0c33", - "\u0c35"-"\u0c39", - "\u0c3e"-"\u0c44", - "\u0c46"-"\u0c48", - "\u0c4a"-"\u0c4d", - "\u0c55"-"\u0c56", - "\u0c60"-"\u0c61", - "\u0c66"-"\u0c6f", - "\u0c82"-"\u0c83", - "\u0c85"-"\u0c8c", - "\u0c8e"-"\u0c90", - "\u0c92"-"\u0ca8", - "\u0caa"-"\u0cb3", - "\u0cb5"-"\u0cb9", - "\u0cbc"-"\u0cc4", - "\u0cc6"-"\u0cc8", - "\u0cca"-"\u0ccd", - "\u0cd5"-"\u0cd6", - "\u0cde", - "\u0ce0"-"\u0ce1", - "\u0ce6"-"\u0cef", - "\u0d02"-"\u0d03", - "\u0d05"-"\u0d0c", - "\u0d0e"-"\u0d10", - "\u0d12"-"\u0d28", - "\u0d2a"-"\u0d39", - "\u0d3e"-"\u0d43", - "\u0d46"-"\u0d48", - "\u0d4a"-"\u0d4d", - "\u0d57", - "\u0d60"-"\u0d61", - "\u0d66"-"\u0d6f", - "\u0d82"-"\u0d83", - "\u0d85"-"\u0d96", - "\u0d9a"-"\u0db1", - "\u0db3"-"\u0dbb", - "\u0dbd", - "\u0dc0"-"\u0dc6", - "\u0dca", - "\u0dcf"-"\u0dd4", - "\u0dd6", - "\u0dd8"-"\u0ddf", - "\u0df2"-"\u0df3", - "\u0e01"-"\u0e3a", - "\u0e3f"-"\u0e4e", - "\u0e50"-"\u0e59", - "\u0e81"-"\u0e82", - "\u0e84", - "\u0e87"-"\u0e88", - "\u0e8a", - "\u0e8d", - "\u0e94"-"\u0e97", - "\u0e99"-"\u0e9f", - "\u0ea1"-"\u0ea3", - "\u0ea5", - "\u0ea7", - "\u0eaa"-"\u0eab", - "\u0ead"-"\u0eb9", - "\u0ebb"-"\u0ebd", - "\u0ec0"-"\u0ec4", - "\u0ec6", - "\u0ec8"-"\u0ecd", - "\u0ed0"-"\u0ed9", - "\u0edc"-"\u0edd", - "\u0f00", - "\u0f18"-"\u0f19", - "\u0f20"-"\u0f29", - "\u0f35", - "\u0f37", - "\u0f39", - "\u0f3e"-"\u0f47", - "\u0f49"-"\u0f6a", - "\u0f71"-"\u0f84", - "\u0f86"-"\u0f8b", - "\u0f90"-"\u0f97", - "\u0f99"-"\u0fbc", - "\u0fc6", - "\u1000"-"\u1021", - "\u1023"-"\u1027", - "\u1029"-"\u102a", - "\u102c"-"\u1032", - "\u1036"-"\u1039", - "\u1040"-"\u1049", - "\u1050"-"\u1059", - "\u10a0"-"\u10c5", - "\u10d0"-"\u10f8", - "\u1100"-"\u1159", - "\u115f"-"\u11a2", - "\u11a8"-"\u11f9", - "\u1200"-"\u1206", - "\u1208"-"\u1246", - "\u1248", - "\u124a"-"\u124d", - "\u1250"-"\u1256", - "\u1258", - "\u125a"-"\u125d", - "\u1260"-"\u1286", - "\u1288", - "\u128a"-"\u128d", - "\u1290"-"\u12ae", - "\u12b0", - "\u12b2"-"\u12b5", - "\u12b8"-"\u12be", - "\u12c0", - "\u12c2"-"\u12c5", - "\u12c8"-"\u12ce", - "\u12d0"-"\u12d6", - "\u12d8"-"\u12ee", - "\u12f0"-"\u130e", - "\u1310", - "\u1312"-"\u1315", - "\u1318"-"\u131e", - "\u1320"-"\u1346", - "\u1348"-"\u135a", - "\u1369"-"\u1371", - "\u13a0"-"\u13f4", - "\u1401"-"\u166c", - "\u166f"-"\u1676", - "\u1681"-"\u169a", - "\u16a0"-"\u16ea", - "\u16ee"-"\u16f0", - "\u1700"-"\u170c", - "\u170e"-"\u1714", - "\u1720"-"\u1734", - "\u1740"-"\u1753", - "\u1760"-"\u176c", - "\u176e"-"\u1770", - "\u1772"-"\u1773", - "\u1780"-"\u17d3", - "\u17d7", - "\u17db"-"\u17dd", - "\u17e0"-"\u17e9", - "\u180b"-"\u180d", - "\u1810"-"\u1819", - "\u1820"-"\u1877", - "\u1880"-"\u18a9", - "\u1900"-"\u191c", - "\u1920"-"\u192b", - "\u1930"-"\u193b", - "\u1946"-"\u196d", - "\u1970"-"\u1974", - "\u1d00"-"\u1d6b", - "\u1e00"-"\u1e9b", - "\u1ea0"-"\u1ef9", - "\u1f00"-"\u1f15", - "\u1f18"-"\u1f1d", - "\u1f20"-"\u1f45", - "\u1f48"-"\u1f4d", - "\u1f50"-"\u1f57", - "\u1f59", - "\u1f5b", - "\u1f5d", - "\u1f5f"-"\u1f7d", - "\u1f80"-"\u1fb4", - "\u1fb6"-"\u1fbc", - "\u1fbe", - "\u1fc2"-"\u1fc4", - "\u1fc6"-"\u1fcc", - "\u1fd0"-"\u1fd3", - "\u1fd6"-"\u1fdb", - "\u1fe0"-"\u1fec", - "\u1ff2"-"\u1ff4", - "\u1ff6"-"\u1ffc", - "\u200c"-"\u200f", - "\u202a"-"\u202e", - "\u203f"-"\u2040", - "\u2054", - "\u2060"-"\u2063", - "\u206a"-"\u206f", - "\u2071", - "\u207f", - "\u20a0"-"\u20b1", - "\u20d0"-"\u20dc", - "\u20e1", - "\u20e5"-"\u20ea", - "\u2102", - "\u2107", - "\u210a"-"\u2113", - "\u2115", - "\u2119"-"\u211d", - "\u2124", - "\u2126", - "\u2128", - "\u212a"-"\u212d", - "\u212f"-"\u2131", - "\u2133"-"\u2139", - "\u213d"-"\u213f", - "\u2145"-"\u2149", - "\u2160"-"\u2183", - "\u3005"-"\u3007", - "\u3021"-"\u302f", - "\u3031"-"\u3035", - "\u3038"-"\u303c", - "\u3041"-"\u3096", - "\u3099"-"\u309a", - "\u309d"-"\u309f", - "\u30a1"-"\u30ff", - "\u3105"-"\u312c", - "\u3131"-"\u318e", - "\u31a0"-"\u31b7", - "\u31f0"-"\u31ff", - "\u3400"-"\u4db5", - "\u4e00"-"\u9fa5", - "\ua000"-"\ua48c", - "\uac00"-"\ud7a3", - "\ud801", //for supplementary characters suport - "\ud802", //for supplementary characters suport - "\ud834", //for supplementary characters suport - "\udc00", //for supplementary characters suport - "\udc01", //for supplementary characters suport - "\udd7b", //for supplementary characters suport - "\uf900"-"\ufa2d", - "\ufa30"-"\ufa6a", - "\ufb00"-"\ufb06", - "\ufb13"-"\ufb17", - "\ufb1d"-"\ufb28", - "\ufb2a"-"\ufb36", - "\ufb38"-"\ufb3c", - "\ufb3e", - "\ufb40"-"\ufb41", - "\ufb43"-"\ufb44", - "\ufb46"-"\ufbb1", - "\ufbd3"-"\ufd3d", - "\ufd50"-"\ufd8f", - "\ufd92"-"\ufdc7", - "\ufdf0"-"\ufdfc", - "\ufe00"-"\ufe0f", - "\ufe20"-"\ufe23", - "\ufe33"-"\ufe34", - "\ufe4d"-"\ufe4f", - "\ufe69", - "\ufe70"-"\ufe74", - "\ufe76"-"\ufefc", - "\ufeff", - "\uff04", - "\uff10"-"\uff19", - "\uff21"-"\uff3a", - "\uff3f", - "\uff41"-"\uff5a", - "\uff65"-"\uffbe", - "\uffc2"-"\uffc7", - "\uffca"-"\uffcf", - "\uffd2"-"\uffd7", - "\uffda"-"\uffdc", - "\uffe0"-"\uffe1", - "\uffe5"-"\uffe6", - "\ufff9"-"\ufffb" - ] - > -} - -/* SEPARATORS */ - -TOKEN : -{ - < LPAREN: "(" > -| < RPAREN: ")" > -| < LBRACE: "{" > -| < RBRACE: "}" > -| < LBRACKET: "[" > -| < RBRACKET: "]" > -| < SEMICOLON: ";" > -| < COMMA: "," > -| < DOT: "." > -| < AT: "@" > -} - -/* OPERATORS */ - -TOKEN : -{ - < ASSIGN: "=" > -| < LT: "<" > -| < BANG: "!" > -| < TILDE: "~" > -| < HOOK: "?" > -| < COLON: ":" > -| < EQ: "==" > -| < LE: "<=" > -| < GE: ">=" > -| < NE: "!=" > -| < SC_OR: "||" > -| < SC_AND: "&&" > -| < INCR: "++" > -| < DECR: "--" > -| < PLUS: "+" > -| < MINUS: "-" > -| < STAR: "*" > -| < SLASH: "/" > -| < BIT_AND: "&" > -| < BIT_OR: "|" > -| < XOR: "^" > -| < REM: "%" > -| < LSHIFT: "<<" > -| < PLUSASSIGN: "+=" > -| < MINUSASSIGN: "-=" > -| < STARASSIGN: "*=" > -| < SLASHASSIGN: "/=" > -| < ANDASSIGN: "&=" > -| < ORASSIGN: "|=" > -| < XORASSIGN: "^=" > -| < REMASSIGN: "%=" > -| < LSHIFTASSIGN: "<<=" > -| < RSIGNEDSHIFTASSIGN: ">>=" > -| < RUNSIGNEDSHIFTASSIGN: ">>>=" > -| < ELLIPSIS: "..." > -} - -/* >'s need special attention due to generics syntax. */ -TOKEN : -{ - < RUNSIGNEDSHIFT: ">>>" > - { - matchedToken.kind = GT; - ((ASTParser.GTToken)matchedToken).realKind = RUNSIGNEDSHIFT; - input_stream.backup(2); - } -| < RSIGNEDSHIFT: ">>" > - { - matchedToken.kind = GT; - ((ASTParser.GTToken)matchedToken).realKind = RSIGNEDSHIFT; - input_stream.backup(1); - } -| < GT: ">" > -} - - -/***************************************** - * THE JAVA LANGUAGE GRAMMAR STARTS HERE * - *****************************************/ - -/* - * Program structuring syntax follows. - */ - -CompilationUnit CompilationUnit(): -{ - PackageDeclaration pakage = null; - List imports = null; - ImportDeclaration in = null; - List types = null; - TypeDeclaration tn = null; - int line = -1; - int column = 0; -} -{ - [ LOOKAHEAD(PackageDeclaration()) pakage = PackageDeclaration() {line = pakage.getBeginLine(); column = pakage.getBeginColumn();} ] - ( in = ImportDeclaration() { if(line==-1){line = in.getBeginLine(); column = in.getBeginColumn();} imports = add(imports, in); } )* - ( tn = TypeDeclaration() { if(line==-1){line = tn.getBeginLine(); column = tn.getBeginColumn();} types = add(types, tn); } )* - ( | "\u001A" /** ctrl+z char **/) - { return new CompilationUnit(line == -1 ? 0 : line, column, token.endLine, token.endColumn,pakage, imports, types, getComments()); } -} - -PackageDeclaration PackageDeclaration(): -{ - List annotations = null; - AnnotationExpr ann; - NameExpr name; - int line; - int column; -} -{ -( ann = Annotation() { annotations = add(annotations, ann); } )* - "package" {line=token.beginLine; column=token.beginColumn;} name = Name() ";" - { return new PackageDeclaration(line, column, token.endLine, token.endColumn,annotations, name); } -} - -ImportDeclaration ImportDeclaration(): -{ - NameExpr name; - boolean isStatic = false; - boolean isAsterisk = false; - int line; - int column; -} -{ - "import" {line=token.beginLine; column=token.beginColumn;} [ "static" { isStatic = true; } ] name = Name() [ "." "*" { isAsterisk = true; } ] ";" - { return new ImportDeclaration(line, column, token.endLine, token.endColumn,name, isStatic, isAsterisk); } -} - -/* - * Modifiers. We match all modifiers in a single rule to reduce the chances of - * syntax errors for simple modifier mistakes. It will also enable us to give - * better error messages. - */ - -Modifier Modifiers(): -{ - int beginLine = -1; - int beginColumn = -1; - int modifiers = 0; - List annotations = null; - AnnotationExpr ann; -} -{ - ( - LOOKAHEAD(2) - ( - "public" { modifiers = addModifier(modifiers, ModifierSet.PUBLIC, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "static" { modifiers = addModifier(modifiers, ModifierSet.STATIC, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "protected" { modifiers = addModifier(modifiers, ModifierSet.PROTECTED, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "private" { modifiers = addModifier(modifiers, ModifierSet.PRIVATE, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "final" { modifiers = addModifier(modifiers, ModifierSet.FINAL, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "abstract" { modifiers = addModifier(modifiers, ModifierSet.ABSTRACT, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "synchronized" { modifiers = addModifier(modifiers, ModifierSet.SYNCHRONIZED, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "native" { modifiers = addModifier(modifiers, ModifierSet.NATIVE, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "transient" { modifiers = addModifier(modifiers, ModifierSet.TRANSIENT, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "volatile" { modifiers = addModifier(modifiers, ModifierSet.VOLATILE, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - "strictfp" { modifiers = addModifier(modifiers, ModifierSet.STRICTFP, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} } - | - ann = Annotation() { annotations = add(annotations, ann); if(beginLine==-1) {beginLine=ann.getBeginLine(); beginColumn=ann.getBeginColumn();} } - ) - )* - - { - return new Modifier(beginLine, beginColumn, modifiers, annotations); - } -} - -/* - * Declaration syntax follows. - */ -TypeDeclaration TypeDeclaration(): -{ - Modifier modifier; - TypeDeclaration ret; -} -{ - { pushJavadoc(); } - ( - ";" { ret = new EmptyTypeDeclaration(token.beginLine, token.beginColumn, token.endLine, token.endColumn, popJavadoc()); } - | - modifier = Modifiers() - ( - ret = ClassOrInterfaceDeclaration(modifier) - | - ret = EnumDeclaration(modifier) - | - ret = AnnotationTypeDeclaration(modifier) - ) - ) - { return ret; } -} - - -ClassOrInterfaceDeclaration ClassOrInterfaceDeclaration(Modifier modifier): -{ - boolean isInterface = false; - String name; - List typePar = null; - List extList = null; - List impList = null; - List members; - int line = modifier.beginLine; - int column = modifier.beginColumn; -} -{ - ( "class" | "interface" { isInterface = true; } ) { if (line == -1) {line=token.beginLine; column=token.beginColumn;} } - { name = token.image; } - [ typePar = TypeParameters() {typePar.remove(0);} ] - [ extList = ExtendsList(isInterface) ] - [ impList = ImplementsList(isInterface) ] - members = ClassOrInterfaceBody(isInterface) - - { return new ClassOrInterfaceDeclaration(line, column, token.endLine, token.endColumn,popJavadoc(), modifier.modifiers, modifier.annotations, isInterface, name, typePar, extList, impList, members); } -} - -List ExtendsList(boolean isInterface): -{ - boolean extendsMoreThanOne = false; - List ret = new LinkedList(); - ClassOrInterfaceType cit; -} -{ - "extends" cit = ClassOrInterfaceType() { ret.add(cit); } - ( "," cit = ClassOrInterfaceType() { ret.add(cit); extendsMoreThanOne = true; } )* - { - if (extendsMoreThanOne && !isInterface) - throwParseException(token, "A class cannot extend more than one other class"); - } - { return ret; } -} - -List ImplementsList(boolean isInterface): -{ - List ret = new LinkedList(); - ClassOrInterfaceType cit; -} -{ - "implements" cit = ClassOrInterfaceType() { ret.add(cit); } - ( "," cit = ClassOrInterfaceType() { ret.add(cit); } )* - { - if (isInterface) - throwParseException(token, "An interface cannot implement other interfaces"); - } - { return ret; } -} - -EnumDeclaration EnumDeclaration(Modifier modifier): -{ - String name; - List impList = null; - EnumConstantDeclaration entry; - List entries = null; - BodyDeclaration member; - List members = null; - int line = modifier.beginLine; - int column = modifier.beginColumn; -} -{ - "enum" { if (line == -1) {line=token.beginLine; column=token.beginColumn;} } - { name = token.image; } - [ impList = ImplementsList(false) ] - "{" - [ - { entries = new LinkedList(); } - entry = EnumConstantDeclaration() { entries.add(entry); } ( LOOKAHEAD(2) "," entry = EnumConstantDeclaration() { entries.add(entry); } )* - ] - [ "," ] - [ - ( ";" ( member = ClassOrInterfaceBodyDeclaration(false) { members = add(members, member); } )* ) - ] - "}" - - { return new EnumDeclaration(line, column, token.endLine, token.endColumn,popJavadoc(), modifier.modifiers, modifier.annotations, name, impList, entries, members); } -} - - -EnumConstantDeclaration EnumConstantDeclaration(): -{ - List annotations = null; - AnnotationExpr ann; - String name; - List args = null; - List classBody = null; - int line = -1; - int column = -1; -} -{ - { pushJavadoc(); } - ( ann = Annotation() { annotations = add(annotations, ann); if(line==-1){line=ann.getBeginLine(); column=ann.getBeginColumn();} } )* - { name = token.image; if(line==-1){line=token.beginLine; column=token.beginColumn;} } - [ args = Arguments() ] [ classBody = ClassOrInterfaceBody(false) ] - { return new EnumConstantDeclaration(line, column, token.endLine, token.endColumn,popJavadoc(), annotations, name, args, classBody); } -} - -List TypeParameters(): -{ - List ret = new LinkedList(); - TypeParameter tp; -} -{ - "<" { ret.add(new int[]{token.beginLine, token.beginColumn}); } - tp = TypeParameter() { ret.add(tp); } - ( "," tp = TypeParameter() { ret.add(tp); } )* - ">" - { return ret; } -} - -TypeParameter TypeParameter(): -{ - String name; - List typeBound = null; - int line; - int column; -} -{ - { name = token.image; line=token.beginLine; column=token.beginColumn;} [ typeBound = TypeBound() ] - { return new TypeParameter(line, column, token.endLine, token.endColumn,name, typeBound); } -} - -List TypeBound(): -{ - List ret = new LinkedList(); - ClassOrInterfaceType cit; -} -{ - "extends" cit = ClassOrInterfaceType() { ret.add(cit); } - ( "&" cit = ClassOrInterfaceType() { ret.add(cit); } )* - { return ret; } -} - -List ClassOrInterfaceBody(boolean isInterface): -{ - List ret = new LinkedList(); - BodyDeclaration member; -} -{ - "{" ( member = ClassOrInterfaceBodyDeclaration(isInterface) { ret.add(member); } )* "}" - { return ret; } -} - -BodyDeclaration ClassOrInterfaceBodyDeclaration(boolean isInterface): -{ - boolean isNestedInterface = false; - Modifier modifier; - BodyDeclaration ret; -} -{ - { pushJavadoc(); } - ( - LOOKAHEAD(2) - ret = InitializerDeclaration() - { - if (isInterface) - throwParseException(token, "An interface cannot have initializers"); - } - | - modifier = Modifiers() // Just get all the modifiers out of the way. If you want to do - // more checks, pass the modifiers down to the member - ( - ret = ClassOrInterfaceDeclaration(modifier) - | - ret = EnumDeclaration(modifier) - | - ret = AnnotationTypeDeclaration(modifier) - | - LOOKAHEAD( [ TypeParameters() ] "(" ) - ret = ConstructorDeclaration(modifier) - | - LOOKAHEAD( Type() ( "[" "]" )* ( "," | "=" | ";" ) ) - ret = FieldDeclaration(modifier) - | - ret = MethodDeclaration(modifier) - ) - | - ";" { ret = new EmptyMemberDeclaration(token.beginLine, token.beginColumn, token.endLine, token.endColumn, popJavadoc()); } - ) - { return ret; } -} - -FieldDeclaration FieldDeclaration(Modifier modifier): -{ - Type type; - List variables = new LinkedList(); - VariableDeclarator val; -} -{ - // Modifiers are already matched in the caller - type = Type() - val = VariableDeclarator() { variables.add(val); } - ( "," val = VariableDeclarator() { variables.add(val); } )* ";" - - { - int line = modifier.beginLine; - int column = modifier.beginColumn; - if (line == -1) { line=type.getBeginLine(); column=type.getBeginColumn(); } - return new FieldDeclaration(line, column, token.endLine, token.endColumn, popJavadoc(), modifier.modifiers, modifier.annotations, type, variables); - } -} - -VariableDeclarator VariableDeclarator(): -{ - VariableDeclaratorId id; - Expression init = null; -} -{ - id = VariableDeclaratorId() [ "=" init = VariableInitializer() ] - { return new VariableDeclarator(id.getBeginLine(), id.getBeginColumn(), token.endLine, token.endColumn, id, init); } -} - -VariableDeclaratorId VariableDeclaratorId(): -{ - String name; - int arrayCount = 0; - int line; - int column; -} -{ - { name = token.image; line=token.beginLine; column=token.beginColumn;} ( "[" "]" { arrayCount++; } )* - { return new VariableDeclaratorId(line, column, token.endLine, token.endColumn,name, arrayCount); } -} - -Expression VariableInitializer(): -{ - Expression ret; -} -{ - ( - ret = ArrayInitializer() - | - ret = Expression() - ) - { return ret;} -} - -ArrayInitializerExpr ArrayInitializer(): -{ - List values = null; - Expression val; - int line; - int column; -} -{ - "{" {line=token.beginLine; column=token.beginColumn;} [ val = VariableInitializer() { values = add(values, val); } ( LOOKAHEAD(2) "," val = VariableInitializer() { values = add(values, val); } )* ] [ "," ] "}" - { return new ArrayInitializerExpr(line, column, token.endLine, token.endColumn,values); } -} - -MethodDeclaration MethodDeclaration(Modifier modifier): -{ - List typeParameters = null; - Type type; - String name; - List parameters; - int arrayCount = 0; - List throws_ = null; - BlockStmt block = null; - int line = modifier.beginLine; - int column = modifier.beginColumn; -} -{ - // Modifiers already matched in the caller! - [ typeParameters = TypeParameters() { int[] lineCol=(int[])typeParameters.remove(0); if(line==-1){ line=lineCol[0]; column=lineCol[1];} } ] - type = ResultType() { if(line==-1){line=type.getBeginLine(); column=type.getBeginColumn();}} - { name = token.image; } parameters = FormalParameters() ( "[" "]" { arrayCount++; } )* - [ "throws" throws_ = NameList() ] - ( block = Block() | ";" ) - - { return new MethodDeclaration(line, column, token.endLine, token.endColumn,popJavadoc(), modifier.modifiers, modifier.annotations, typeParameters, type, name, parameters, arrayCount, throws_, block); } -} - -List FormalParameters(): -{ - List ret = null; - Parameter par; -} -{ - "(" [ par = FormalParameter() { ret = add(ret, par); } ( "," par = FormalParameter() { ret = add(ret, par); } )* ] ")" - - { return ret; } -} - -Parameter FormalParameter(): -{ - Modifier modifier; - Type type; - boolean isVarArg = false; - VariableDeclaratorId id; -} -{ - modifier = Modifiers() type = Type() [ "..." { isVarArg = true;} ] id = VariableDeclaratorId() - - { - int line = modifier.beginLine; - int column = modifier.beginColumn; - if(line==-1){ line=type.getBeginLine(); column=type.getBeginColumn(); } - return new Parameter(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, type, isVarArg, id); - } -} - -ConstructorDeclaration ConstructorDeclaration(Modifier modifier): -{ - List typeParameters = null; - String name; - List parameters; - List throws_ = null; - ExplicitConstructorInvocationStmt exConsInv = null; - List stmts; - int line = modifier.beginLine; - int column = modifier.beginColumn; - int bbLine = 0; - int bbColumn = 0; - int beLine = 0; - int beColumn = 0; -} -{ - [ typeParameters = TypeParameters() { int[] lineCol=(int[])typeParameters.remove(0); if(line==-1){ line=lineCol[0]; column=lineCol[1];} } ] - // Modifiers matched in the caller - { name = token.image; if(line==-1){line=token.beginLine; column=token.beginColumn;}} parameters = FormalParameters() [ "throws" throws_ = NameList() ] - "{" { bbLine=token.beginLine; bbColumn=token.beginColumn; } - [ LOOKAHEAD(ExplicitConstructorInvocation()) exConsInv = ExplicitConstructorInvocation() ] - stmts = Statements() - "}" - - { - if (exConsInv != null) { - stmts = add(0, stmts, exConsInv); - } - return new ConstructorDeclaration(line, column, token.endLine, token.endColumn,popJavadoc(), modifier.modifiers, modifier.annotations, typeParameters, name, parameters, throws_, new BlockStmt(bbLine, bbColumn, token.endLine, token.endColumn, stmts)); - } -} - -ExplicitConstructorInvocationStmt ExplicitConstructorInvocation(): -{ - boolean isThis = false; - List args; - Expression expr = null; - List typeArgs = null; - int line = -1; - int column = 0; -} -{ - ( - LOOKAHEAD([ TypeArguments() ] "this" "(") - [ typeArgs = TypeArguments() { int[] lineCol=(int[])typeArgs.remove(0); line=lineCol[0]; column=lineCol[1]; } ] - "this" { if (line == -1) {line=token.beginLine; column=token.beginColumn;} isThis = true; } - args = Arguments() ";" - | - [ - LOOKAHEAD( PrimaryExpressionWithoutSuperSuffix() "." ) - expr = PrimaryExpressionWithoutSuperSuffix() "." - { line=expr.getBeginLine(); column=expr.getBeginColumn(); } - ] - [ typeArgs = TypeArguments() {int[] lineCol=(int[])typeArgs.remove(0); if (line == -1) {line=lineCol[0]; column=lineCol[1];}} ] - "super" {if (line == -1) {line=token.beginLine; column=token.beginColumn;}} - args = Arguments() ";" - ) - { return new ExplicitConstructorInvocationStmt(line, column, token.endLine, token.endColumn,typeArgs, isThis, expr, args); } -} - -List Statements(): -{ - List ret = null; - Statement stmt; -} -{ - ( stmt = BlockStatement() { ret = add(ret, stmt); } )* - { return ret; } -} - -InitializerDeclaration InitializerDeclaration(): -{ - BlockStmt block; - int line = -1; - int column = 0; - boolean isStatic = false; -} -{ - [ "static" { isStatic = true; line=token.beginLine; column=token.beginColumn;} ] block = Block() {if(line==-1){line=block.getBeginLine(); column=block.getBeginColumn();}} - { return new InitializerDeclaration(line, column, token.endLine, token.endColumn,popJavadoc(), isStatic, block); } -} - - -/* - * Type, name and expression syntax follows. - */ - -Type Type(): -{ - Type ret; -} -{ - ( - LOOKAHEAD(2) ret = ReferenceType() - | - ret = PrimitiveType() - ) - { return ret; } -} - -ReferenceType ReferenceType(): -{ - Type type; - int arrayCount = 0; -} -{ - ( - type = PrimitiveType() ( LOOKAHEAD(2) "[" "]" { arrayCount++; } )+ - | - type = ClassOrInterfaceType() ( LOOKAHEAD(2) "[" "]" { arrayCount++; } )* - ) - { return new ReferenceType(type.getBeginLine(), type.getBeginColumn(), token.endLine, token.endColumn, type, arrayCount); } -} - -ClassOrInterfaceType ClassOrInterfaceType(): -{ - ClassOrInterfaceType ret; - String name; - List typeArgs = null; - int line; - int column; -} -{ - {line=token.beginLine; column=token.beginColumn;} { name = token.image; } - [ LOOKAHEAD(2) typeArgs = TypeArguments() {typeArgs.remove(0);} ] - { ret = new ClassOrInterfaceType(line, column, token.endLine, token.endColumn,null, name, typeArgs); } - ( - LOOKAHEAD(2) "." { name = token.image; } - [ LOOKAHEAD(2) typeArgs = TypeArguments() {typeArgs.remove(0);} ] { ret = new ClassOrInterfaceType(line, column, token.endLine, token.endColumn,ret, name, typeArgs); } - )* - { return ret; } -} - -List TypeArguments(): -{ - List ret = new LinkedList(); - Type type; -} -{ - "<" { ret.add(new int[]{token.beginLine, token.beginColumn}); } - type = TypeArgument() { ret.add(type); } ( "," type = TypeArgument() { ret.add(type); } )* - ">" - { return ret; } -} - -Type TypeArgument(): -{ - Type ret; -} -{ - ( - ret = ReferenceType() - | - ret = Wildcard() - ) - { return ret; } -} - -WildcardType Wildcard(): -{ - ReferenceType ext = null; - ReferenceType sup = null; - int line; - int column; -} -{ - "?" {line=token.beginLine; column=token.beginColumn;} - [ - "extends" ext = ReferenceType() - | - "super" sup = ReferenceType() - ] - { return new WildcardType(line, column, token.endLine, token.endColumn,ext, sup); } -} - -PrimitiveType PrimitiveType(): -{ - PrimitiveType ret; -} -{ -( - "boolean" { ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Boolean); } -| - "char" { ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Char); } -| - "byte" { ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Byte); } -| - "short" { ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Short); } -| - "int" { ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Int); } -| - "long" { ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Long); } -| - "float" { ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Float); } -| - "double" { ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Double); } -) -{ return ret; } -} - -Type ResultType(): -{ - Type ret; -} -{ - ( - "void" { ret = new VoidType(token.beginLine, token.beginColumn, token.endLine, token.endColumn); } - | - ret = Type() - ) - { return ret; } -} - -NameExpr Name(): -/* - * A lookahead of 2 is required below since "Name" can be followed - * by a ".*" when used in the context of an "ImportDeclaration". - */ -{ - NameExpr ret; -} -{ - { ret = new NameExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); } - ( LOOKAHEAD(2) "." { ret = new QualifiedNameExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, token.image); } )* - { return ret; } -} - -List NameList(): -{ - List ret = new LinkedList(); - NameExpr name; -} -{ - name = Name() { ret.add(name); } ( "," name = Name() { ret.add(name); } )* - - { return ret; } -} - - -/* - * Expression syntax follows. - */ - -Expression Expression(): -/* - * This expansion has been written this way instead of: - * Assignment() | ConditionalExpression() - * for performance reasons. - * However, it is a weakening of the grammar for it allows the LHS of - * assignments to be any conditional expression whereas it can only be - * a primary expression. Consider adding a semantic predicate to work - * around this. - */ -{ - Expression ret; - AssignExpr.Operator op; - Expression value; -} -{ - ret = ConditionalExpression() - [ - LOOKAHEAD(2) - op = AssignmentOperator() value = Expression() { ret = new AssignExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, value, op); } - ] - { return ret; } -} - -AssignExpr.Operator AssignmentOperator(): -{ - AssignExpr.Operator ret; -} -{ - ( - "=" { ret = AssignExpr.Operator.assign; } - | "*=" { ret = AssignExpr.Operator.star; } - | "/=" { ret = AssignExpr.Operator.slash; } - | "%=" { ret = AssignExpr.Operator.rem; } - | "+=" { ret = AssignExpr.Operator.plus; } - | "-=" { ret = AssignExpr.Operator.minus; } - | "<<=" { ret = AssignExpr.Operator.lShift; } - | ">>=" { ret = AssignExpr.Operator.rSignedShift; } - | ">>>=" { ret = AssignExpr.Operator.rUnsignedShift; } - | "&=" { ret = AssignExpr.Operator.and; } - | "^=" { ret = AssignExpr.Operator.xor; } - | "|=" { ret = AssignExpr.Operator.or; } - ) - { return ret; } -} - -Expression ConditionalExpression(): -{ - Expression ret; - Expression left; - Expression right; -} -{ - ret = ConditionalOrExpression() - [ "?" left = Expression() ":" right = ConditionalExpression() { ret = new ConditionalExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, left, right); } ] - { return ret; } -} - -Expression ConditionalOrExpression(): -{ - Expression ret; - Expression right; -} -{ - ret = ConditionalAndExpression() ( "||" right = ConditionalAndExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.or); } )* - { return ret; } -} - -Expression ConditionalAndExpression(): -{ - Expression ret; - Expression right; -} -{ - ret = InclusiveOrExpression() ( "&&" right = InclusiveOrExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.and); } )* - { return ret; } -} - -Expression InclusiveOrExpression(): -{ - Expression ret; - Expression right; -} -{ - ret = ExclusiveOrExpression() ( "|" right = ExclusiveOrExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.binOr); } )* - { return ret; } -} - -Expression ExclusiveOrExpression(): -{ - Expression ret; - Expression right; -} -{ - ret = AndExpression() ( "^" right = AndExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.xor); } )* - { return ret; } -} - -Expression AndExpression(): -{ - Expression ret; - Expression right; -} -{ - ret = EqualityExpression() ( "&" right = EqualityExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.binAnd); } )* - { return ret; } -} - -Expression EqualityExpression(): -{ - Expression ret; - Expression right; - BinaryExpr.Operator op; -} -{ - ret = InstanceOfExpression() - ( - ( "==" { op = BinaryExpr.Operator.equals; } | - "!=" { op = BinaryExpr.Operator.notEquals; } - ) right = InstanceOfExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); } - )* - { return ret; } -} - -Expression InstanceOfExpression(): -{ - Expression ret; - Type type; -} -{ - ret = RelationalExpression() [ "instanceof" type = Type() { ret = new InstanceOfExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, type); } ] - { return ret; } -} - -Expression RelationalExpression(): -{ - Expression ret; - Expression right; - BinaryExpr.Operator op; -} -{ - ret = ShiftExpression() - ( - ( "<" { op = BinaryExpr.Operator.less; } | - ">" { op = BinaryExpr.Operator.greater; } | - "<=" { op = BinaryExpr.Operator.lessEquals; } | - ">=" { op = BinaryExpr.Operator.greaterEquals; } - ) right = ShiftExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); } - )* - { return ret; } -} - -Expression ShiftExpression(): -{ - Expression ret; - Expression right; - BinaryExpr.Operator op; -} -{ - ret = AdditiveExpression() - ( - ( "<<" { op = BinaryExpr.Operator.lShift; } | - RSIGNEDSHIFT() { op = BinaryExpr.Operator.rSignedShift; } | - RUNSIGNEDSHIFT() { op = BinaryExpr.Operator.rUnsignedShift; } - ) right = AdditiveExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); } - )* - { return ret; } -} - -Expression AdditiveExpression(): -{ - Expression ret; - Expression right; - BinaryExpr.Operator op; -} -{ - ret = MultiplicativeExpression() - ( - ( "+" { op = BinaryExpr.Operator.plus; } | - "-" { op = BinaryExpr.Operator.minus; } - ) right = MultiplicativeExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); } - )* - { return ret; } -} - -Expression MultiplicativeExpression(): -{ - Expression ret; - Expression right; - BinaryExpr.Operator op; -} -{ - ret = UnaryExpression() - ( - ( "*" { op = BinaryExpr.Operator.times; } | - "/" { op = BinaryExpr.Operator.divide; } | - "%" { op = BinaryExpr.Operator.remainder; } - ) right = UnaryExpression() { ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); } - )* - { return ret; } -} - -Expression UnaryExpression(): -{ - Expression ret; - UnaryExpr.Operator op; - int line = 0; - int column = 0; -} -{ - ( - ret = PreIncrementExpression() - | - ret = PreDecrementExpression() - | - ( "+" { op = UnaryExpr.Operator.positive; line=token.beginLine; column=token.beginColumn;} | - "-" { op = UnaryExpr.Operator.negative; line=token.beginLine; column=token.beginColumn;} - ) ret = UnaryExpression() - { - if(op == UnaryExpr.Operator.negative) { - if (ret instanceof IntegerLiteralExpr && ((IntegerLiteralExpr)ret).isMinValue()) { - ret = new IntegerLiteralMinValueExpr(line, column, token.endLine, token.endColumn); - } else if (ret instanceof LongLiteralExpr && ((LongLiteralExpr)ret).isMinValue()) { - ret = new LongLiteralMinValueExpr(line, column, token.endLine, token.endColumn); - } else { - ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, op); - } - } else { - ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, op); - } - } - | - ret = UnaryExpressionNotPlusMinus() - ) - { return ret; } -} - -Expression PreIncrementExpression(): -{ - Expression ret; - int line; - int column; -} -{ - "++" {line=token.beginLine; column=token.beginColumn;} ret = UnaryExpression() { ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, UnaryExpr.Operator.preIncrement); } - { return ret; } -} - -Expression PreDecrementExpression(): -{ - Expression ret; - int line; - int column; -} -{ - "--" {line=token.beginLine; column=token.beginColumn;} ret = UnaryExpression() { ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, UnaryExpr.Operator.preDecrement); } - { return ret; } -} - -Expression UnaryExpressionNotPlusMinus(): -{ - Expression ret; - UnaryExpr.Operator op; - int line = 0; - int column = 0; -} -{ - ( - ( "~" { op = UnaryExpr.Operator.inverse; line=token.beginLine; column=token.beginColumn;} | - "!" { op = UnaryExpr.Operator.not; line=token.beginLine; column=token.beginColumn;} - ) ret = UnaryExpression() { ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, op); } - | - LOOKAHEAD( CastExpression() ) - ret = CastExpression() - | - ret = PostfixExpression() - ) - { return ret; } -} - -Expression PostfixExpression(): -{ - Expression ret; - UnaryExpr.Operator op; -} -{ - ret = PrimaryExpression() - [ - LOOKAHEAD(2) - ( "++" { op = UnaryExpr.Operator.posIncrement; } | - "--" { op = UnaryExpr.Operator.posDecrement; } - ) { ret = new UnaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, op); } - ] - { return ret; } -} - -Expression CastExpression(): -{ - Expression ret; - Type type; - int line; - int column; -} -{ - "(" {line=token.beginLine; column=token.beginColumn;} - ( - LOOKAHEAD(2) - type = PrimitiveType() ")" ret = UnaryExpression() { ret = new CastExpr(line, column, token.endLine, token.endColumn,type, ret); } - | - type = ReferenceType() ")" ret = UnaryExpressionNotPlusMinus() { ret = new CastExpr(line, column, token.endLine, token.endColumn,type, ret); } - ) - { return ret; } -} - -Expression PrimaryExpression(): -{ - Expression ret; - Expression inner; -} -{ - ret = PrimaryPrefix() ( LOOKAHEAD(2) ret = PrimarySuffix(ret) )* - { return ret; } -} - -Expression PrimaryExpressionWithoutSuperSuffix(): -{ - Expression ret; - Expression inner; -} -{ - ret = PrimaryPrefix() ( LOOKAHEAD( PrimarySuffixWithoutSuper(null) ) ret = PrimarySuffixWithoutSuper(ret) )* - { return ret; } -} - -Expression PrimaryPrefix(): -{ - Expression ret; - String name; - List typeArgs = null; - List args = null; - boolean hasArgs = false; - Type type; - int line; - int column; -} -{ - ( - ret = Literal() - | - "this" { ret = new ThisExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, null); } - | - "super" { ret = new SuperExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, null); } - "." - [ typeArgs = TypeArguments() {typeArgs.remove(0);} ] - { name = token.image; } - [ args = Arguments() {hasArgs=true;} ] - { - ret = hasArgs - ? new MethodCallExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, typeArgs, name, args) - : new FieldAccessExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, null, name); - } - | - "(" {line=token.beginLine; column=token.beginColumn;} ret = Expression() ")" { ret = new EnclosedExpr(line, column, token.endLine, token.endColumn,ret); } - | - ret = AllocationExpression(null) - | - LOOKAHEAD( ResultType() "." "class" ) - type = ResultType() "." "class" { ret = new ClassExpr(type.getBeginLine(), type.getBeginColumn(), token.endLine, token.endColumn, type); } - | - { name = token.image; line=token.beginLine; column=token.beginColumn; } - [ args = Arguments() {hasArgs=true;} ] - { - ret = hasArgs - ? new MethodCallExpr(line, column, token.endLine, token.endColumn, null, null, name, args) - : new NameExpr(line, column, token.endLine, token.endColumn, name); - } - ) - { return ret; } -} - -Expression PrimarySuffix(Expression scope): -{ - Expression ret; -} -{ - ( - LOOKAHEAD(2) - ret = PrimarySuffixWithoutSuper(scope) - | - "." "super" { ret = new SuperExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope); } - ) - { return ret; } -} - -Expression PrimarySuffixWithoutSuper(Expression scope): -{ - Expression ret; - List typeArgs = null; - List args = null; - boolean hasArgs = false; - String name; -} -{ - ( - "." - ( - // TODO: está deixando passar "this.this", verificar na JLS se é possível - "this" { ret = new ThisExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope); } - | - ret = AllocationExpression(scope) - | - LOOKAHEAD( [ TypeArguments() ] ) - [ typeArgs = TypeArguments() {typeArgs.remove(0);} ] - { name = token.image; } - [ args = Arguments() {hasArgs=true;} ] - { - ret = hasArgs - ? new MethodCallExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope, typeArgs, name, args) - : new FieldAccessExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope, typeArgs, name); - } - ) - | - "["ret = Expression() "]" { ret = new ArrayAccessExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope, ret); } - ) - { return ret; } -} - -Expression Literal(): -{ - Expression ret; -} -{ - ( - { - ret = new IntegerLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); - } - | - { - ret = new LongLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); - } - | - { - ret = new DoubleLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); - } - | - { - ret = new CharLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image.substring(1, token.image.length()-1)); - } - | - { - ret = new StringLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image.substring(1, token.image.length()-1)); - } - | - ret = BooleanLiteral() - | - ret = NullLiteral() - ) - { return ret; } -} - -Expression BooleanLiteral(): -{ - Expression ret; -} -{ - ( - "true" { ret = new BooleanLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, true); } - | - "false" { ret = new BooleanLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, false); } - ) - { return ret; } -} - -Expression NullLiteral(): -{} -{ - "null" - { return new NullLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn); } -} - -List Arguments(): -{ - List ret = null; -} -{ - "(" [ ret = ArgumentList() ] ")" - { return ret; } -} - -List ArgumentList(): -{ - List ret = new LinkedList(); - Expression expr; -} -{ - expr = Expression() { ret.add(expr); } ( "," expr = Expression() { ret.add(expr); } )* - { return ret; } -} - -Expression AllocationExpression(Expression scope): -{ - Expression ret; - Type type; - Object[] arr = null; - List typeArgs = null; - List anonymousBody = null; - List args; - int line; - int column; -} -{ - "new" { if(scope==null) {line=token.beginLine; column=token.beginColumn;} else {line=scope.getBeginLine(); column=scope.getBeginColumn();} } - ( - type = PrimitiveType() - arr = ArrayDimsAndInits() - { - if (arr[0] instanceof Integer) { - ret = new ArrayCreationExpr(line, column, token.endLine, token.endColumn, type, ((Integer)arr[0]).intValue(), (ArrayInitializerExpr)arr[1]); - } else { - ret = new ArrayCreationExpr(line, column, token.endLine, token.endColumn, type, (List)arr[0], ((Integer)arr[1]).intValue()); - } - } - | - LOOKAHEAD(ClassOrInterfaceType() ArrayDimsAndInits()) - type = ClassOrInterfaceType() - arr = ArrayDimsAndInits() - { - if (arr[0] instanceof Integer) { - ret = new ArrayCreationExpr(line, column, token.endLine, token.endColumn, type, ((Integer)arr[0]).intValue(), (ArrayInitializerExpr)arr[1]); - } else { - ret = new ArrayCreationExpr(line, column, token.endLine, token.endColumn, type, (List)arr[0], ((Integer)arr[1]).intValue()); - } - } - | - [ typeArgs = TypeArguments() {typeArgs.remove(0);} ] - type = ClassOrInterfaceType() - args = Arguments() [ LOOKAHEAD(2) anonymousBody = ClassOrInterfaceBody(false) ] - { ret = new ObjectCreationExpr(line, column, token.endLine, token.endColumn, scope, (ClassOrInterfaceType) type, typeArgs, args, anonymousBody); } - ) - { return ret; } -} - -/* - * The third LOOKAHEAD specification below is to parse to PrimarySuffix - * if there is an expression between the "[...]". - */ -Object[] ArrayDimsAndInits(): -{ - Object[] ret = new Object[2]; - Expression expr; - List inits = null; - int i = 0; -} -{ - ( - LOOKAHEAD(2) - ( LOOKAHEAD(2) "[" expr = Expression() { inits = add(inits, expr); } "]" )+ ( LOOKAHEAD(2) "[" "]" { i++; } )* { ret[0] = inits; ret[1] = new Integer(i); } - | - ( "[" "]" { i++; } )+ expr = ArrayInitializer() { ret[0] = new Integer(i); ret[1] = expr; } - ) - { return ret; } -} - - -/* - * Statement syntax follows. - */ - -Statement Statement(): -{ - Statement ret; -} -{ - ( - LOOKAHEAD(2) - ret = LabeledStatement() - | - ret = AssertStatement() - | - ret = Block() - | - ret = EmptyStatement() - | - ret = StatementExpression() - | - ret = SwitchStatement() - | - ret = IfStatement() - | - ret = WhileStatement() - | - ret = DoStatement() - | - ret = ForStatement() - | - ret = BreakStatement() - | - ret = ContinueStatement() - | - ret = ReturnStatement() - | - ret = ThrowStatement() - | - ret = SynchronizedStatement() - | - ret = TryStatement() - ) - { return ret; } -} - -AssertStmt AssertStatement(): -{ - Expression check; - Expression msg = null; - int line; - int column; -} -{ - "assert" {line=token.beginLine; column=token.beginColumn;} check = Expression() [ ":" msg = Expression() ] ";" - { return new AssertStmt(line, column, token.endLine, token.endColumn,check, msg); } -} - -LabeledStmt LabeledStatement(): -{ - String label; - Statement stmt; - int line; - int column; -} -{ - {line=token.beginLine; column=token.beginColumn;} { label = token.image; } ":" stmt = Statement() - { return new LabeledStmt(line, column, token.endLine, token.endColumn,label, stmt); } -} - -BlockStmt Block(): -{ - List stmts; - int beginLine; - int beginColumn; -} -{ - "{" {beginLine=token.beginLine; beginColumn=token.beginColumn;} - stmts = Statements() - "}" - { return new BlockStmt(beginLine, beginColumn, token.endLine, token.endColumn, stmts); } -} - -/* - * Classes inside block stametents can only be abstract or final. The semantic must check it. - */ -Statement BlockStatement(): -{ - Statement ret; - Expression expr; - ClassOrInterfaceDeclaration typeDecl; - Modifier modifier; -} -{ - ( - LOOKAHEAD( Modifiers() ("class" | "interface") ) - { pushJavadoc(); } - modifier = Modifiers() - typeDecl = ClassOrInterfaceDeclaration(modifier) { ret = new TypeDeclarationStmt(typeDecl.getBeginLine(), typeDecl.getBeginColumn(), token.endLine, token.endColumn, typeDecl); } - | - LOOKAHEAD(VariableDeclarationExpression() ) - expr = VariableDeclarationExpression() ";" - { ret = new ExpressionStmt(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr); } - | - ret = Statement() - ) - { return ret; } -} - -VariableDeclarationExpr VariableDeclarationExpression(): -{ - Modifier modifier; - Type type; - List vars = new LinkedList(); - VariableDeclarator var; -} -{ - modifier = Modifiers() type = Type() var = VariableDeclarator() { vars.add(var); } ( "," var = VariableDeclarator() { vars.add(var); } )* - { - int line = modifier.beginLine; - int column = modifier.beginColumn; - if(line==-1) {line=type.getBeginLine(); column=type.getBeginColumn(); } - return new VariableDeclarationExpr(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, type, vars); - } -} - -EmptyStmt EmptyStatement(): -{} -{ - ";" - { return new EmptyStmt(token.beginLine, token.beginColumn, token.endLine, token.endColumn); } -} - -ExpressionStmt StatementExpression(): -/* - * The last expansion of this production accepts more than the legal - * Java expansions for StatementExpression. This expansion does not - * use PostfixExpression for performance reasons. - */ -{ - Expression expr; - AssignExpr.Operator op; - Expression value; -} -{ - ( - expr = PreIncrementExpression() - | - expr = PreDecrementExpression() - | - expr = PrimaryExpression() - [ - "++" { expr = new UnaryExpr(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr, UnaryExpr.Operator.posIncrement); } - | - "--" { expr = new UnaryExpr(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr, UnaryExpr.Operator.posDecrement); } - | - op = AssignmentOperator() value = Expression() { expr = new AssignExpr(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr, value, op); } - ] - ) - ";" - { return new ExpressionStmt(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr); } -} - -SwitchStmt SwitchStatement(): -{ - Expression selector; - SwitchEntryStmt entry; - List entries = null; - int line; - int column; -} -{ - "switch" {line=token.beginLine; column=token.beginColumn;} "(" selector = Expression() ")" "{" - ( entry = SwitchEntry() { entries = add(entries, entry); } )* - "}" - - { return new SwitchStmt(line, column, token.endLine, token.endColumn,selector, entries); } -} - -SwitchEntryStmt SwitchEntry(): -{ - Expression label = null; - List stmts; - int line; - int column; -} -{ - ( - "case" {line=token.beginLine; column=token.beginColumn;} label = Expression() - | - "default" {line=token.beginLine; column=token.beginColumn;} - ) - ":" stmts = Statements() - - { return new SwitchEntryStmt(line, column, token.endLine, token.endColumn,label, stmts); } -} - -IfStmt IfStatement(): -/* - * The disambiguating algorithm of JavaCC automatically binds dangling - * else's to the innermost if statement. The LOOKAHEAD specification - * is to tell JavaCC that we know what we are doing. - */ -{ - Expression condition; - Statement thenStmt; - Statement elseStmt = null; - int line; - int column; -} -{ - "if" {line=token.beginLine; column=token.beginColumn;} "(" condition = Expression() ")" thenStmt = Statement() [ LOOKAHEAD(1) "else" elseStmt = Statement() ] - { return new IfStmt(line, column, token.endLine, token.endColumn,condition, thenStmt, elseStmt); } -} - -WhileStmt WhileStatement(): -{ - Expression condition; - Statement body; - int line; - int column; -} -{ - "while" {line=token.beginLine; column=token.beginColumn;} "(" condition = Expression() ")" body = Statement() - { return new WhileStmt(line, column, token.endLine, token.endColumn,condition, body); } -} - -DoStmt DoStatement(): -{ - Expression condition; - Statement body; - int line; - int column; -} -{ - "do" {line=token.beginLine; column=token.beginColumn;} body = Statement() "while" "(" condition = Expression() ")" ";" - { return new DoStmt(line, column, token.endLine, token.endColumn,body, condition); } -} - -Statement ForStatement(): -{ - String id = null; - VariableDeclarationExpr varExpr = null; - Expression expr = null; - List init = null; - List update = null; - Statement body; - int line; - int column; -} -{ - "for" {line=token.beginLine; column=token.beginColumn;} "(" - - ( - LOOKAHEAD(VariableDeclarationExpression() ":") - varExpr = VariableDeclarationExpression() ":" expr = Expression() - | - [ init = ForInit() ] ";" [ expr = Expression() ] ";" [ update = ForUpdate() ] - ) - - ")" body = Statement() - - { - if (varExpr != null) { - return new ForeachStmt(line, column, token.endLine, token.endColumn,varExpr, expr, body); - } - return new ForStmt(line, column, token.endLine, token.endColumn,init, expr, update, body); - } -} - -List ForInit(): -{ - List ret; - Expression expr; -} -{ - ( - LOOKAHEAD( Modifiers() Type() ) - expr = VariableDeclarationExpression() { ret = new LinkedList(); ret.add(expr); } - | - ret = ExpressionList() - ) - { return ret; } -} - -List ExpressionList(): -{ - List ret = new LinkedList(); - Expression expr; -} -{ - expr = Expression() { ret.add(expr); } ( "," expr = Expression() { ret.add(expr); } )* - - { return ret; } -} - -List ForUpdate(): -{ - List ret; -} -{ - ret = ExpressionList() - - { return ret; } -} - -BreakStmt BreakStatement(): -{ - String id = null; - int line; - int column; -} -{ - "break" {line=token.beginLine; column=token.beginColumn;} [ { id = token.image; } ] ";" - { return new BreakStmt(line, column, token.endLine, token.endColumn,id); } -} - -ContinueStmt ContinueStatement(): -{ - String id = null; - int line; - int column; -} -{ - "continue" {line=token.beginLine; column=token.beginColumn;} [ { id = token.image; } ] ";" - { return new ContinueStmt(line, column, token.endLine, token.endColumn,id); } -} - -ReturnStmt ReturnStatement(): -{ - Expression expr = null; - int line; - int column; -} -{ - "return" {line=token.beginLine; column=token.beginColumn;} [ expr = Expression() ] ";" - { return new ReturnStmt(line, column, token.endLine, token.endColumn,expr); } -} - -ThrowStmt ThrowStatement(): -{ - Expression expr; - int line; - int column; -} -{ - "throw" {line=token.beginLine; column=token.beginColumn;} expr = Expression() ";" - { return new ThrowStmt(line, column, token.endLine, token.endColumn,expr); } -} - -SynchronizedStmt SynchronizedStatement(): -{ - Expression expr; - BlockStmt block; - int line; - int column; -} -{ - "synchronized" {line=token.beginLine; column=token.beginColumn;} "(" expr = Expression() ")" block = Block() - { return new SynchronizedStmt(line, column, token.endLine, token.endColumn,expr, block); } -} - -TryStmt TryStatement(): -/* - * Semantic check required here to make sure that at least one - * finally/catch is present. - */ -{ - BlockStmt tryBlock; - BlockStmt finallyBlock = null; - List catchs = null; - Parameter except; - BlockStmt catchBlock; - int line; - int column; - int cLine; - int cColumn; -} -{ - "try" {line=token.beginLine; column=token.beginColumn;} tryBlock = Block() - ( - ( - "catch" {cLine=token.beginLine; cColumn=token.beginColumn;} - "(" except = FormalParameter() ")" catchBlock = Block() - { catchs = add(catchs, new CatchClause(cLine, cColumn, token.endLine, token.endColumn, except, catchBlock)); } - )+ - [ "finally" finallyBlock = Block() ] - | - "finally" finallyBlock = Block() - ) - { return new TryStmt(line, column, token.endLine, token.endColumn,tryBlock, catchs, finallyBlock); } -} - - - -/* We use productions to match >>>, >> and > so that we can keep the - * type declaration syntax with generics clean - */ - -void RUNSIGNEDSHIFT(): -{} -{ - ( LOOKAHEAD({ getToken(1).kind == GT && - ((GTToken)getToken(1)).realKind == RUNSIGNEDSHIFT} ) - ">" ">" ">" - ) -} - -void RSIGNEDSHIFT(): -{} -{ - ( LOOKAHEAD({ getToken(1).kind == GT && - ((GTToken)getToken(1)).realKind == RSIGNEDSHIFT} ) - ">" ">" - ) -} - -/* Annotation syntax follows. */ - -AnnotationExpr Annotation(): -{ - AnnotationExpr ret; -} -{ - ( - LOOKAHEAD( "@" Name() "(" ( "=" | ")" )) - ret = NormalAnnotation() - | - LOOKAHEAD( "@" Name() "(" ) - ret = SingleMemberAnnotation() - | - ret = MarkerAnnotation() - ) - { return ret; } -} - -NormalAnnotationExpr NormalAnnotation(): -{ - NameExpr name; - List pairs = null; - int line; - int column; -} -{ - "@" {line=token.beginLine; column=token.beginColumn;} name = Name() "(" [ pairs = MemberValuePairs() ] ")" - { return new NormalAnnotationExpr(line, column, token.endLine, token.endColumn,name, pairs); } -} - -MarkerAnnotationExpr MarkerAnnotation(): -{ - NameExpr name; - int line; - int column; -} -{ - "@" {line=token.beginLine; column=token.beginColumn;} name = Name() - { return new MarkerAnnotationExpr(line, column, token.endLine, token.endColumn,name); } -} - -SingleMemberAnnotationExpr SingleMemberAnnotation(): -{ - NameExpr name; - Expression memberVal; - int line; - int column; -} -{ - "@" {line=token.beginLine; column=token.beginColumn;} name = Name() "(" memberVal = MemberValue() ")" - { return new SingleMemberAnnotationExpr(line, column, token.endLine, token.endColumn,name, memberVal); } -} - -List MemberValuePairs(): -{ - List ret = new LinkedList(); - MemberValuePair pair; -} -{ - pair = MemberValuePair() { ret.add(pair); } ( "," pair = MemberValuePair() { ret.add(pair); } )* - { return ret; } -} - -MemberValuePair MemberValuePair(): -{ - String name; - Expression value; - int line; - int column; -} -{ - { name = token.image; line=token.beginLine; column=token.beginColumn;} "=" value = MemberValue() - { return new MemberValuePair(line, column, token.endLine, token.endColumn,name, value); } -} - -Expression MemberValue(): -{ - Expression ret; -} -{ - ( - ret = Annotation() - | - ret = MemberValueArrayInitializer() - | - ret = ConditionalExpression() - ) - { return ret; } -} - -Expression MemberValueArrayInitializer(): -{ - List ret = new LinkedList(); - Expression member; - int line; - int column; -} -{ - "{" {line=token.beginLine; column=token.beginColumn;} - ( member = MemberValue() { ret.add(member); } ( LOOKAHEAD(2) "," member = MemberValue() { ret.add(member); } )* )? [ "," ] - "}" - { return new ArrayInitializerExpr(line, column, token.endLine, token.endColumn,ret); } -} - - -/* Annotation Types. */ - -AnnotationDeclaration AnnotationTypeDeclaration(Modifier modifier): -{ - String name; - List members; - int line = modifier.beginLine; - int column = modifier.beginColumn; -} -{ - "@" { if (line == -1) {line=token.beginLine; column=token.beginColumn;} } - "interface" { name = token.image; } members = AnnotationTypeBody() - - { return new AnnotationDeclaration(line, column, token.endLine, token.endColumn,popJavadoc(), modifier.modifiers, modifier.annotations, name, members); } -} - -List AnnotationTypeBody(): -{ - List ret = null; - BodyDeclaration member; -} -{ - "{" ( member = AnnotationBodyDeclaration() { ret = add(ret, member); } )* "}" - - { return ret; } -} - -BodyDeclaration AnnotationBodyDeclaration(): -{ - Modifier modifier; - BodyDeclaration ret; -} -{ - { pushJavadoc(); } - ( - ";" { ret = new EmptyTypeDeclaration(token.beginLine, token.beginColumn, token.endLine, token.endColumn, popJavadoc()); } - | - modifier = Modifiers() - ( - LOOKAHEAD(Type() "(") - ret = AnnotationTypeMemberDeclaration(modifier) - | - ret = ClassOrInterfaceDeclaration(modifier) - | - ret = EnumDeclaration(modifier) - | - ret = AnnotationTypeDeclaration(modifier) - | - ret = FieldDeclaration(modifier) - ) - ) - { return ret; } -} - -AnnotationMemberDeclaration AnnotationTypeMemberDeclaration(Modifier modifier): -{ - Type type; - String name; - Expression defaultVal = null; -} -{ - type = Type() { name = token.image; } "(" ")" [ defaultVal = DefaultValue() ] ";" - - { - int line = modifier.beginLine; - int column = modifier.beginColumn; - { if (line == -1) {line=type.getBeginLine(); column=type.getBeginColumn();} } - return new AnnotationMemberDeclaration(line, column, token.endLine, token.endColumn, popJavadoc(), modifier.modifiers, modifier.annotations, type, name, defaultVal); - } -} - -Expression DefaultValue(): -{ - Expression ret; -} -{ - "default" ret = MemberValue() - { return ret; } -} diff --git a/techniques/BRTracer/bin/org/brtracer/BRTracer.class b/techniques/BRTracer/bin/org/brtracer/BRTracer.class deleted file mode 100644 index 4e83a08..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/BRTracer.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/Bug.class b/techniques/BRTracer/bin/org/brtracer/Bug.class deleted file mode 100644 index e3fc783..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/Bug.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/Core.class b/techniques/BRTracer/bin/org/brtracer/Core.class deleted file mode 100644 index 7da4eca..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/Core.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/XMLCreator.class b/techniques/BRTracer/bin/org/brtracer/XMLCreator.class deleted file mode 100644 index 4291384..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/XMLCreator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/bug/Bug.class b/techniques/BRTracer/bin/org/brtracer/bug/Bug.class deleted file mode 100644 index f854f29..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/bug/Bug.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/bug/BugCorpusCreator.class b/techniques/BRTracer/bin/org/brtracer/bug/BugCorpusCreator.class deleted file mode 100644 index 592d183..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/bug/BugCorpusCreator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/bug/BugSimilarity.class b/techniques/BRTracer/bin/org/brtracer/bug/BugSimilarity.class deleted file mode 100644 index 407a970..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/bug/BugSimilarity.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/bug/BugVector$1.class b/techniques/BRTracer/bin/org/brtracer/bug/BugVector$1.class deleted file mode 100644 index 1ba9ccb..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/bug/BugVector$1.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/bug/BugVector.class b/techniques/BRTracer/bin/org/brtracer/bug/BugVector.class deleted file mode 100644 index 8c4c5ce..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/bug/BugVector.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/bug/SimilarityDistribution.class b/techniques/BRTracer/bin/org/brtracer/bug/SimilarityDistribution.class deleted file mode 100644 index aba3e3b..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/bug/SimilarityDistribution.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/evaluation/Evaluation.class b/techniques/BRTracer/bin/org/brtracer/evaluation/Evaluation.class deleted file mode 100644 index a2a93da..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/evaluation/Evaluation.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/evaluation/MAP.class b/techniques/BRTracer/bin/org/brtracer/evaluation/MAP.class deleted file mode 100644 index 05bb622..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/evaluation/MAP.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/evaluation/Rank.class b/techniques/BRTracer/bin/org/brtracer/evaluation/Rank.class deleted file mode 100644 index dbed0f0..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/evaluation/Rank.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/property/Property.class b/techniques/BRTracer/bin/org/brtracer/property/Property.class deleted file mode 100644 index 5415c66..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/property/Property.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/CodeCorpusCreator.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/CodeCorpusCreator.class deleted file mode 100644 index db9e824..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/CodeCorpusCreator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/CodeVectorCreator.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/CodeVectorCreator.class deleted file mode 100644 index eb8035e..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/CodeVectorCreator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/Indexer.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/Indexer.class deleted file mode 100644 index a685e58..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/Indexer.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/Indexer_OriginClass.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/Indexer_OriginClass.class deleted file mode 100644 index 2e2c12f..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/Indexer_OriginClass.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/LenScore.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/LenScore.class deleted file mode 100644 index d7ff65d..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/LenScore.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/LenScore_OriginClass.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/LenScore_OriginClass.class deleted file mode 100644 index 3f8d444..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/LenScore_OriginClass.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/LineofCode.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/LineofCode.class deleted file mode 100644 index 2392f43..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/LineofCode.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/Similarity.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/Similarity.class deleted file mode 100644 index 47c93ca..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/Similarity.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/ASTCreator.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/ASTCreator.class deleted file mode 100644 index bf5422f..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/ASTCreator.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/Corpus.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/Corpus.class deleted file mode 100644 index b4a6314..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/Corpus.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileDetector.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileDetector.class deleted file mode 100644 index 0abdae0..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileDetector.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$1.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$1.class deleted file mode 100644 index cac22a0..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$1.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$2.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$2.class deleted file mode 100644 index 62d5770..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$2.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$3.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$3.class deleted file mode 100644 index 179f139..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$3.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$4.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$4.class deleted file mode 100644 index 01de264..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser$4.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser.class b/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser.class deleted file mode 100644 index 86a58a4..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/sourcecode/ast/FileParser.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/utils/PorterStemmer.class b/techniques/BRTracer/bin/org/brtracer/utils/PorterStemmer.class deleted file mode 100644 index 73b7674..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/utils/PorterStemmer.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/utils/Splitter.class b/techniques/BRTracer/bin/org/brtracer/utils/Splitter.class deleted file mode 100644 index 8228ee5..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/utils/Splitter.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/utils/Stem.class b/techniques/BRTracer/bin/org/brtracer/utils/Stem.class deleted file mode 100644 index 8af5e19..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/utils/Stem.class and /dev/null differ diff --git a/techniques/BRTracer/bin/org/brtracer/utils/Stopword.class b/techniques/BRTracer/bin/org/brtracer/utils/Stopword.class deleted file mode 100644 index ae5d101..0000000 Binary files a/techniques/BRTracer/bin/org/brtracer/utils/Stopword.class and /dev/null differ diff --git a/techniques/BRTracer/libs/args4j-2.0.6.jar b/techniques/BRTracer/libs/args4j-2.0.6.jar deleted file mode 100644 index fe8aa60..0000000 Binary files a/techniques/BRTracer/libs/args4j-2.0.6.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/contenttype-3.2.0-v20060603.jar b/techniques/BRTracer/libs/contenttype-3.2.0-v20060603.jar deleted file mode 100644 index 816e3fc..0000000 Binary files a/techniques/BRTracer/libs/contenttype-3.2.0-v20060603.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/dom4j-1.6.1.jar b/techniques/BRTracer/libs/dom4j-1.6.1.jar deleted file mode 100644 index c8c4dbb..0000000 Binary files a/techniques/BRTracer/libs/dom4j-1.6.1.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/lucene-core-2.9.4.jar b/techniques/BRTracer/libs/lucene-core-2.9.4.jar deleted file mode 100644 index 898d400..0000000 Binary files a/techniques/BRTracer/libs/lucene-core-2.9.4.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/mysql-connector-java-5.1.13-bin.jar b/techniques/BRTracer/libs/mysql-connector-java-5.1.13-bin.jar deleted file mode 100644 index ef5d71e..0000000 Binary files a/techniques/BRTracer/libs/mysql-connector-java-5.1.13-bin.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar b/techniques/BRTracer/libs/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar deleted file mode 100644 index cfce073..0000000 Binary files a/techniques/BRTracer/libs/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar b/techniques/BRTracer/libs/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar deleted file mode 100644 index 89131bb..0000000 Binary files a/techniques/BRTracer/libs/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/org.eclipse.core.runtime_3.4.0.v20080512.jar b/techniques/BRTracer/libs/org.eclipse.core.runtime_3.4.0.v20080512.jar deleted file mode 100644 index 49bbc18..0000000 Binary files a/techniques/BRTracer/libs/org.eclipse.core.runtime_3.4.0.v20080512.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar b/techniques/BRTracer/libs/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar deleted file mode 100644 index ecac7a8..0000000 Binary files a/techniques/BRTracer/libs/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar b/techniques/BRTracer/libs/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar deleted file mode 100644 index 1cd6ea2..0000000 Binary files a/techniques/BRTracer/libs/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/org.eclipse.jface_3.4.1.M20080827-2000.jar b/techniques/BRTracer/libs/org.eclipse.jface_3.4.1.M20080827-2000.jar deleted file mode 100644 index ad1c58f..0000000 Binary files a/techniques/BRTracer/libs/org.eclipse.jface_3.4.1.M20080827-2000.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar b/techniques/BRTracer/libs/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar deleted file mode 100644 index 673f3f5..0000000 Binary files a/techniques/BRTracer/libs/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/org.eclipse.text_3.4.0.v20080605-1800.jar b/techniques/BRTracer/libs/org.eclipse.text_3.4.0.v20080605-1800.jar deleted file mode 100644 index 5eaefd0..0000000 Binary files a/techniques/BRTracer/libs/org.eclipse.text_3.4.0.v20080605-1800.jar and /dev/null differ diff --git a/techniques/BRTracer/libs/preferences-3.2.100-v20070522.jar b/techniques/BRTracer/libs/preferences-3.2.100-v20070522.jar deleted file mode 100644 index 8ca9b2f..0000000 Binary files a/techniques/BRTracer/libs/preferences-3.2.100-v20070522.jar and /dev/null differ diff --git a/techniques/BRTracer/pom.xml b/techniques/BRTracer/pom.xml new file mode 100644 index 0000000..599a954 --- /dev/null +++ b/techniques/BRTracer/pom.xml @@ -0,0 +1,91 @@ + + 4.0.0 + BRTracer + BRTracer + 0.0.1-SNAPSHOT + + src + + + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.apache.maven.plugins + maven-dependency-plugin + + + prepare-package + + unpack-dependencies + + + ${project.build.directory}/classes + wvtool + + + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.1.1 + + BRTracer + false + + jar-with-dependencies + + + + org.brtracer.BRTracer + + + + + + make-assembly + package + + single + + + + + + + + + openmind + OpenMind + http://repository.openmindonline.it/ + + + + + org.dom4j + dom4j + 2.1.1 + + + edu.udo.cs + wvtool + 1.0.0 + system + ${project.basedir}/libs/wvtool.jar + + + org.eclipse.jdt + org.eclipse.jdt.core + 3.4.2-20081006 + + + org.eclipse.core + org.eclipse.core.runtime + 3.4.0-20081006 + + + diff --git a/techniques/BugLocator/.classpath b/techniques/BugLocator/.classpath deleted file mode 100644 index e87665d..0000000 --- a/techniques/BugLocator/.classpath +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/techniques/BugLocator/.project b/techniques/BugLocator/.project deleted file mode 100644 index 522b38c..0000000 --- a/techniques/BugLocator/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - BugLocator - - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jdt.core.javanature - - diff --git a/techniques/BugLocator/bin/org/buglocator/Bug.class b/techniques/BugLocator/bin/org/buglocator/Bug.class deleted file mode 100644 index 4f2a8b6..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/Bug.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/BugLocator.class b/techniques/BugLocator/bin/org/buglocator/BugLocator.class deleted file mode 100644 index 1ba9ed6..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/BugLocator.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/Core.class b/techniques/BugLocator/bin/org/buglocator/Core.class deleted file mode 100644 index a213d1a..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/Core.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/XMLCreator.class b/techniques/BugLocator/bin/org/buglocator/XMLCreator.class deleted file mode 100644 index dead8ec..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/XMLCreator.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/bug/Bug.class b/techniques/BugLocator/bin/org/buglocator/bug/Bug.class deleted file mode 100644 index b25cbd4..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/bug/Bug.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/bug/BugCorpusCreator.class b/techniques/BugLocator/bin/org/buglocator/bug/BugCorpusCreator.class deleted file mode 100644 index 40e8c97..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/bug/BugCorpusCreator.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/bug/BugSimilarity.class b/techniques/BugLocator/bin/org/buglocator/bug/BugSimilarity.class deleted file mode 100644 index b5f6a50..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/bug/BugSimilarity.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/bug/BugVector$1.class b/techniques/BugLocator/bin/org/buglocator/bug/BugVector$1.class deleted file mode 100644 index dca563b..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/bug/BugVector$1.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/bug/BugVector.class b/techniques/BugLocator/bin/org/buglocator/bug/BugVector.class deleted file mode 100644 index f1e7f74..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/bug/BugVector.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/bug/SimilarityDistribution.class b/techniques/BugLocator/bin/org/buglocator/bug/SimilarityDistribution.class deleted file mode 100644 index 5af9ed2..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/bug/SimilarityDistribution.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/evaluation/Evaluation.class b/techniques/BugLocator/bin/org/buglocator/evaluation/Evaluation.class deleted file mode 100644 index 76c506b..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/evaluation/Evaluation.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/evaluation/Rank.class b/techniques/BugLocator/bin/org/buglocator/evaluation/Rank.class deleted file mode 100644 index 4c32f54..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/evaluation/Rank.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/property/Property.class b/techniques/BugLocator/bin/org/buglocator/property/Property.class deleted file mode 100644 index ad8686f..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/property/Property.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/CodeCorpusCreator.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/CodeCorpusCreator.class deleted file mode 100644 index 8aa1586..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/CodeCorpusCreator.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/CodeVectorCreator.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/CodeVectorCreator.class deleted file mode 100644 index 207a4d2..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/CodeVectorCreator.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/Indexer.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/Indexer.class deleted file mode 100644 index 82d3b3b..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/Indexer.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/LenScore.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/LenScore.class deleted file mode 100644 index fcc5eb2..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/LenScore.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/Similarity.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/Similarity.class deleted file mode 100644 index a67c51e..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/Similarity.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/ASTCreator.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/ASTCreator.class deleted file mode 100644 index d6daa48..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/ASTCreator.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/Corpus.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/Corpus.class deleted file mode 100644 index 5fb61a6..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/Corpus.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileDetector.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileDetector.class deleted file mode 100644 index d07c579..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileDetector.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$1.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$1.class deleted file mode 100644 index ad2fcd5..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$1.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$2.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$2.class deleted file mode 100644 index 41fc65c..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$2.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$3.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$3.class deleted file mode 100644 index 9380175..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser$3.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser.class b/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser.class deleted file mode 100644 index 93e97bd..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/sourcecode/ast/FileParser.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/utils/PorterStemmer.class b/techniques/BugLocator/bin/org/buglocator/utils/PorterStemmer.class deleted file mode 100644 index 3cbfef6..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/utils/PorterStemmer.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/utils/Splitter.class b/techniques/BugLocator/bin/org/buglocator/utils/Splitter.class deleted file mode 100644 index 9cb6487..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/utils/Splitter.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/utils/Stem.class b/techniques/BugLocator/bin/org/buglocator/utils/Stem.class deleted file mode 100644 index 21a25d7..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/utils/Stem.class and /dev/null differ diff --git a/techniques/BugLocator/bin/org/buglocator/utils/Stopword.class b/techniques/BugLocator/bin/org/buglocator/utils/Stopword.class deleted file mode 100644 index e2c37d8..0000000 Binary files a/techniques/BugLocator/bin/org/buglocator/utils/Stopword.class and /dev/null differ diff --git a/techniques/BugLocator/libs/args4j-2.0.6.jar b/techniques/BugLocator/libs/args4j-2.0.6.jar deleted file mode 100644 index fe8aa60..0000000 Binary files a/techniques/BugLocator/libs/args4j-2.0.6.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/contenttype-3.2.0-v20060603.jar b/techniques/BugLocator/libs/contenttype-3.2.0-v20060603.jar deleted file mode 100644 index 816e3fc..0000000 Binary files a/techniques/BugLocator/libs/contenttype-3.2.0-v20060603.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/dom4j-1.6.1.jar b/techniques/BugLocator/libs/dom4j-1.6.1.jar deleted file mode 100644 index c8c4dbb..0000000 Binary files a/techniques/BugLocator/libs/dom4j-1.6.1.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/lucene-core-2.9.4.jar b/techniques/BugLocator/libs/lucene-core-2.9.4.jar deleted file mode 100644 index 898d400..0000000 Binary files a/techniques/BugLocator/libs/lucene-core-2.9.4.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/mysql-connector-java-5.1.13-bin.jar b/techniques/BugLocator/libs/mysql-connector-java-5.1.13-bin.jar deleted file mode 100644 index ef5d71e..0000000 Binary files a/techniques/BugLocator/libs/mysql-connector-java-5.1.13-bin.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar b/techniques/BugLocator/libs/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar deleted file mode 100644 index cfce073..0000000 Binary files a/techniques/BugLocator/libs/org.eclipse.core.jobs_3.4.1.R34x_v20081128.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar b/techniques/BugLocator/libs/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar deleted file mode 100644 index 89131bb..0000000 Binary files a/techniques/BugLocator/libs/org.eclipse.core.resources_3.4.2.R34x_v20090126.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/org.eclipse.core.runtime_3.4.0.v20080512.jar b/techniques/BugLocator/libs/org.eclipse.core.runtime_3.4.0.v20080512.jar deleted file mode 100644 index 49bbc18..0000000 Binary files a/techniques/BugLocator/libs/org.eclipse.core.runtime_3.4.0.v20080512.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar b/techniques/BugLocator/libs/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar deleted file mode 100644 index ecac7a8..0000000 Binary files a/techniques/BugLocator/libs/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar b/techniques/BugLocator/libs/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar deleted file mode 100644 index 1cd6ea2..0000000 Binary files a/techniques/BugLocator/libs/org.eclipse.jdt.core_3.4.4.v_894_R34x.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/org.eclipse.jface_3.4.1.M20080827-2000.jar b/techniques/BugLocator/libs/org.eclipse.jface_3.4.1.M20080827-2000.jar deleted file mode 100644 index ad1c58f..0000000 Binary files a/techniques/BugLocator/libs/org.eclipse.jface_3.4.1.M20080827-2000.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar b/techniques/BugLocator/libs/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar deleted file mode 100644 index 673f3f5..0000000 Binary files a/techniques/BugLocator/libs/org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/org.eclipse.text_3.4.0.v20080605-1800.jar b/techniques/BugLocator/libs/org.eclipse.text_3.4.0.v20080605-1800.jar deleted file mode 100644 index 5eaefd0..0000000 Binary files a/techniques/BugLocator/libs/org.eclipse.text_3.4.0.v20080605-1800.jar and /dev/null differ diff --git a/techniques/BugLocator/libs/preferences-3.2.100-v20070522.jar b/techniques/BugLocator/libs/preferences-3.2.100-v20070522.jar deleted file mode 100644 index 8ca9b2f..0000000 Binary files a/techniques/BugLocator/libs/preferences-3.2.100-v20070522.jar and /dev/null differ diff --git a/techniques/BugLocator/pom.xml b/techniques/BugLocator/pom.xml new file mode 100644 index 0000000..b1dadc1 --- /dev/null +++ b/techniques/BugLocator/pom.xml @@ -0,0 +1,91 @@ + + 4.0.0 + BugLocator + BugLocator + 0.0.1-SNAPSHOT + + src + + + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.apache.maven.plugins + maven-dependency-plugin + + + prepare-package + + unpack-dependencies + + + ${project.build.directory}/classes + wvtool + + + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.1.1 + + BugLocator + false + + jar-with-dependencies + + + + org.buglocator.BugLocator + + + + + + make-assembly + package + + single + + + + + + + + + openmind + OpenMind + http://repository.openmindonline.it/ + + + + + org.dom4j + dom4j + 2.1.1 + + + edu.udo.cs + wvtool + 1.0.0 + system + ${project.basedir}/libs/wvtool.jar + + + org.eclipse.jdt + org.eclipse.jdt.core + 3.4.2-20081006 + + + org.eclipse.core + org.eclipse.core.runtime + 3.4.0-20081006 + + + diff --git a/techniques/Locus/.classpath b/techniques/Locus/.classpath deleted file mode 100644 index 59673b1..0000000 --- a/techniques/Locus/.classpath +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/techniques/Locus/.project b/techniques/Locus/.project deleted file mode 100644 index 7e29456..0000000 --- a/techniques/Locus/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - Locus - - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jdt.core.javanature - - diff --git a/techniques/Locus/lib/commons-math3-3.5.jar b/techniques/Locus/lib/commons-math3-3.5.jar deleted file mode 100644 index db99f8c..0000000 Binary files a/techniques/Locus/lib/commons-math3-3.5.jar and /dev/null differ diff --git a/techniques/Locus/lib/dom4j-1.6.jar b/techniques/Locus/lib/dom4j-1.6.jar deleted file mode 100644 index e19f4ce..0000000 Binary files a/techniques/Locus/lib/dom4j-1.6.jar and /dev/null differ diff --git a/techniques/Locus/lib/jsoup-1.8.2.jar b/techniques/Locus/lib/jsoup-1.8.2.jar deleted file mode 100644 index 74ea084..0000000 Binary files a/techniques/Locus/lib/jsoup-1.8.2.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.core.contenttype_3.4.200.v20140207-1251.jar b/techniques/Locus/lib/org.eclipse.core.contenttype_3.4.200.v20140207-1251.jar deleted file mode 100644 index 602bb9f..0000000 Binary files a/techniques/Locus/lib/org.eclipse.core.contenttype_3.4.200.v20140207-1251.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.core.jobs_3.6.1.v20141014-1248.jar b/techniques/Locus/lib/org.eclipse.core.jobs_3.6.1.v20141014-1248.jar deleted file mode 100644 index f165abb..0000000 Binary files a/techniques/Locus/lib/org.eclipse.core.jobs_3.6.1.v20141014-1248.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.core.resources_3.9.1.v20140825-1431.jar b/techniques/Locus/lib/org.eclipse.core.resources_3.9.1.v20140825-1431.jar deleted file mode 100644 index c4cac5a..0000000 Binary files a/techniques/Locus/lib/org.eclipse.core.resources_3.9.1.v20140825-1431.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.core.runtime_3.10.0.v20140318-2214.jar b/techniques/Locus/lib/org.eclipse.core.runtime_3.10.0.v20140318-2214.jar deleted file mode 100644 index ef56d1e..0000000 Binary files a/techniques/Locus/lib/org.eclipse.core.runtime_3.10.0.v20140318-2214.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.equinox.common_3.6.200.v20130402-1505.jar b/techniques/Locus/lib/org.eclipse.equinox.common_3.6.200.v20130402-1505.jar deleted file mode 100644 index fee382e..0000000 Binary files a/techniques/Locus/lib/org.eclipse.equinox.common_3.6.200.v20130402-1505.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.equinox.preferences_3.5.200.v20140224-1527.jar b/techniques/Locus/lib/org.eclipse.equinox.preferences_3.5.200.v20140224-1527.jar deleted file mode 100644 index 02dbb68..0000000 Binary files a/techniques/Locus/lib/org.eclipse.equinox.preferences_3.5.200.v20140224-1527.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.jdt.compiler.apt_1.1.0.v20150122-0735.jar b/techniques/Locus/lib/org.eclipse.jdt.compiler.apt_1.1.0.v20150122-0735.jar deleted file mode 100644 index cb55538..0000000 Binary files a/techniques/Locus/lib/org.eclipse.jdt.compiler.apt_1.1.0.v20150122-0735.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.jdt.compiler.tool_1.0.300.v20150114-1827.jar b/techniques/Locus/lib/org.eclipse.jdt.compiler.tool_1.0.300.v20150114-1827.jar deleted file mode 100644 index 63a8e5f..0000000 Binary files a/techniques/Locus/lib/org.eclipse.jdt.compiler.tool_1.0.300.v20150114-1827.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.jdt.core_3.10.2.v20150120-1634.jar b/techniques/Locus/lib/org.eclipse.jdt.core_3.10.2.v20150120-1634.jar deleted file mode 100644 index 6a1749d..0000000 Binary files a/techniques/Locus/lib/org.eclipse.jdt.core_3.10.2.v20150120-1634.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.jface_3.10.2.v20141021-1035.jar b/techniques/Locus/lib/org.eclipse.jface_3.10.2.v20141021-1035.jar deleted file mode 100644 index 78ecaf3..0000000 Binary files a/techniques/Locus/lib/org.eclipse.jface_3.10.2.v20141021-1035.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.osgi.source_3.8.2.v20130124-134944.jar b/techniques/Locus/lib/org.eclipse.osgi.source_3.8.2.v20130124-134944.jar deleted file mode 100644 index 1a03df3..0000000 Binary files a/techniques/Locus/lib/org.eclipse.osgi.source_3.8.2.v20130124-134944.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.osgi.util_3.3.0.v20131023-1243.jar b/techniques/Locus/lib/org.eclipse.osgi.util_3.3.0.v20131023-1243.jar deleted file mode 100644 index 6d8cfb0..0000000 Binary files a/techniques/Locus/lib/org.eclipse.osgi.util_3.3.0.v20131023-1243.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.osgi_3.8.2.v20130124-134944.jar b/techniques/Locus/lib/org.eclipse.osgi_3.8.2.v20130124-134944.jar deleted file mode 100644 index 47b3653..0000000 Binary files a/techniques/Locus/lib/org.eclipse.osgi_3.8.2.v20130124-134944.jar and /dev/null differ diff --git a/techniques/Locus/lib/org.eclipse.text_3.5.300.v20130515-1451.jar b/techniques/Locus/lib/org.eclipse.text_3.5.300.v20130515-1451.jar deleted file mode 100644 index 6170fbf..0000000 Binary files a/techniques/Locus/lib/org.eclipse.text_3.5.300.v20130515-1451.jar and /dev/null differ diff --git a/techniques/Locus/pom.xml b/techniques/Locus/pom.xml new file mode 100644 index 0000000..e2ffbca --- /dev/null +++ b/techniques/Locus/pom.xml @@ -0,0 +1,79 @@ + + 4.0.0 + Locus + Locus + 0.0.1-SNAPSHOT + + src + + + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.apache.maven.plugins + maven-dependency-plugin + + + prepare-package + + unpack-dependencies + + + ${project.build.directory}/classes + changedistiller + + + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.1.1 + + Locus + false + + jar-with-dependencies + + + + main.Main + + + + + + make-assembly + package + + single + + + + + + + + + org.dom4j + dom4j + 2.1.1 + + + ch.uzh.ifi.seal + changedistiller + 0.0.1 + system + ${project.basedir}/lib/changedistiller-0.0.1-SNAPSHOT-jar-with-dependencies.jar + + + org.eclipse.jdt + org.eclipse.jdt.core + 3.10.0 + + + diff --git a/techniques/Locus/src/miningChanges/CorpusCreation.java b/techniques/Locus/src/miningChanges/CorpusCreation.java index 538737f..276bbac 100644 --- a/techniques/Locus/src/miningChanges/CorpusCreation.java +++ b/techniques/Locus/src/miningChanges/CorpusCreation.java @@ -22,7 +22,7 @@ public class CorpusCreation { public static String loc = main.Main.settings.get("workingLoc"); public static String repo = main.Main.settings.get("repoDir"); public static HashSet concernedCommits; - public static HashMap changeMap; + public static HashSet changeMap; public static HashMap sourceFileIndex; public static void getCommitsOneLine() throws Exception{ @@ -176,16 +176,15 @@ public static boolean processHunks() throws Exception { count++; //System.out.println(count + ":" + concernedCommits.size()); - if (!changeMap.containsKey(hash)) continue; + if (!changeMap.contains(hash)) continue; //System.out.println(fullHash); // adaptpr for project ChangeLocator - String fullHash = changeMap.get(hash); - String parentPath = revisionLoc + File.separator + fullHash.substring(0,2)+ File.separator +fullHash.substring(2,4); - String commitFile = parentPath + File.separator + fullHash + ".txt"; + String parentPath = revisionLoc + File.separator + hash.substring(0,2)+ File.separator +hash.substring(2,4); + String commitFile = parentPath + File.separator + hash + ".txt"; file = new File(parentPath); - if (!file.exists()) file.mkdir(); + if (!file.exists()) file.mkdirs(); file = new File(commitFile); if (!file.exists() || file.length() == 0) { diff --git a/techniques/Locus/src/miningChanges/EvaluationMetric.java b/techniques/Locus/src/miningChanges/EvaluationMetric.java index 7f4b88d..cdf4144 100644 --- a/techniques/Locus/src/miningChanges/EvaluationMetric.java +++ b/techniques/Locus/src/miningChanges/EvaluationMetric.java @@ -14,6 +14,7 @@ public static double MRR(List> ranks) { if (ranks.get(i).size() > 0) size++; } + if (size == 0) return 0; return ans / size; } @@ -43,6 +44,7 @@ public static double MAP(List> ranks) { if (ranks.get(i).size() > 0) size++; } + if (size == 0) return 0; return ans / size; } @@ -71,6 +73,7 @@ public static double[] topN(List> ranks, int N) { } } } + if (size == 0) size = 1; // to avoid NaN score int tot = 0; for (int i = 0; i < N; i++) { results[i] = (rank[i] + tot) * 1.0 / size; diff --git a/techniques/Locus/src/miningChanges/ProduceChangeLevelResults.java b/techniques/Locus/src/miningChanges/ProduceChangeLevelResults.java index a80da3c..77cca55 100644 --- a/techniques/Locus/src/miningChanges/ProduceChangeLevelResults.java +++ b/techniques/Locus/src/miningChanges/ProduceChangeLevelResults.java @@ -80,7 +80,7 @@ public void loadRevisionTime() throws ParseException { String[] splits = line.split("\t"); String revisionNO = splits[0]; Date date = new SimpleDateFormat("EEE MMM dd HH:mm:ss yyyy Z", Locale.ENGLISH).parse(splits[2]); - revisionTime.put(revisionNO.substring(0,7), date.getTime()); + revisionTime.put(revisionNO, date.getTime()); } } diff --git a/techniques/Locus/src/miningChanges/ProduceFileLevelResults.java b/techniques/Locus/src/miningChanges/ProduceFileLevelResults.java index 1dca94f..7ab30bc 100644 --- a/techniques/Locus/src/miningChanges/ProduceFileLevelResults.java +++ b/techniques/Locus/src/miningChanges/ProduceFileLevelResults.java @@ -124,10 +124,10 @@ public void loadFileSuspiciousScore() throws Exception { if (description.contains("bug") || description.contains("patch") || description.contains("fix") || description.contains("issue")) { // if (description.contains("fix") || description.contains("bug")) { - isCommitFix.put(hash.substring(0, 7), true); + isCommitFix.put(hash, true); lines.add(hash + "\t1"); } else { - isCommitFix.put(hash.substring(0, 7), false); + isCommitFix.put(hash, false); lines.add(hash + "\t0"); } } @@ -136,7 +136,7 @@ public void loadFileSuspiciousScore() throws Exception { lines = FileToLines.fileToLines(commitFix); for (String line : lines) { String[] split = line.split("\t"); - isCommitFix.put(split[0].substring(0,7), split[1].equals("1")); + isCommitFix.put(split[0], split[1].equals("1")); } } @@ -214,7 +214,8 @@ public void integrateResults() { max = fixSuspicious.get(sid); for (int sid : fixSuspicious.keySet()) - fixSuspicious.put(sid, fixSuspicious.get(sid) / max); + if (max > 0.0) + fixSuspicious.put(sid, fixSuspicious.get(sid) / max); //calculate finalResults for (String change : results.keySet()) { @@ -242,10 +243,10 @@ public void integrateResults() { double score = finalRanks.get(r).getValue(); String filename = sourceFileIndex.get(sid); - // Àüü ·©Å·Á¤º¸ ÀúÀå + // ��ü ��ŷ���� ���� fullRanks.add(r + "\t" + score + "\t" + filename); - // answer¿¡ ´ëÇÑ °á°ú¸¸ ÀúÀå. + // answer�� ���� ����� ����. if (!ansFileIndices.contains(sid)) continue; rawRanks.add(bid + "\t" +filename + "\t" + r + "\t" + score ); rank.add(r); diff --git a/techniques/Locus/src/preprocess/ExtractCommits.java b/techniques/Locus/src/preprocess/ExtractCommits.java index 25754b3..609bcac 100644 --- a/techniques/Locus/src/preprocess/ExtractCommits.java +++ b/techniques/Locus/src/preprocess/ExtractCommits.java @@ -20,7 +20,7 @@ public class ExtractCommits { public static String loc = main.Main.settings.get("workingLoc"); public static String repo = main.Main.settings.get("repoDir"); public static HashSet concernedCommits; - public static HashMap changeMap; + public static HashSet changeMap; public static HashMap changeTime; public static void indexHunks() throws Exception { getCommitsOneLine(); @@ -91,17 +91,14 @@ public static void extractHunks() throws Exception { int max = concernedCommits.size(); for (String hash : concernedCommits) { count++; - if (!changeMap.containsKey(hash)) continue; + if (!changeMap.contains(hash)) continue; - - String fullHash = changeMap.get(hash); - - File parentPath = new File(revisionLoc + File.separator + fullHash.substring(0,2)+ File.separator +fullHash.substring(2,4)); + File parentPath = new File(revisionLoc + File.separator + hash.substring(0,2) + File.separator + hash.substring(2,4)); //file = new File(revisionLoc + File.separator + fullHash); if (!parentPath.exists()) parentPath.mkdirs(); - String commitFile = parentPath.getAbsolutePath() + File.separator + fullHash + ".txt"; + String commitFile = parentPath.getAbsolutePath() + File.separator + hash + ".txt"; file = new File(commitFile); if (!file.exists()) { String content = GitHelp.gitShow(hash, repo); diff --git a/techniques/Locus/src/utils/ChangeLocator.java b/techniques/Locus/src/utils/ChangeLocator.java index bdbd057..e518515 100644 --- a/techniques/Locus/src/utils/ChangeLocator.java +++ b/techniques/Locus/src/utils/ChangeLocator.java @@ -5,13 +5,14 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Locale; public class ChangeLocator { - public static HashMap shortChangeMap = null; + public static HashSet shortChangeMap = null; - public static HashMap getShortChangeMap() { + public static HashSet getShortChangeMap() { if (shortChangeMap == null) { shortChangeMap = readShortChangeMap(); } @@ -30,12 +31,12 @@ public static HashMap getChangeTime() throws ParseException { return changeTime; } - public static HashMap readShortChangeMap() { - HashMap changeMap = new HashMap(); + public static HashSet readShortChangeMap() { + HashSet changeMap = new HashSet(); List lines = FileToLines.fileToLines(main.Main.settings.get("workingLoc") + File.separator + "logOneline.txt"); for (String line : lines) { String[] split = line.split("\t"); - changeMap.put(split[0].substring(0, 7), split[0]); + changeMap.add(split[0]); } return changeMap; } diff --git a/techniques/Locus/src/utils/GitHelp.java b/techniques/Locus/src/utils/GitHelp.java index 27c1cd7..a661b05 100644 --- a/techniques/Locus/src/utils/GitHelp.java +++ b/techniques/Locus/src/utils/GitHelp.java @@ -103,7 +103,7 @@ public static List readFromTextGIT(String filename) { BufferedReader bw = new BufferedReader(new FileReader(new File(filename))); line = bw.readLine(); while ( line != null) { - hashId = line.substring(7); + hashId = line.substring(8, 19); line = bw.readLine(); if (!line.startsWith("Author")) line = bw.readLine(); int nameStart = line.indexOf(":") + 1; diff --git a/techniques/releases/AmaLgam.jar b/techniques/releases/AmaLgam.jar index 7e0f899..61050b7 100644 Binary files a/techniques/releases/AmaLgam.jar and b/techniques/releases/AmaLgam.jar differ diff --git a/techniques/releases/BLIA.jar b/techniques/releases/BLIA.jar index 4e7bc99..f6dfdfb 100644 Binary files a/techniques/releases/BLIA.jar and b/techniques/releases/BLIA.jar differ diff --git a/techniques/releases/BLUiR.jar b/techniques/releases/BLUiR.jar index b6d3992..a0cafb6 100644 Binary files a/techniques/releases/BLUiR.jar and b/techniques/releases/BLUiR.jar differ diff --git a/techniques/releases/BRTracer.jar b/techniques/releases/BRTracer.jar index a4be207..0b3bb50 100644 Binary files a/techniques/releases/BRTracer.jar and b/techniques/releases/BRTracer.jar differ diff --git a/techniques/releases/BugLocator.jar b/techniques/releases/BugLocator.jar index f416c38..3460c6e 100644 Binary files a/techniques/releases/BugLocator.jar and b/techniques/releases/BugLocator.jar differ diff --git a/techniques/releases/Locus.jar b/techniques/releases/Locus.jar index 46d25d1..b94d06b 100644 Binary files a/techniques/releases/Locus.jar and b/techniques/releases/Locus.jar differ diff --git a/techniques/releases/indri/indri-5.10.tar.gz b/techniques/releases/indri/indri-5.10.tar.gz deleted file mode 100644 index b2c3510..0000000 Binary files a/techniques/releases/indri/indri-5.10.tar.gz and /dev/null differ diff --git a/techniques/releases/indri/indri-5.11.tar.gz b/techniques/releases/indri/indri-5.15.tar.gz similarity index 64% rename from techniques/releases/indri/indri-5.11.tar.gz rename to techniques/releases/indri/indri-5.15.tar.gz index 92f7ca8..c6674e6 100644 Binary files a/techniques/releases/indri/indri-5.11.tar.gz and b/techniques/releases/indri/indri-5.15.tar.gz differ diff --git a/techniques/releases/indri/indri-5.6.tar.gz b/techniques/releases/indri/indri-5.6.tar.gz deleted file mode 100644 index 7fae02e..0000000 Binary files a/techniques/releases/indri/indri-5.6.tar.gz and /dev/null differ