brew/Library/Homebrew/formula_free_port.rb

21 lines
345 B
Ruby
Raw Normal View History

2023-08-08 13:54:59 -07:00
# typed: strict
# frozen_string_literal: true
2020-08-17 06:01:54 +02:00
require "socket"
module Homebrew
2020-08-17 06:01:54 +02:00
# Helper function for finding a free port.
module FreePort
2020-08-17 06:01:54 +02:00
# Returns a free port.
# @api public
2023-08-08 13:54:59 -07:00
sig { returns(Integer) }
def free_port
server = TCPServer.new 0
_, port, = server.addr
server.close
port
end
end
end