class documentation

class NodeReplaceVisitor(TraverserVisitor): (source)

View In Hierarchy

Transform some nodes to new identities in an AST. Only nodes that live in the symbol table may be replaced, which simplifies the implementation some. Also replace all references to the old identities.

Method __init__ Undocumented
Method fixup Undocumented
Method fixup_and_reset_typeinfo Fix-up type info and reset subtype caches.
Method fixup_type Undocumented
Method process_base_func Undocumented
Method process_synthetic_type_info Undocumented
Method process_type_info Undocumented
Method process_type_var_def Undocumented
Method replace_statements Undocumented
Method visit_assert_type_expr Undocumented
Method visit_assignment_stmt Undocumented
Method visit_block Undocumented
Method visit_call_expr Undocumented
Method visit_cast_expr Undocumented
Method visit_class_def Undocumented
Method visit_enum_call_expr Undocumented
Method visit_func_def Undocumented
Method visit_lambda_expr Undocumented
Method visit_member_expr Undocumented
Method visit_mypy_file Undocumented
Method visit_name_expr Undocumented
Method visit_namedtuple_expr Undocumented
Method visit_newtype_expr Undocumented
Method visit_overloaded_func_def Undocumented
Method visit_ref_expr Undocumented
Method visit_super_expr Undocumented
Method visit_type_alias Undocumented
Method visit_type_alias_expr Undocumented
Method visit_typeddict_expr Undocumented
Method visit_var Undocumented
Instance Variable replacements Undocumented

Inherited from TraverserVisitor:

Method visit_as_pattern Undocumented
Method visit_assert_stmt Undocumented
Method visit_assignment_expr Undocumented
Method visit_await_expr Undocumented
Method visit_class_pattern Undocumented
Method visit_comparison_expr Undocumented
Method visit_conditional_expr Undocumented
Method visit_decorator Undocumented
Method visit_del_stmt Undocumented
Method visit_dict_expr Undocumented
Method visit_dictionary_comprehension Undocumented
Method visit_expression_stmt Undocumented
Method visit_for_stmt Undocumented
Method visit_func Undocumented
Method visit_generator_expr Undocumented
Method visit_if_stmt Undocumented
Method visit_import Undocumented
Method visit_import_from Undocumented
Method visit_index_expr Undocumented
Method visit_list_comprehension Undocumented
Method visit_list_expr Undocumented
Method visit_mapping_pattern Undocumented
Method visit_match_stmt Undocumented
Method visit_op_expr Undocumented
Method visit_operator_assignment_stmt Undocumented
Method visit_or_pattern Undocumented
Method visit_raise_stmt Undocumented
Method visit_return_stmt Undocumented
Method visit_reveal_expr Undocumented
Method visit_sequence_pattern Undocumented
Method visit_set_comprehension Undocumented
Method visit_set_expr Undocumented
Method visit_slice_expr Undocumented
Method visit_star_expr Undocumented
Method visit_starred_pattern Undocumented
Method visit_try_stmt Undocumented
Method visit_tuple_expr Undocumented
Method visit_type_application Undocumented
Method visit_unary_expr Undocumented
Method visit_value_pattern Undocumented
Method visit_while_stmt Undocumented
Method visit_with_stmt Undocumented
Method visit_yield_expr Undocumented
Method visit_yield_from_expr Undocumented

Inherited from NodeVisitor (via TraverserVisitor):

Method visit__promote_expr Undocumented
Method visit_break_stmt Undocumented
Method visit_bytes_expr Undocumented
Method visit_complex_expr Undocumented
Method visit_continue_stmt Undocumented
Method visit_ellipsis Undocumented
Method visit_float_expr Undocumented
Method visit_global_decl Undocumented
Method visit_import_all Undocumented
Method visit_int_expr Undocumented
Method visit_nonlocal_decl Undocumented
Method visit_paramspec_expr Undocumented
Method visit_pass_stmt Undocumented
Method visit_placeholder_node Undocumented
Method visit_singleton_pattern Undocumented
Method visit_str_expr Undocumented
Method visit_temp_node Undocumented
Method visit_type_var_expr Undocumented
Method visit_type_var_tuple_expr Undocumented
def __init__(self, replacements: dict[SymbolNode, SymbolNode]): (source)
def fixup(self, node: SN) -> SN: (source)

Undocumented

def fixup_and_reset_typeinfo(self, node: TypeInfo) -> TypeInfo: (source)

Fix-up type info and reset subtype caches. This needs to be called at least once per each merged TypeInfo, as otherwise we may leak stale caches.

def fixup_type(self, typ: Type|None): (source)

Undocumented

def process_base_func(self, node: FuncBase): (source)

Undocumented

def process_synthetic_type_info(self, info: TypeInfo): (source)

Undocumented

def process_type_info(self, info: TypeInfo|None): (source)

Undocumented

def process_type_var_def(self, tv: TypeVarType): (source)

Undocumented

def replace_statements(self, nodes: list[Statement]) -> list[Statement]: (source)

Undocumented

def visit_assert_type_expr(self, node: AssertTypeExpr): (source)
def visit_assignment_stmt(self, node: AssignmentStmt): (source)
def visit_block(self, node: Block): (source)
def visit_call_expr(self, node: CallExpr): (source)
def visit_cast_expr(self, node: CastExpr): (source)
def visit_class_def(self, node: ClassDef): (source)
def visit_enum_call_expr(self, node: EnumCallExpr): (source)
def visit_func_def(self, node: FuncDef): (source)
def visit_lambda_expr(self, node: LambdaExpr): (source)
def visit_member_expr(self, node: MemberExpr): (source)
def visit_mypy_file(self, node: MypyFile): (source)
def visit_name_expr(self, node: NameExpr): (source)
def visit_namedtuple_expr(self, node: NamedTupleExpr): (source)
def visit_newtype_expr(self, node: NewTypeExpr): (source)
def visit_overloaded_func_def(self, node: OverloadedFuncDef): (source)
def visit_ref_expr(self, node: RefExpr): (source)

Undocumented

def visit_super_expr(self, node: SuperExpr): (source)
def visit_type_alias(self, node: TypeAlias): (source)
def visit_type_alias_expr(self, node: TypeAliasExpr): (source)
def visit_typeddict_expr(self, node: TypedDictExpr): (source)
def visit_var(self, node: Var): (source)

Undocumented

replacements = (source)

Undocumented