Introducing UnapplyPattern, plus improvements
- Custom pattern matching through unapply functions. - TypeParameter now has private constructor, can only be created with TypeParameter.fresh or _.freshen - Stricter type checking for expressions. Correct various type errors. - Remove some redundant code.
Showing
- src/main/scala/leon/evaluators/RecursiveEvaluator.scala 19 additions, 4 deletionssrc/main/scala/leon/evaluators/RecursiveEvaluator.scala
- src/main/scala/leon/frontends/scalac/ASTExtractors.scala 8 additions, 0 deletionssrc/main/scala/leon/frontends/scalac/ASTExtractors.scala
- src/main/scala/leon/frontends/scalac/CodeExtraction.scala 25 additions, 3 deletionssrc/main/scala/leon/frontends/scalac/CodeExtraction.scala
- src/main/scala/leon/purescala/ExprOps.scala 67 additions, 57 deletionssrc/main/scala/leon/purescala/ExprOps.scala
- src/main/scala/leon/purescala/Expressions.scala 186 additions, 62 deletionssrc/main/scala/leon/purescala/Expressions.scala
- src/main/scala/leon/purescala/Extractors.scala 1 addition, 0 deletionssrc/main/scala/leon/purescala/Extractors.scala
- src/main/scala/leon/purescala/FunctionClosure.scala 1 addition, 0 deletionssrc/main/scala/leon/purescala/FunctionClosure.scala
- src/main/scala/leon/purescala/PrettyPrinter.scala 11 additions, 0 deletionssrc/main/scala/leon/purescala/PrettyPrinter.scala
- src/main/scala/leon/purescala/ScopeSimplifier.scala 2 additions, 0 deletionssrc/main/scala/leon/purescala/ScopeSimplifier.scala
- src/main/scala/leon/purescala/TypeOps.scala 21 additions, 7 deletionssrc/main/scala/leon/purescala/TypeOps.scala
- src/main/scala/leon/purescala/Types.scala 15 additions, 2 deletionssrc/main/scala/leon/purescala/Types.scala
- src/main/scala/leon/solvers/ADTManager.scala 1 addition, 1 deletionsrc/main/scala/leon/solvers/ADTManager.scala
- src/main/scala/leon/solvers/smtlib/SMTLIBSolver.scala 5 additions, 1 deletionsrc/main/scala/leon/solvers/smtlib/SMTLIBSolver.scala
- src/main/scala/leon/synthesis/ExamplesFinder.scala 4 additions, 1 deletionsrc/main/scala/leon/synthesis/ExamplesFinder.scala
- src/test/resources/regression/verification/purescala/invalid/Unapply1.scala 15 additions, 0 deletions.../regression/verification/purescala/invalid/Unapply1.scala
- src/test/resources/regression/verification/purescala/invalid/Unapply2.scala 11 additions, 0 deletions.../regression/verification/purescala/invalid/Unapply2.scala
- src/test/resources/regression/verification/purescala/valid/Unapply.scala 12 additions, 0 deletions...ces/regression/verification/purescala/valid/Unapply.scala
- src/test/scala/leon/test/codegen/CodeGenSuite.scala 2 additions, 3 deletionssrc/test/scala/leon/test/codegen/CodeGenSuite.scala
Loading
Please register or sign in to comment