MCPcopy Index your code
hub / github.com/python/cpython / run

Method run

Doc/tools/extensions/audit_events.py:129–164  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

127 ]
128
129 def run(self) -> list[nodes.paragraph]:
130 name = self.arguments[0]
131 if len(self.arguments) >= 2 and self.arguments[1]:
132 args = [
133 arg
134 for argument in self.arguments[1].strip("'\"").split(",")
135 if (arg := argument.strip())
136 ]
137 else:
138 args = []
139 ids = []
140 try:
141 target = self.arguments[2].strip("\"'")
142 except (IndexError, TypeError):
143 target = None
144 if not target:
145 target = self.env.audit_events.id_for(name)
146 ids.append(target)
147 self.env.audit_events.add_event(name, args, (self.env.docname, target))
148
149 node = nodes.paragraph("", classes=["audit-hook"], ids=ids)
150 self.set_source_info(node)
151 if self.content:
152 node.rawsource = '\n'.join(self.content) # for gettext
153 self.state.nested_parse(self.content, self.content_offset, node)
154 else:
155 num_args = min(2, len(args))
156 text = self._label[num_args].format(
157 name=f"``{name}``",
158 args=", ".join(f"``{a}``" for a in args),
159 )
160 node.rawsource = text # for gettext
161 parsed, messages = self.state.inline_text(text, self.lineno)
162 node += parsed
163 node += messages
164 return [node]
165
166
167class audit_event_list(nodes.General, nodes.Element): # noqa: N801

Callers

nothing calls this directly

Calls 7

id_forMethod · 0.80
splitMethod · 0.45
stripMethod · 0.45
appendMethod · 0.45
add_eventMethod · 0.45
joinMethod · 0.45
formatMethod · 0.45

Tested by

no test coverage detected