diff options
Diffstat (limited to 'lib/pure')
-rw-r--r-- | lib/pure/pegs.nim | 8 | ||||
-rw-r--r-- | lib/pure/times.nim | 4 |
2 files changed, 8 insertions, 4 deletions
diff --git a/lib/pure/pegs.nim b/lib/pure/pegs.nim index 4e31ffc0c..61a1c08c7 100644 --- a/lib/pure/pegs.nim +++ b/lib/pure/pegs.nim @@ -867,8 +867,9 @@ template `=~`*(s: string, pattern: TPeg): bool = ## else: ## echo("syntax error") ## + bind maxSubpatterns when not definedInScope(matches): - var matches {.inject.}: array[0..pegs.maxSubpatterns-1, string] + var matches {.inject.}: array[0..maxSubpatterns-1, string] match(s, pattern, matches) # ------------------------- more string handling ------------------------------ @@ -1740,8 +1741,9 @@ when isMainModule: assert matches[0] == "a" else: assert false - - if match("abcdefg", peg"c {d} ef {g}", matches, 2): + + var matches: array[0..maxSubpatterns-1, string] + if match("abcdefg", peg"c {d} ef {g}", matches, 2): assert matches[0] == "d" assert matches[1] == "g" else: diff --git a/lib/pure/times.nim b/lib/pure/times.nim index 03a05aea1..b57b9e959 100644 --- a/lib/pure/times.nim +++ b/lib/pure/times.nim @@ -463,6 +463,8 @@ when not defined(JS): elif defined(JS): proc newDate(): TTime {.importc: "new Date".} + proc internGetTime(): TTime {.importc: "new Date", tags: [].} + proc newDate(value: float): TTime {.importc: "new Date".} proc newDate(value: string): TTime {.importc: "new Date".} proc getTime(): TTime = @@ -494,7 +496,7 @@ elif defined(JS): result.yearday = 0 proc TimeInfoToTime*(timeInfo: TTimeInfo): TTime = - result = getTime() + result = internGetTime() result.setSeconds(timeInfo.second) result.setMinutes(timeInfo.minute) result.setHours(timeInfo.hour) |