Case fixes.

This commit is contained in:
Dominik Picheta 2014-09-27 16:59:25 +01:00
commit ee952e92fc
4 changed files with 22 additions and 22 deletions

View file

@ -74,7 +74,7 @@ proc writeHelp() =
quit(QuitSuccess) quit(QuitSuccess)
proc writeVersion() = proc writeVersion() =
echo("babel v$# compiled at $# $#" % [babelVersion, compileDate, compileTime]) echo("babel v$# compiled at $# $#" % [babelVersion, CompileDate, CompileTime])
quit(QuitSuccess) quit(QuitSuccess)
proc getBabelDir(options: TOptions): string = proc getBabelDir(options: TOptions): string =

View file

@ -102,7 +102,7 @@ proc getVersionList*(tags: seq[string]): TTable[TVersion, string] =
result = initTable[TVersion, string]() result = initTable[TVersion, string]()
for tag in tags: for tag in tags:
if tag != "": if tag != "":
let i = skipUntil(tag, digits) # skip any chars before the version let i = skipUntil(tag, Digits) # skip any chars before the version
# TODO: Better checking, tags can have any names. Add warnings and such. # TODO: Better checking, tags can have any names. Add warnings and such.
result[newVersion(tag[i .. -1])] = tag result[newVersion(tag[i .. -1])] = tag

View file

@ -77,7 +77,7 @@ proc validatePackageInfo(pkgInfo: TPackageInfo, path: string) =
if pkgInfo.backend notin ["c", "cc", "objc", "cpp", "js"]: if pkgInfo.backend notin ["c", "cc", "objc", "cpp", "js"]:
raise newException(EBabel, "'" & pkgInfo.backend & "' is an invalid backend.") raise newException(EBabel, "'" & pkgInfo.backend & "' is an invalid backend.")
for c in pkgInfo.version: for c in pkgInfo.version:
if c notin ({'.'} + digits): if c notin ({'.'} + Digits):
raise newException(EBabel, raise newException(EBabel,
"Version may only consist of numbers and the '.' character " & "Version may only consist of numbers and the '.' character " &
"but found '" & c & "'.") "but found '" & c & "'.")
@ -85,7 +85,7 @@ proc validatePackageInfo(pkgInfo: TPackageInfo, path: string) =
proc parseRequires(req: string): TPkgTuple = proc parseRequires(req: string): TPkgTuple =
try: try:
if ' ' in req: if ' ' in req:
var i = skipUntil(req, whitespace) var i = skipUntil(req, Whitespace)
result.name = req[0 .. i].strip result.name = req[0 .. i].strip
result.ver = parseVersionRange(req[i .. -1]) result.ver = parseVersionRange(req[i .. -1])
elif '#' in req: elif '#' in req:

View file

@ -34,15 +34,15 @@ type
proc newVersion*(ver: string): TVersion = return TVersion(ver) proc newVersion*(ver: string): TVersion = return TVersion(ver)
proc newSpecial*(spe: string): TSpecial = return TSpecial(spe) proc newSpecial*(spe: string): TSpecial = return TSpecial(spe)
proc `$`*(ver: TVersion): String {.borrow.} proc `$`*(ver: TVersion): string {.borrow.}
proc hash*(ver: TVersion): THash {.borrow.} proc hash*(ver: TVersion): THash {.borrow.}
proc `$`*(ver: TSpecial): String {.borrow.} proc `$`*(ver: TSpecial): string {.borrow.}
proc hash*(ver: TSpecial): THash {.borrow.} proc hash*(ver: TSpecial): THash {.borrow.}
proc `<`*(ver: TVersion, ver2: TVersion): Bool = proc `<`*(ver: TVersion, ver2: TVersion): bool =
var sVer = string(ver).split('.') var sVer = string(ver).split('.')
var sVer2 = string(ver2).split('.') var sVer2 = string(ver2).split('.')
for i in 0..max(sVer.len, sVer2.len)-1: for i in 0..max(sVer.len, sVer2.len)-1:
@ -53,13 +53,13 @@ proc `<`*(ver: TVersion, ver2: TVersion): Bool =
if i < sVer2.len: if i < sVer2.len:
discard parseInt(sVer2[i], sVerI2) discard parseInt(sVer2[i], sVerI2)
if sVerI < sVerI2: if sVerI < sVerI2:
return True return true
elif sVerI == sVerI2: elif sVerI == sVerI2:
nil nil
else: else:
return False return false
proc `==`*(ver: TVersion, ver2: TVersion): Bool = proc `==`*(ver: TVersion, ver2: TVersion): bool =
var sVer = string(ver).split('.') var sVer = string(ver).split('.')
var sVer2 = string(ver2).split('.') var sVer2 = string(ver2).split('.')
for i in 0..max(sVer.len, sVer2.len)-1: for i in 0..max(sVer.len, sVer2.len)-1:
@ -72,15 +72,15 @@ proc `==`*(ver: TVersion, ver2: TVersion): Bool =
if sVerI == sVerI2: if sVerI == sVerI2:
result = true result = true
else: else:
return False return false
proc `==`*(spe: TSpecial, spe2: TSpecial): bool = proc `==`*(spe: TSpecial, spe2: TSpecial): bool =
return ($spe).toLower() == ($spe2).toLower() return ($spe).toLower() == ($spe2).toLower()
proc `<=`*(ver: TVersion, ver2: TVersion): Bool = proc `<=`*(ver: TVersion, ver2: TVersion): bool =
return (ver == ver2) or (ver < ver2) return (ver == ver2) or (ver < ver2)
proc withinRange*(ver: TVersion, ran: PVersionRange): Bool = proc withinRange*(ver: TVersion, ran: PVersionRange): bool =
case ran.kind case ran.kind
of verLater: of verLater:
return ver > ran.ver return ver > ran.ver
@ -93,20 +93,20 @@ proc withinRange*(ver: TVersion, ran: PVersionRange): Bool =
of verEq: of verEq:
return ver == ran.ver return ver == ran.ver
of verSpecial: of verSpecial:
return False return false
of verIntersect: of verIntersect:
return withinRange(ver, ran.verILeft) and withinRange(ver, ran.verIRight) return withinRange(ver, ran.verILeft) and withinRange(ver, ran.verIRight)
of verAny: of verAny:
return True return true
proc withinRange*(spe: TSpecial, ran: PVersionRange): Bool = proc withinRange*(spe: TSpecial, ran: PVersionRange): bool =
case ran.kind case ran.kind
of verLater, verEarlier, verEqLater, verEqEarlier, verEq, verIntersect: of verLater, verEarlier, verEqLater, verEqEarlier, verEq, verIntersect:
return False return false
of verSpecial: of verSpecial:
return spe == ran.spe return spe == ran.spe
of verAny: of verAny:
return True return true
proc contains*(ran: PVersionRange, ver: TVersion): bool = proc contains*(ran: PVersionRange, ver: TVersion): bool =
return withinRange(ver, ran) return withinRange(ver, ran)
@ -144,7 +144,7 @@ proc parseVersionRange*(s: string): PVersionRange =
var i = 0 var i = 0
var op = "" var op = ""
var version = "" var version = ""
while True: while true:
case s[i] case s[i]
of '>', '<', '=': of '>', '<', '=':
op.add(s[i]) op.add(s[i])
@ -181,7 +181,7 @@ proc parseVersionRange*(s: string): PVersionRange =
raise newException(EParseVersion, "Unexpected char in version range: " & s[i]) raise newException(EParseVersion, "Unexpected char in version range: " & s[i])
inc(i) inc(i)
proc `$`*(verRange: PVersionRange): String = proc `$`*(verRange: PVersionRange): string =
case verRange.kind case verRange.kind
of verLater: of verLater:
result = "> " result = "> "
@ -219,7 +219,7 @@ proc newVRAny*(): PVersionRange =
new(result) new(result)
result.kind = verAny result.kind = verAny
proc newVREarlier*(ver: String): PVersionRange = proc newVREarlier*(ver: string): PVersionRange =
new(result) new(result)
result.kind = verEarlier result.kind = verEarlier
result.ver = newVersion(ver) result.ver = newVersion(ver)
@ -281,4 +281,4 @@ when isMainModule:
doAssert newSpecial("ab26saggdt362") notin sp doAssert newSpecial("ab26saggdt362") notin sp
echo("Everything works!") echo("Everything works!")