| 
									
										
										
										
											2025-01-22 23:17:22 +00:00
										 |  |  | # typed: strict | 
					
						
							| 
									
										
										
										
											2019-04-19 15:38:03 +09:00
										 |  |  | # frozen_string_literal: true | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-10-26 19:49:21 +01:00
										 |  |  | module RuboCop | 
					
						
							|  |  |  |   module Cop | 
					
						
							|  |  |  |     module Cask | 
					
						
							|  |  |  |       # Common functionality for checking homepage stanzas. | 
					
						
							|  |  |  |       module OnHomepageStanza | 
					
						
							|  |  |  |         extend Forwardable | 
					
						
							|  |  |  |         include CaskHelp | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-01-22 23:17:22 +00:00
										 |  |  |         sig { override.params(cask_block: T.nilable(RuboCop::Cask::AST::CaskBlock)).void } | 
					
						
							| 
									
										
										
										
											2018-10-26 19:49:21 +01:00
										 |  |  |         def on_cask(cask_block) | 
					
						
							| 
									
										
										
										
											2025-01-22 23:17:22 +00:00
										 |  |  |           @cask_block = T.let(cask_block, T.nilable(RuboCop::Cask::AST::CaskBlock)) | 
					
						
							| 
									
										
										
										
											2018-10-26 19:49:21 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |           toplevel_stanzas.select(&:homepage?).each do |stanza| | 
					
						
							|  |  |  |             on_homepage_stanza(stanza) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         private | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-01-22 23:17:22 +00:00
										 |  |  |         sig { returns(T.nilable(RuboCop::Cask::AST::CaskBlock)) } | 
					
						
							| 
									
										
										
										
											2018-10-26 19:49:21 +01:00
										 |  |  |         attr_reader :cask_block | 
					
						
							| 
									
										
										
										
											2020-05-12 08:32:27 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-10-26 19:49:21 +01:00
										 |  |  |         def_delegators :cask_block, | 
					
						
							|  |  |  |                        :toplevel_stanzas | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | end |