WIP vcard 3.0 implementation.
This commit is contained in:
20
src/vcard/private/util.nim
Normal file
20
src/vcard/private/util.nim
Normal file
@ -0,0 +1,20 @@
|
||||
import strutils
|
||||
|
||||
func foldContentLine*(s: string): string =
|
||||
result = ""
|
||||
var rem = s
|
||||
while rem.len > 75: # TODO: unicode multi-byte safe?
|
||||
result &= rem[0..<75] & "\r\n "
|
||||
rem = rem[75..^1]
|
||||
result &= rem
|
||||
|
||||
func unfoldContentLine*(s: string): string =
|
||||
return s.multiReplace([("\r\n ", "")])
|
||||
|
||||
template indexOfIt*(s, pred: untyped): int =
|
||||
var result = -1
|
||||
for idx, it {.inject.} in pairs(s):
|
||||
if pred:
|
||||
result = idx
|
||||
break
|
||||
result
|
Reference in New Issue
Block a user