fn createIntNode(t: *Translator, int: aro.Value) !ZigNode
fn createIntNode(t: *Translator, int: aro.Value) !ZigNode { var space: aro.Interner.Tag.Int.BigIntSpace = undefined; var big = t.comp.interner.get(int.ref()).toBigInt(&space); const is_negative = !big.positive; big.positive = true; const str = big.toStringAlloc(t.arena, 10, .lower) catch |err| switch (err) { error.OutOfMemory => |e| return e, }; const res = try ZigTag.integer_literal.create(t.arena, str); if (is_negative) return ZigTag.negate.create(t.arena, res); return res; }