class Prism::Translation::Parser::Compiler

def visit_numeric(node, value)

Visit a numeric node and account for the optional sign.
def visit_numeric(node, value)
  if (slice = node.slice).match?(/^[+-]/)
    builder.unary_num(
      [slice[0].to_sym, srange_offsets(node.location.start_offset, node.location.start_offset + 1)],
      value
    )
  else
    value
  end
end