MCPcopy Create free account
hub / github.com/caelan/pddlstream / parse_stream_pddl

Function parse_stream_pddl

pddlstream/algorithms/algorithm.py:150–170  ·  view source on GitHub ↗
(stream_pddl, stream_map, stream_info={}, unit_costs=False, unit_efforts=False)

Source from the content-addressed store, hash-verified

148STATISTICS_INFO = 'statistics_info'
149
150def parse_stream_pddl(stream_pddl, stream_map, stream_info={}, unit_costs=False, unit_efforts=False):
151 if stream_info is None: # NO_INFO
152 stream_info = {}
153 externals = []
154 if stream_pddl is None:
155 return externals # No streams
156 if isinstance(stream_pddl, str):
157 stream_pddl = [stream_pddl]
158 if all(isinstance(e, External) for e in stream_pddl):
159 return stream_pddl
160 if isinstance(stream_map, dict): # DEBUG_MODES
161 stream_map = {k.lower(): v for k, v in stream_map.items()}
162 stream_info = {k.lower(): v for k, v in stream_info.items()}
163 rules = []
164 for pddl in stream_pddl:
165 # TODO: check which functions are actually used and prune the rest
166 parse_streams(externals, rules, pddl, stream_map, stream_info, use_functions=not unit_costs)
167 apply_rules_to_streams(rules, externals)
168 if unit_efforts:
169 set_unit_efforts(externals)
170 return externals
171
172##################################################
173

Callers 2

constraint_satisfactionFunction · 0.90
parse_problemFunction · 0.85

Calls 3

apply_rules_to_streamsFunction · 0.90
parse_streamsFunction · 0.85
set_unit_effortsFunction · 0.85

Tested by

no test coverage detected