body_statement
call
identifier "extend"
argument_list
constant "Cachable"
assignment
constant "DEFAULT_API_FILENAME"
= "="
string
" "\""
string_content "formula.jws.json"
" "\""
call
identifier "private_class_method"
argument_list
simple_symbol ":cache"
call (+34 nodes collapsed)
singleton_method (+70 nodes collapsed)
call (+30 nodes collapsed)
singleton_method (+105 nodes collapsed)
call (+45 nodes collapsed)
singleton_method (+157 nodes collapsed)
call (+26 nodes collapsed)
singleton_method (+71 nodes collapsed)
call
identifier "sig"
block
{ "{"
block_body
call
identifier "returns"
argument_list
( "("
constant "Pathname"
) ")"
} "}"
singleton_method
def "def"
self "self"
. "."
identifier "cached_json_file_path"
body_statement
binary
constant "HOMEBREW_CACHE_API"
/ "/"
constant "DEFAULT_API_FILENAME"
end "end"
call (+83 nodes collapsed)
singleton_method (+38 nodes collapsed)
call (+83 nodes collapsed)
singleton_method (+41 nodes collapsed)
call
identifier "sig"
block
{ "{"
block_body
call
identifier "returns"
argument_list
( "("
scope_resolution
constant "T"
:: "::"
constant "Boolean"
) ")"
} "}"
singleton_method (+188 nodes collapsed)
call
identifier "private_class_method"
argument_list
simple_symbol ":download_and_cache_data!"
call (+24 nodes collapsed)
singleton_method (+47 nodes collapsed)
call (+21 nodes collapsed)
singleton_method (+47 nodes collapsed)
call (+21 nodes collapsed)
singleton_method (+47 nodes collapsed)
call (+24 nodes collapsed)
singleton_method (+51 nodes collapsed)
call (+21 nodes collapsed)
singleton_method (+72 nodes collapsed)
call (+34 nodes collapsed)
singleton_method
def "def"
self "self"
. "."
identifier "generate_formula_struct_hash"
method_parameters
( "("
identifier "hash"
) ")"
body_statement
assignment
identifier "hash"
= "="
call
call
scope_resolution
constant "Homebrew"
:: "::"
constant "API"
. "."
identifier "merge_variations"
argument_list
( "("
identifier "hash"
) ")"
. "."
identifier "dup"
if (+36 nodes collapsed)
assignment (+99 nodes collapsed)
assignment (+31 nodes collapsed)
assignment
identifier "conflicts_with"
= "="
binary
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "conflicts_with"
" "\""
] "]"
|| "||"
array
[ "["
] "]"
assignment
identifier "conflicts_with_reasons"
= "="
binary
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "conflicts_with_reasons"
" "\""
] "]"
|| "||"
array
[ "["
] "]"
assignment (+61 nodes collapsed)
if (+69 nodes collapsed)
if (+69 nodes collapsed)
assignment
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "head_dependency_hash"
" "\""
] "]"
= "="
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "head_dependencies"
" "\""
] "]"
assignment
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "head_url_args"
" "\""
] "]"
= "="
begin
begin "begin"
assignment
identifier "url"
= "="
call (+21 nodes collapsed)
assignment (+62 nodes collapsed)
array
[ "["
identifier "url"
, ","
identifier "specs"
] "]"
end "end"
if (+69 nodes collapsed)
assignment (+25 nodes collapsed)
assignment
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "link_overwrite_paths"
" "\""
] "]"
= "="
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "link_overwrite"
" "\""
] "]"
if (+55 nodes collapsed)
if (+38 nodes collapsed)
assignment
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "requirements_array"
" "\""
] "]"
= "="
element_reference
identifier "hash"
[ "["
string
" "\""
string_content "requirements"
" "\""
] "]"
assignment (+26 nodes collapsed)
if (+170 nodes collapsed)
assignment (+31 nodes collapsed)
assignment (+153 nodes collapsed)
assignment (+130 nodes collapsed)
assignment (+26 nodes collapsed)
comment "# Should match FormulaStruct::PREDICATES"
assignment (+21 nodes collapsed)
assignment (+21 nodes collapsed)
assignment (+21 nodes collapsed)
assignment (+29 nodes collapsed)
assignment (+21 nodes collapsed)
assignment (+21 nodes collapsed)
assignment (+21 nodes collapsed)
assignment (+21 nodes collapsed)
assignment (+29 nodes collapsed)
assignment (+29 nodes collapsed)
assignment (+29 nodes collapsed)
call
constant "FormulaStruct"
. "."
identifier "from_hash"
argument_list
( "("
identifier "hash"
) ")"
end "end"