~ubuntu-branches/debian/sid/scala/sid

« back to all changes in this revision

Viewing changes to src/scalacheck/org/scalacheck/util/CmdLineParser.scala

  • Committer: Package Import Robot
  • Author(s): Emmanuel Bourg, Mehdi Dogguy, Lucas Satabin, Frank S. Thomas, Emmanuel Bourg
  • Date: 2015-06-05 23:52:59 UTC
  • mfrom: (1.2.11)
  • Revision ID: package-import@ubuntu.com-20150605235259-wk00vgk83dh8o19g
Tags: 2.10.5-1
* Team upload.

[ Mehdi Dogguy ]
* New upstream release (Closes: #744278).

[ Lucas Satabin ]
* Update patches
* Update the clean target
* Update paths of elements to install
* Update watch file

[ Frank S. Thomas ]
* Remove myself from Uploaders.

[ Emmanuel Bourg ]
* The package has been adopted by the Java Team (Closes: #754935)
* Patched the build to avoid downloading libraries from the Internet
* Replaced the minified JavaScript files with unobfuscated ones
* No longer build scala-partest.jar until diffutils is packaged or replaced
* debian/watch: Fixed the versions matched (x.y.z instead of x.y.z..z)
* debian/rules:
  - Added the missing get-orig-source target (Closes: #724704)
  - Improved the clean target
* debian/control:
  - Build depend on scala (>= 2.10) and bnd
  - Use canonical URLs for the Vcs-* fields
  - Standards-Version updated to 3.9.6 (no changes)
* Switch to debhelper level 9

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*-------------------------------------------------------------------------*\
2
2
**  ScalaCheck                                                             **
3
 
**  Copyright (c) 2007-2010 Rickard Nilsson. All rights reserved.          **
 
3
**  Copyright (c) 2007-2011 Rickard Nilsson. All rights reserved.          **
4
4
**  http://www.scalacheck.org                                              **
5
5
**                                                                         **
6
6
**  This software is released under the terms of the Revised BSD License.  **
7
7
**  There is NO WARRANTY. See the file LICENSE for the full text.          **
8
 
\*-------------------------------------------------------------------------*/
 
8
\*------------------------------------------------------------------------ */
9
9
 
10
10
package org.scalacheck.util
11
11
 
26
26
  }
27
27
  trait Flag extends Opt[Unit]
28
28
  trait IntOpt extends Opt[Int]
 
29
  trait FloatOpt extends Opt[Float]
29
30
  trait StrOpt extends Opt[String]
30
31
 
31
32
  class OptMap {
32
 
    private val opts = new collection.mutable.HashMap[Opt[_], Any]
 
33
    private val opts = new scala.collection.mutable.HashMap[Opt[_], Any]
33
34
    def apply(flag: Flag): Boolean = opts.contains(flag)
34
35
    def apply[T](opt: Opt[T]): T = opts.get(opt) match {
35
36
      case None => opt.default
68
69
    case s if s != null && s.length > 0 && s.forall(_.isDigit) => s.toInt
69
70
  })
70
71
 
 
72
  private val floatVal: Parser[Float] = accept("float", {
 
73
    case s if s != null && s.matches("[0987654321]+\\.?[0987654321]*")
 
74
      => s.toFloat
 
75
  })
 
76
 
71
77
  private case class OptVal[T](o: Opt[T], v: T)
72
78
 
73
79
  private val optVal: Parser[OptVal[Any]] = opt into {
74
80
    case o: Flag => success(OptVal(o, ()))
75
81
    case o: IntOpt => intVal ^^ (v => OptVal(o, v))
 
82
    case o: FloatOpt => floatVal ^^ (v => OptVal(o, v))
76
83
    case o: StrOpt => strVal ^^ (v => OptVal(o, v))
77
84
  }
78
85