96 """Internal Worker function to return the frame filter
97 dictionary, depending on the name supplied as an argument. If the
98 name is not "all", "global" or "progspace", it is assumed to name
102 name: The name of the list, as specified by GDB user commands.
105 A dictionary object for a single specified dictionary, or a
106 list containing all the items for "all"
109 gdb.GdbError: A dictionary of that name cannot be found.
118 glob = gdb.frame_filters.values()
120 return_iter = itertools.chain(glob, prog)
122 return_iter = itertools.chain(return_iter, objfile.frame_filters.values())
127 return gdb.frame_filters
129 if name ==
"progspace":
131 return cp.frame_filters
134 if name == objfile.filename:
135 return objfile.frame_filters
137 msg =
"Cannot find frame-filter dictionary for '" + name +
"'"
138 raise gdb.GdbError(msg)
168 if not dap_semantics
and len(sorted_list) == 0:
176 decorator = DAPFrameDecorator
178 decorator = FrameDecorator
179 frame_iterator = map(decorator, frame_iterator)
181 for ff
in sorted_list:
182 frame_iterator = ff.filter(frame_iterator)
189 slice_length = abs(frame_low)
192 sliced = collections.deque()
194 for frame_item
in frame_iterator:
195 if count >= slice_length:
198 sliced.append(frame_item)
210 frame_high = frame_high + 1
212 sliced = itertools.islice(frame_iterator, frame_low, frame_high)