equal
  deleted
  inserted
  replaced
  
    
    
|     14 // it allows writing nested patterns as |     14 // it allows writing nested patterns as | 
|     15 // case x ~ y ~ z => ... |     15 // case x ~ y ~ z => ... | 
|     16  |     16  | 
|     17 case class ~[+A, +B](x: A, y: B) |     17 case class ~[+A, +B](x: A, y: B) | 
|     18  |     18  | 
|     19  |     19 val a = (1, "2") | 
|         |     20 val v = new ~(1, "2") | 
|     20  |     21  | 
|     21 type IsSeq[I] = I => Seq[_] |     22 type IsSeq[I] = I => Seq[_] | 
|     22  |     23  | 
|     23 abstract class Parser[I, T](using is: I => Seq[_])  { |     24 abstract class Parser[I, T](using is: I => Seq[_])  { | 
|     24   def parse(in: I): Set[(T, I)]   |     25   def parse(in: I): Set[(T, I)]   |