#!/usr/bin/env ruby
# frozen_string_literal: true

::ENV["TOYS_BIN_PATH"] ||= ::File.absolute_path(__FILE__)
::ENV["TOYS_LIB_PATH"] ||= ::File.absolute_path(::File.join(::File.dirname(__dir__), "lib"))

$LOAD_PATH.delete(::ENV["TOYS_LIB_PATH"])
$LOAD_PATH.unshift(::ENV["TOYS_LIB_PATH"])
require "toys"

begin
  cli = ::Toys::StandardCLI.new
rescue ::Toys::StandardCLI::InvalidGlobalSourcesError => e
  # Not Kernel#warn, which -W0 would silence, hiding why toys exited.
  $stderr.puts(e.message) # rubocop:disable Style/StderrPuts
  exit(2)
end
exit(cli.run(::ARGV))
