Skip to content

Commit be3b90a

Browse files
committed
Fix deprecation and warnings
1 parent b959f42 commit be3b90a

File tree

2 files changed

+12
-11
lines changed

2 files changed

+12
-11
lines changed

src/docopt.nim

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,7 @@ type MatchResult = tuple[matched: bool; left, collected: seq[Pattern]]
189189
type SingleMatchResult = tuple[pos: int, match: Pattern]
190190

191191

192+
{.warning[LockLevel]: off.}
192193

193194
method str(self: Pattern): string =
194195
assert false; "Not implemented"
@@ -226,8 +227,8 @@ method either(self: Pattern): Either =
226227
## Transform pattern into an equivalent, with only top-level Either.
227228
# Currently the pattern will not be equivalent, but more "narrow",
228229
# although good enough to reason about list arguments.
229-
var result: seq[seq[Pattern]] = @[]
230-
var groups: seq[seq[Pattern]] = @[@[self]]
230+
var ret: seq[seq[Pattern]] = @[]
231+
var groups = @[@[self]]
231232
while groups.len > 0:
232233
var children = groups[0]
233234
groups.delete()
@@ -250,8 +251,8 @@ method either(self: Pattern): Either =
250251
else:
251252
groups.add(child.children & children)
252253
else:
253-
result.add(children)
254-
either(result.map_it(Pattern, required(it)))
254+
ret.add(children)
255+
either(ret.map_it(Pattern, required(it)))
255256

256257
method fix_repeating_arguments(self: Pattern) =
257258
## Fix elements that should accumulate/increment values.
@@ -549,11 +550,11 @@ proc parse_pattern(source: string, options: var seq[Option]): Required =
549550
source.replacef(re"([\[\]\(\)\|]|\.\.\.)", r" $1 "),
550551
new_exception(DocoptLanguageError, "")
551552
)
552-
var result = parse_expr(tokens, options)
553+
var ret = parse_expr(tokens, options)
553554
if tokens.current != nil:
554555
tokens.error.msg = "unexpected ending: '$#'".format(@tokens.join(" "))
555556
raise tokens.error
556-
required(result)
557+
required(ret)
557558
558559
559560
proc parse_seq(tokens: TokenStream, options: var seq[Option]): seq[Pattern]
@@ -593,20 +594,20 @@ proc parse_atom(tokens: TokenStream, options: var seq[Option]): seq[Pattern] =
593594
if token in ["(", "["]:
594595
discard tokens.move()
595596
var matching: string
596-
var result: Pattern
597+
var ret: Pattern
597598
case token
598599
of "(":
599600
matching = ")"
600-
result = required(parse_expr(tokens, options))
601+
ret = required(parse_expr(tokens, options))
601602
of "[":
602603
matching = "]"
603-
result = optional(parse_expr(tokens, options))
604+
ret = optional(parse_expr(tokens, options))
604605
else:
605606
assert false
606607
if tokens.move() != matching:
607608
tokens.error.msg = "unmatched '$#'".format(token)
608609
raise tokens.error
609-
return @[result]
610+
return @[ret]
610611
elif token == "options":
611612
discard tokens.move()
612613
return @[Pattern(any_options([]))]

test/test.nim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ for each_line in "testcases.docopt".lines:
4747
if in_doc:
4848
doc &= line & "\n"
4949
if line.ends_with("\"\"\""):
50-
doc = doc[0 .. -5]
50+
doc = doc[0 .. doc.len-5]
5151
in_doc = false
5252
elif line.starts_with("$ prog"):
5353
assert args == nil and expected == nil

0 commit comments

Comments
 (0)