Skip to content

Commit dde2c1d

Browse files
committed
Add more invocations of make_source_annotated_object
1 parent df9588c commit dde2c1d

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

scrapscript.py

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -644,16 +644,13 @@ def parse_unary(tokens: Peekable, p: float) -> "Object":
644644
if isinstance(r, Float):
645645
assert r.value >= 0, "Tokens should never have negative values"
646646
return make_source_annotated_object(Float, source_extent, -r.value)
647-
binop = Binop(BinopKind.SUB, Int(0), r)
648-
binop.source_extent = source_extent
649-
return binop
647+
return make_source_annotated_object(Binop, source_extent, BinopKind.SUB, Int(0), r)
650648
else:
651649
raise UnexpectedTokenError(token)
652650

653651

654652
def parse_binary(tokens: Peekable, p: float) -> "Object":
655653
l: Object = parse_unary(tokens, p)
656-
new_l: Object
657654
while True:
658655
op: Token
659656
try:
@@ -668,9 +665,9 @@ def parse_binary(tokens: Peekable, p: float) -> "Object":
668665
if pl < p:
669666
break
670667
arg = parse_binary(tokens, pr)
671-
new_l = Apply(l, arg)
672-
new_l.source_extent = l.source_extent.coalesce(arg.source_extent) if l.source_extent else None
673-
l = new_l
668+
l = make_source_annotated_object(
669+
Apply, l.source_extent.coalesce(arg.source_extent) if l.source_extent else None, l, arg
670+
)
674671
continue
675672
prec = PS[op.value]
676673
pl, pr = prec.pl, prec.pr

0 commit comments

Comments
 (0)