summaryrefslogtreecommitdiff
path: root/test/files/scalacheck/quasiquotes/TypeDeconstructionProps.scala
Commit message (Collapse)AuthorAgeFilesLines
* run ScalaCheck tests directly, not through partestSeth Tisue2017-01-271-78/+0
| | | | | | | | | | | ScalaCheck ever being under partest in the first place is ancient history, from back in the Ant build days (shudder) ScalaCheck support was removed from partest 1.1.0, which we already upgraded to in a recent commit also upgrades ScalaCheck from 1.11.6 to 1.13.4, since we might as well. no source changes were necessary.
* SI-8331 make sure type select & applied type doesn't match termsDenys Shabalin2014-03-091-0/+12
| | | | | | Due to tree re-use it used to be the fact that type quasiquotes could match term trees. This commit makes sure selections and applied type and type applied are all non-overlapping between q and tq.
* Make handling of tuples more consistent in quasi-quotesDenys Shabalin2014-02-101-0/+5
| | | | | | | | | | | | | | On one hand we know that q"($expr)" is the same as q"$expr". On the other if we wrap it into a list and splice as q"(..$expr)" we get a Tuple1 constructor call which is inconsistent. This pull request fixes this inconsistency by making q"(..$expr)" being equivalent q"(${expr.head})" for single-element list. We also add support for matching of expressions as single-element tuples (similarly to blocks) and remove liftables and unliftables for Tuple1 (which aren't clearly defined any longer due to q"(foo)" == q"foo" invariant).
* Represent tq"" as SyntacticEmptyTypeTree rather than TypeTree()Denys Shabalin2014-02-071-0/+6
| | | | | | | | | | | | Such representation codifies the fact that type tree that doesn't have embedded syntactic equivalent must have been inferred or otherwise provided by the compiler rather than specified by the end user. Additionally it also ensures that we can still match trees without explicit types (e.g. vals without type) after typechecking. Otherwise the same quote couldn't be used in situations like: val q"val x = 42" = typecheck(q"val x = 42")
* SI-8173 add support for patterns like init :+ last to quasiquotesDenys Shabalin2014-02-021-6/+26
| | | | | | | | | | | | Adds support for patterns like: val q"{ ..$init; $last }" = q"{ a; b; c }" // init == List(q"a", q"b") // last == q"c" Which under the hood get compiled as `:+` patterns: SyntacticBlock(init :+ last)
* simplify imports in quasiquotes scalacheck testsDen Shabalin2013-11-121-7/+2
|
* unify handling of references to scala members for functions and tuplesDen Shabalin2013-09-051-1/+1
|
* add support for function type splicing and extractionDen Shabalin2013-09-051-0/+6
|
* SI-7196 add support for refineStat splicing and extractionDen Shabalin2013-09-051-0/+5
|
* tests for quasiquotesDen Shabalin2013-07-081-0/+29
Introduces an extensive ScalaCheck-based test suite for recently implemented quasiquotes. Provides tools for syntactic tree comparison and verifying compilation error messages.