mort/tests/testmort.nim
2020-02-09 10:31:19 -07:00

33 lines
773 B
Nim

import strutils
import mort
proc mysnakeToCamel(s: cstring): string {.findDeadCode.} =
var i, j: int
result = newString(s.len)
if s[i] == '_': inc(i)
while true:
if s[i] == '_' and (s[i + 1] == '\0' or s[i + 1] == '_'):
inc(i)
elif (s[i] == '_' or s[i] == '-') and s[i + 1].isLowerAscii and not s[i - 1].isUpperAscii:
inc(i)
result[j] = toUpperAscii(s[i])
inc(i)
inc(j)
else:
result[j] = s[i]
inc(i)
inc(j)
if s[i] == '\0':
result.setLen(j)
break
if result[0] == '\0': # this may result, so we emit a dummy name as marker
result = "QQQ"
proc main() =
discard mySnakeToCamel("diff_is_good")
discard mySnakeToCamel("_diff_is_good")
printCodeUsage()
printDeadLines()
main()