MCPcopy Create free account
hub / github.com/python/mypy / bind_as_pattern

Method bind_as_pattern

mypyc/irbuild/match.py:309–321  ·  view source on GitHub ↗
(self, value: Value, new_block: bool = False)

Source from the content-addressed store, hash-verified

307 self.builder.goto(self.code_block)
308
309 def bind_as_pattern(self, value: Value, new_block: bool = False) -> None:
310 if self.as_pattern and self.as_pattern.pattern and self.as_pattern.name:
311 if new_block:
312 self.builder.activate_block(self.code_block)
313 self.code_block = BasicBlock()
314
315 target = self.builder.get_assignment_target(self.as_pattern.name)
316 self.builder.assign(target, value, self.as_pattern.pattern.line)
317
318 self.as_pattern = None
319
320 if new_block:
321 self.builder.goto(self.code_block)
322
323 @contextmanager
324 def enter_subpattern(self, subject: Value) -> Generator[None]:

Callers 2

visit_value_patternMethod · 0.95
visit_class_patternMethod · 0.95

Calls 5

BasicBlockClass · 0.90
get_assignment_targetMethod · 0.80
activate_blockMethod · 0.45
assignMethod · 0.45
gotoMethod · 0.45

Tested by

no test coverage detected