The meaning of nopolContext.isOnlyOneSynthesisResult() in Nopol source codes
DehengYang opened this issue · 2 comments
private void solveWithMultipleBuild(Map<SourceLocation, List<TestResult>> testListPerStatement) { for (SourceLocation sourceLocation : testListPerStatement.keySet()) { runOnStatement(sourceLocation, testListPerStatement.get(sourceLocation)); if (nopolContext.isOnlyOneSynthesisResult() && !this.nopolResult.getPatches().isEmpty()) { return; } } }
Could anyone explain what the code "isOnlyOneSynthesisResult()” in Nopol.java means for the Nopol? Thanks!
isOnlyOneSynthesisResult()
tells whether you want to generate several patches for the same location with angelic value. This is only valid in Dynamoth mode which is able to enumerate patches in the synthesis space. On the contrary, the SMT synthesis is not able to enumerate them.
Thank you for your great help!