Refactor grammars, introduce Labels, and Label Aspects
* Expression grammars are now alwayse 'Labels -> Expr', simple grammars that are 'Type -> Expr' can simply extend SimpleExpressionGrammars * Labels now have Aspects. A label aspect describes a particular feature of the label (e.g. its size), as well as how this aspect applies to sub-productions. Aspects describe how sub-productions are generated/filtered/modified. See comments in Aspect for more information
Showing
- src/main/scala/leon/datagen/GrammarDataGen.scala 3 additions, 3 deletionssrc/main/scala/leon/datagen/GrammarDataGen.scala
- src/main/scala/leon/grammars/Aspect.scala 34 additions, 0 deletionssrc/main/scala/leon/grammars/Aspect.scala
- src/main/scala/leon/grammars/BaseGrammar.scala 1 addition, 1 deletionsrc/main/scala/leon/grammars/BaseGrammar.scala
- src/main/scala/leon/grammars/Closures.scala 29 additions, 0 deletionssrc/main/scala/leon/grammars/Closures.scala
- src/main/scala/leon/grammars/Constants.scala 2 additions, 2 deletionssrc/main/scala/leon/grammars/Constants.scala
- src/main/scala/leon/grammars/Empty.scala 2 additions, 2 deletionssrc/main/scala/leon/grammars/Empty.scala
- src/main/scala/leon/grammars/EqualityGrammar.scala 1 addition, 1 deletionsrc/main/scala/leon/grammars/EqualityGrammar.scala
- src/main/scala/leon/grammars/ExpressionGrammar.scala 38 additions, 31 deletionssrc/main/scala/leon/grammars/ExpressionGrammar.scala
- src/main/scala/leon/grammars/FunctionCalls.scala 1 addition, 1 deletionsrc/main/scala/leon/grammars/FunctionCalls.scala
- src/main/scala/leon/grammars/Grammars.scala 3 additions, 6 deletionssrc/main/scala/leon/grammars/Grammars.scala
- src/main/scala/leon/grammars/Label.scala 20 additions, 0 deletionssrc/main/scala/leon/grammars/Label.scala
- src/main/scala/leon/grammars/OneOf.scala 3 additions, 3 deletionssrc/main/scala/leon/grammars/OneOf.scala
- src/main/scala/leon/grammars/SafeRecursiveCalls.scala 1 addition, 1 deletionsrc/main/scala/leon/grammars/SafeRecursiveCalls.scala
- src/main/scala/leon/grammars/SimilarTo.scala 155 additions, 155 deletionssrc/main/scala/leon/grammars/SimilarTo.scala
- src/main/scala/leon/grammars/SimpleExpressionGrammar.scala 42 additions, 0 deletionssrc/main/scala/leon/grammars/SimpleExpressionGrammar.scala
- src/main/scala/leon/grammars/Union.scala 17 additions, 0 deletionssrc/main/scala/leon/grammars/Union.scala
- src/main/scala/leon/grammars/ValueGrammar.scala 1 addition, 1 deletionsrc/main/scala/leon/grammars/ValueGrammar.scala
- src/main/scala/leon/grammars/aspects/ExtraTerminals.scala 28 additions, 0 deletionssrc/main/scala/leon/grammars/aspects/ExtraTerminals.scala
- src/main/scala/leon/grammars/aspects/PersistantAspect.scala 28 additions, 0 deletionssrc/main/scala/leon/grammars/aspects/PersistantAspect.scala
- src/main/scala/leon/grammars/aspects/SimilarTo.scala 136 additions, 0 deletionssrc/main/scala/leon/grammars/aspects/SimilarTo.scala
Loading
Please register or sign in to comment