134def interpret(marker, execution_context=None):
136 Interpret a marker and return a result depending on environment.
138 :param marker: The marker to interpret.
140 :param execution_context: The context used for name lookup.
141 :type execution_context: mapping
144 expr, rest = parse_marker(marker)
145 except Exception
as e:
146 raise SyntaxError(
'Unable to interpret marker syntax: %s: %s' % (marker, e))
147 if rest
and rest[0] !=
'#':
148 raise SyntaxError(
'unexpected trailing data in marker: %s: %s' % (marker, rest))
149 context = dict(DEFAULT_CONTEXT)
150 if execution_context: