def visit_type_var_expr(self, node: TypeVarExpr) -> Node: return TypeVarExpr( node.name(), node.fullname(), self.types(node.values), self.type(node.upper_bound), variance=node.variance)
def bind_new(self, name: str, tvar_expr: TypeVarExpr) -> TypeVarDef: if self.is_class_scope: self.class_id += 1 i = self.class_id else: self.func_id -= 1 i = self.func_id tvar_def = TypeVarDef(name, tvar_expr.fullname(), i, values=tvar_expr.values, upper_bound=tvar_expr.upper_bound, variance=tvar_expr.variance, line=tvar_expr.line, column=tvar_expr.column) self.scope[tvar_expr.fullname()] = tvar_def return tvar_def
def bind_new(self, name: str, tvar_expr: TypeVarExpr) -> TypeVarDef: if self.is_class_scope: self.class_id += 1 i = self.class_id else: self.func_id -= 1 i = self.func_id tvar_def = TypeVarDef(name, tvar_expr.fullname(), i, values=tvar_expr.values, upper_bound=tvar_expr.upper_bound, variance=tvar_expr.variance, line=tvar_expr.line, column=tvar_expr.column) self.scope[tvar_expr.fullname()] = tvar_def return tvar_def
def visit_type_var_expr(self, node: TypeVarExpr) -> Node: return TypeVarExpr(node.name(), node.fullname(), self.types(node.values))
def visit_type_var_expr(self, node: TypeVarExpr) -> Node: return TypeVarExpr(node.name(), node.fullname(), self.types(node.values))
def visit_type_var_expr(self, node: TypeVarExpr) -> Node: return TypeVarExpr(node.name(), node.fullname(), self.types(node.values), self.type(node.upper_bound), variance=node.variance)