Merge pull request #11666 from carlocab/optim-block

extend/ENV/super: allow `O{1,0}` to accept a block
This commit is contained in:
Carlo Cabrera 2021-07-08 11:38:42 -07:00 committed by GitHub
commit 805f0ba3c7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -337,11 +337,26 @@ module Superenv
append_to_cccfg "O"
end
%w[O1 O0].each do |opt|
define_method opt do
send(:[]=, "HOMEBREW_OPTIMIZATION_LEVEL", opt)
# rubocop: disable Naming/MethodName
# Fixes style error `Naming/MethodName: Use snake_case for method names.`
sig { params(block: T.nilable(T.proc.void)).void }
def O0(&block)
if block
with_env(HOMEBREW_OPTIMIZATION_LEVEL: "O0", &block)
else
self["HOMEBREW_OPTIMIZATION_LEVEL"] = "O0"
end
end
sig { params(block: T.nilable(T.proc.void)).void }
def O1(&block)
if block
with_env(HOMEBREW_OPTIMIZATION_LEVEL: "O1", &block)
else
self["HOMEBREW_OPTIMIZATION_LEVEL"] = "O1"
end
end
# rubocop: enable Naming/MethodName
end
require "extend/os/extend/ENV/super"