{ "default-MAKE": { "vars": ["defaults-transition"] , "imports": {"list_provider": ["./", "../..", "field_list_provider"]} , "expression": { "type": "let*" , "bindings": [ ["fieldname", "foreign-defaults"] , ["provider", "MAKE"] , ["transition", {"type": "var", "name": "defaults-transition"}] ] , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"} } } , "default-CMAKE": { "vars": ["defaults-transition"] , "imports": {"list_provider": ["./", "../..", "field_list_provider"]} , "expression": { "type": "let*" , "bindings": [ ["fieldname", "foreign-defaults"] , ["provider", "CMAKE"] , ["transition", {"type": "var", "name": "defaults-transition"}] ] , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"} } } , "default-ENV": { "vars": ["defaults-transition"] , "imports": {"map_provider": ["", "field_map_provider"]} , "expression": { "type": "let*" , "bindings": [ ["fieldname", "foreign-defaults"] , ["provider", "ENV"] , ["transition", {"type": "var", "name": "defaults-transition"}] , ["default", {"type": "empty_map"}] ] , "body": {"type": "CALL_EXPRESSION", "name": "map_provider"} } } , "default-PATH": { "vars": ["defaults-transition"] , "imports": {"list_provider": ["./", "../..", "field_list_provider"]} , "expression": { "type": "let*" , "bindings": [ ["fieldname", "foreign-defaults"] , ["provider", "PATH"] , ["transition", {"type": "var", "name": "defaults-transition"}] ] , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"} } } , "default-TOOLCHAIN": { "vars": ["defaults-transition"] , "imports": {"map_provider": ["", "field_map_provider"]} , "expression": { "type": "let*" , "bindings": [ ["fieldname", "foreign-defaults"] , ["provider", "TOOLCHAIN"] , ["transition", {"type": "var", "name": "defaults-transition"}] , ["default", {"type": "empty_map"}] ] , "body": {"type": "CALL_EXPRESSION", "name": "map_provider"} } } , "default-NON_SYSTEM_TOOLS": { "vars": ["defaults-transition"] , "expression": { "type": "map_union" , "$1": { "type": "foreach" , "var": "x" , "range": {"type": "FIELD", "name": "foreign-defaults"} , "body": { "type": "DEP_PROVIDES" , "dep": {"type": "var", "name": "x"} , "provider": "NON_SYSTEM_TOOLS" , "transition": { "type": "var" , "name": "defaults-transition" , "default": {"type": "empty_map"} } , "default": {"type": "empty_map"} } } } } , "strip-prefix": { "doc": [ "Returns list of artifact maps (each map contains a single artifact)" , "with the given prefix being stripped from their path." ] , "vars": ["artifacts", "paths", "prefix"] , "vars_doc": { "artifacts": ["A single map containing all artifacts."] , "paths": ["List of (unprefixed) artifacts paths to consider."] , "prefix": ["Prefix to strip from the artifact's path."] } , "expression": { "type": "foreach" , "var": "path" , "range": {"type": "var", "name": "paths"} , "body": { "type": "singleton_map" , "key": {"type": "var", "name": "path"} , "value": { "type": "lookup" , "key": { "type": "join" , "separator": "/" , "$1": [ {"type": "var", "name": "prefix"} , {"type": "var", "name": "path"} ] } , "map": {"type": "var", "name": "artifacts"} } } } } }