Sha256: 5a19c69acf196e600e189b56917d735df933d663a4d407ded6db926428dd2102

Contents?: true

Size: 535 Bytes

Versions: 172

Compression:

Stored size: 535 Bytes

Contents

import scala.util.parsing.combinator.RegexParsers

object BracketPush extends RegexParsers {
  lazy val t = "[^\\[\\]\\(\\)\\{\\}]+".r

  private def paren: Parser[String] =
    ("(" ~ rep1(t | paren) ~ ")" |
      "[" ~ rep1(t | paren) ~ "]" |
      "{" ~ rep1(t | paren) ~ "}" |
      "(" ~ ")" |
      "[" ~ "]" |
      "{" ~ "}" |
      t) ^^ {
      case _ => ""
    }

  private def all = rep(paren)

  def isPaired(s: String) = this.parseAll(all, s) match {
    case NoSuccess(_, _) => false
    case Success(_, _) => true
  }
}

Version data entries

172 entries across 172 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.179 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.178 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.177 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.176 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.175 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.174 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.173 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.172 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.171 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.170 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.169 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.167 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.166 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.165 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.164 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.163 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.162 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.161 tracks/scala/exercises/bracket-push/example.scala
trackler-2.2.1.160 tracks/scala/exercises/bracket-push/example.scala