Upgrading mypy 0.780 to 0.781
Unknown0.780 → 0.781
Fetching 1 release from GitHub…0 / 1
UnknownUpgrade verdict
DepDelta is still reading the notes for this range, so breaking changes can't be ruled out yet.
In plain terms
- DepDelta is still reading the release notes in this range, so it can't rule out breaking changes yet.
- This page updates as the notes come in.
Must act Still reading release notes
DepDelta is still reading the release notes in this range. This updates as they come in.
API changes
Generated by DepDelta from published Python source. Not mixed with prose notes.
- added:
function encode_as_c_string(s: str) -> Tuple[str, int] - added:
function encode_bytes_as_c_string(b: bytes) -> Tuple[str, int] - added:
variable CHAR_MAP
- added:
class Emitter - added:
class EmitterContext - added:
class HeaderDeclaration - added:
constructor Emitter(context: EmitterContext, env: Optional[Environment]=…) -> None - added:
constructor EmitterContext(names: NameGenerator, group_name: Optional[str]=…, group_map: Optional[Dict[str, Optional[str]]]=…) -> None - added:
constructor HeaderDeclaration(decl: Union[str, List[str]], defn: Optional[List[str]]=…, *, dependencies: Optional[Set[str]]=…, is_type: bool=…, needs_export: bool=…) -> None - added:
method Emitter.attr(name: str) -> str - added:
method Emitter.c_error_value(rtype: RType) -> str - added:
method Emitter.c_undefined_value(rtype: RType) -> str - added:
method Emitter.ctype(rtype: RType) -> str - added:
method Emitter.ctype_spaced(rtype: RType) -> str - added:
method Emitter.declare_tuple_struct(tuple_type: RTuple) -> None - added:
method Emitter.dedent() -> None - added:
method Emitter.emit_arg_check(src: str, dest: str, typ: RType, check: str, optional: bool) -> None - added:
method Emitter.emit_box(src: str, dest: str, typ: RType, declare_dest: bool=…, can_borrow: bool=…) -> None - added:
method Emitter.emit_cast(src: str, dest: str, typ: RType, declare_dest: bool=…, custom_message: Optional[str]=…, optional: bool=…, src_type: Optional[RType]=…, likely: bool=…) -> None - added:
method Emitter.emit_dec_ref(dest: str, rtype: RType, is_xdec: bool=…) -> None - added:
method Emitter.emit_error_check(value: str, rtype: RType, failure: str) -> None - added:
method Emitter.emit_from_emitter(emitter: Emitter) -> None - added:
method Emitter.emit_gc_clear(target: str, rtype: RType) -> None - added:
method Emitter.emit_gc_visit(target: str, rtype: RType) -> None - added:
method Emitter.emit_inc_ref(dest: str, rtype: RType) -> None - added:
method Emitter.emit_label(label: Union[BasicBlock, str]) -> None - added:
method Emitter.emit_line(line: str=…) -> None - added:
method Emitter.emit_lines(*lines: str) -> None - added:
method Emitter.emit_printf(fmt: str, *args: str) -> None - added:
method Emitter.emit_tuple_cast(src: str, dest: str, typ: RTuple, declare_dest: bool, err: str, src_type: Optional[RType]) -> None - added:
method Emitter.emit_unbox(src: str, dest: str, typ: RType, custom_failure: Optional[str]=…, declare_dest: bool=…, borrow: bool=…, optional: bool=…) -> None - added:
method Emitter.emit_undefined_attr_check(rtype: RType, attr_expr: str, compare: str, unlikely: bool=…) -> None - added:
method Emitter.emit_union_cast(src: str, dest: str, typ: RUnion, declare_dest: bool, err: str, optional: bool, src_type: Optional[RType]) -> None - added:
method Emitter.get_group_prefix(obj: Union[ClassIR, FuncDecl]) -> str - added:
method Emitter.get_module_group_prefix(module_name: str) -> str - added:
method Emitter.indent() -> None - added:
method Emitter.label(label: BasicBlock) -> str - added:
method Emitter.native_function_name(fn: FuncDecl) -> str - added:
method Emitter.new_label() -> str - added:
method Emitter.pretty_name(typ: RType) -> str - added:
method Emitter.reg(reg: Value) -> str - added:
method Emitter.static_name(id: str, module: Optional[str], prefix: str=…) -> str - added:
method Emitter.temp_name() -> str - added:
method Emitter.tuple_c_declaration(rtuple: RTuple) -> List[str] - added:
method Emitter.tuple_undefined_check_cond(rtuple: RTuple, tuple_expr_in_c: str, c_type_compare_val: Callable[[RType], str], compare: str) -> str - added:
method Emitter.tuple_undefined_value(rtuple: RTuple) -> str - added:
method Emitter.tuple_undefined_value_helper(rtuple: RTuple) -> List[str] - added:
method Emitter.type_struct_name(cl: ClassIR) -> str
- added:
function generate_class(cl: ClassIR, module: str, emitter: Emitter) -> None - added:
function generate_class_type_decl(cl: ClassIR, c_emitter: Emitter, external_emitter: Emitter, emitter: Emitter) -> None - added:
function generate_clear_for_class(cl: ClassIR, func_name: str, emitter: Emitter) -> None - added:
function generate_constructor_for_class(cl: ClassIR, fn: FuncDecl, init_fn: Optional[FuncIR], setup_name: str, vtable_name: str, emitter: Emitter) -> None - added:
function generate_dealloc_for_class(cl: ClassIR, dealloc_func_name: str, clear_func_name: str, emitter: Emitter) -> None - added:
function generate_getseter_declarations(cl: ClassIR, emitter: Emitter) -> None - added:
function generate_getseters(cl: ClassIR, emitter: Emitter) -> None - added:
function generate_getseters_table(cl: ClassIR, name: str, emitter: Emitter) -> None - added:
function generate_getter(cl: ClassIR, attr: str, rtype: RType, emitter: Emitter) -> None - added:
function generate_init_for_class(cl: ClassIR, init_fn: FuncIR, emitter: Emitter) -> str - added:
function generate_methods_table(cl: ClassIR, name: str, emitter: Emitter) -> None - added:
function generate_new_for_class(cl: ClassIR, func_name: str, vtable_name: str, setup_name: str, emitter: Emitter) -> None - added:
function generate_object_struct(cl: ClassIR, emitter: Emitter) -> None - added:
function generate_offset_table(trait_offset_table_name: str, emitter: Emitter, trait: ClassIR, cl: ClassIR) -> None - added:
function generate_property_setter(cl: ClassIR, attr: str, arg_type: RType, func_ir: FuncIR, emitter: Emitter) -> None - added:
function generate_readonly_getter(cl: ClassIR, attr: str, rtype: RType, func_ir: FuncIR, emitter: Emitter) -> None - added:
function generate_setter(cl: ClassIR, attr: str, rtype: RType, emitter: Emitter) -> None - added:
function generate_setup_for_class(cl: ClassIR, func_name: str, defaults_fn: Optional[FuncIR], vtable_name: str, shadow_vtable_name: Optional[str], emitter: Emitter) -> None - added:
function generate_side_table_for_class(cl: ClassIR, name: str, type: str, slots: Dict[str, str], emitter: Emitter) -> Optional[str] - added:
function generate_slots(cl: ClassIR, table: SlotTable, emitter: Emitter) -> Dict[str, str] - added:
function generate_traverse_for_class(cl: ClassIR, func_name: str, emitter: Emitter) -> None - added:
function generate_vtable(entries: VTableEntries, vtable_name: str, emitter: Emitter, subtables: List[Tuple[ClassIR, str, str]], shadow: bool) -> None - added:
function generate_vtables(base: ClassIR, vtable_setup_name: str, vtable_name: str, emitter: Emitter, shadow: bool) -> str - added:
function getter_name(cl: ClassIR, attribute: str, names: NameGenerator) -> str - added:
function native_slot(cl: ClassIR, fn: FuncIR, emitter: Emitter) -> str - added:
function setter_name(cl: ClassIR, attribute: str, names: NameGenerator) -> str - added:
function wrapper_slot(cl: ClassIR, fn: FuncIR, emitter: Emitter) -> str - added:
variable ALWAYS_FILL - added:
variable AS_ASYNC_SLOT_DEFS - added:
variable AS_MAPPING_SLOT_DEFS - added:
variable AS_NUMBER_SLOT_DEFS - added:
variable SIDE_TABLES - added:
variable SLOT_DEFS - added:
variable SlotGenerator - added:
variable SlotTable
- added:
class FunctionEmitterVisitor(OpVisitor[None], EmitterInterface) - added:
constructor FunctionEmitterVisitor(emitter: Emitter, declarations: Emitter, source_path: str, module_name: str) -> None - added:
field FunctionEmitterVisitor.PREFIX_MAP - added:
function generate_native_function(fn: FuncIR, emitter: Emitter, source_path: str, module_name: str) -> None - added:
function native_function_header(fn: FuncDecl, emitter: Emitter) -> str - added:
function native_function_type(fn: FuncIR, emitter: Emitter) -> str - added:
method FunctionEmitterVisitor.c_error_value(rtype: RType) -> str - added:
method FunctionEmitterVisitor.c_undefined_value(rtype: RType) -> str - added:
method FunctionEmitterVisitor.ctype(rtype: RType) -> str - added:
method FunctionEmitterVisitor.emit_dec_ref(dest: str, rtype: RType, is_xdec: bool) -> None - added:
method FunctionEmitterVisitor.emit_declaration(line: str) -> None - added:
method FunctionEmitterVisitor.emit_inc_ref(dest: str, rtype: RType) -> None - added:
method FunctionEmitterVisitor.emit_line(line: str) -> None - added:
method FunctionEmitterVisitor.emit_lines(*lines: str) -> None - added:
method FunctionEmitterVisitor.get_attr_expr(obj: str, op: Union[GetAttr, SetAttr], decl_cl: ClassIR) -> str - added:
method FunctionEmitterVisitor.get_dest_assign(dest: Value) -> str - added:
method FunctionEmitterVisitor.label(label: BasicBlock) -> str - added:
method FunctionEmitterVisitor.reg(reg: Value) -> str - added:
method FunctionEmitterVisitor.temp_name() -> str - added:
method FunctionEmitterVisitor.visit_assign(op: Assign) -> None - added:
method FunctionEmitterVisitor.visit_box(op: Box) -> None - added:
method FunctionEmitterVisitor.visit_branch(op: Branch) -> None - added:
method FunctionEmitterVisitor.visit_call(op: Call) -> None - added:
method FunctionEmitterVisitor.visit_call_c(op: CallC) -> None - added:
method FunctionEmitterVisitor.visit_cast(op: Cast) -> None - added:
method FunctionEmitterVisitor.visit_dec_ref(op: DecRef) -> None - added:
method FunctionEmitterVisitor.visit_get_attr(op: GetAttr) -> None - added:
method FunctionEmitterVisitor.visit_goto(op: Goto) -> None - added:
method FunctionEmitterVisitor.visit_inc_ref(op: IncRef) -> None - added:
method FunctionEmitterVisitor.visit_init_static(op: InitStatic) -> None - added:
method FunctionEmitterVisitor.visit_load_error_value(op: LoadErrorValue) -> None - added:
method FunctionEmitterVisitor.visit_load_int(op: LoadInt) -> None - added:
method FunctionEmitterVisitor.visit_load_static(op: LoadStatic) -> None - added:
method FunctionEmitterVisitor.visit_method_call(op: MethodCall) -> None - added:
method FunctionEmitterVisitor.visit_primitive_op(op: PrimitiveOp) -> None - added:
method FunctionEmitterVisitor.visit_raise_standard_error(op: RaiseStandardError) -> None - added:
method FunctionEmitterVisitor.visit_return(op: Return) -> None - added:
method FunctionEmitterVisitor.visit_set_attr(op: SetAttr) -> None - added:
method FunctionEmitterVisitor.visit_tuple_get(op: TupleGet) -> None - added:
method FunctionEmitterVisitor.visit_tuple_set(op: TupleSet) -> None - added:
method FunctionEmitterVisitor.visit_unbox(op: Unbox) -> None - added:
method FunctionEmitterVisitor.visit_unreachable(op: Unreachable) -> None - added:
variable DEBUG_ERRORS
- added:
class GroupGenerator - added:
class MarkedDeclaration - added:
class MypycPlugin(Plugin) - added:
constructor GroupGenerator(literals: LiteralsMap, modules: List[Tuple[str, ModuleIR]], source_paths: Dict[str, str], group_name: Optional[str], group_map: Dict[str, Optional[str]], names: NameGenerator, compiler_options: CompilerOptions) -> None - added:
constructor MarkedDeclaration(declaration: HeaderDeclaration, mark: bool) -> None - added:
constructor MypycPlugin(options: Options, compiler_options: CompilerOptions, groups: Groups) -> None - added:
function compile_ir_to_c(groups: Groups, modules: ModuleIRs, result: BuildResult, mapper: Mapper, compiler_options: CompilerOptions) -> Dict[Optional[str], List[Tuple[str, str]]] - added:
function compile_modules_to_c(result: BuildResult, compiler_options: CompilerOptions, errors: Errors, groups: Groups) -> Tuple[ModuleIRs, List[FileContents]] - added:
function compile_modules_to_ir(result: BuildResult, mapper: Mapper, compiler_options: CompilerOptions, errors: Errors) -> ModuleIRs - added:
function compile_scc_to_ir(scc: List[MypyFile], result: BuildResult, mapper: Mapper, compiler_options: CompilerOptions, errors: Errors) -> ModuleIRs - added:
function generate_function_declaration(fn: FuncIR, emitter: Emitter) -> None - added:
function get_ir_cache_name(id: str, path: str, options: Options) -> str - added:
function get_state_ir_cache_name(state: State) -> str - added:
function group_dir(group_name: str) -> str - added:
function load_scc_from_cache(scc: List[MypyFile], result: BuildResult, mapper: Mapper, ctx: DeserMaps) -> ModuleIRs - added:
function parse_and_typecheck(sources: List[BuildSource], options: Options, compiler_options: CompilerOptions, groups: Groups, fscache: Optional[FileSystemCache]=…, alt_lib_path: Optional[str]=…) -> BuildResult - added:
function pointerize(decl: str, name: str) -> str - added:
function sort_classes(classes: List[Tuple[str, ClassIR]]) -> List[Tuple[str, ClassIR]] - added:
function toposort(deps: Dict[T, Set[T]]) -> List[T] - added:
function write_cache(modules: ModuleIRs, result: BuildResult, group_map: Dict[str, Optional[str]], ctext: Dict[Optional[str], List[Tuple[str, str]]]) -> None - added:
method GroupGenerator.declare_finals(module: str, final_names: Iterable[Tuple[str, RType]], emitter: Emitter) -> None - added:
method GroupGenerator.declare_global(type_spaced: str, name: str, *, initializer: Optional[str]=…) -> None - added:
method GroupGenerator.declare_imports(imps: Iterable[str], emitter: Emitter) -> None - added:
method GroupGenerator.declare_internal_globals(module_name: str, emitter: Emitter) -> None - added:
method GroupGenerator.declare_module(module_name: str, emitter: Emitter) -> None - added:
method GroupGenerator.declare_static_pyobject(identifier: str, emitter: Emitter) -> None - added:
method GroupGenerator.final_definition(module: str, name: str, typ: RType, emitter: Emitter) -> str - added:
method GroupGenerator.generate_c_for_modules() -> List[Tuple[str, str]] - added:
method GroupGenerator.generate_export_table(decl_emitter: Emitter, code_emitter: Emitter) -> None - added:
method GroupGenerator.generate_globals_init(emitter: Emitter) -> None - added:
method GroupGenerator.generate_module_def(emitter: Emitter, module_name: str, module: ModuleIR) -> None - added:
method GroupGenerator.generate_shared_lib_init(emitter: Emitter) -> None - added:
method GroupGenerator.generate_top_level_call(module: ModuleIR, emitter: Emitter) -> None - added:
method GroupGenerator.module_internal_static_name(module_name: str, emitter: Emitter) -> str - added:
method GroupGenerator.toposort_declarations() -> List[HeaderDeclaration] - added:
method MypycPlugin.get_additional_deps(file: MypyFile) -> List[Tuple[int, str, int]] - added:
method MypycPlugin.report_config_data(ctx: ReportConfigContext) -> Optional[Tuple[Optional[str], List[str]]] - added:
property GroupGenerator.group_suffix -> str - added:
property GroupGenerator.short_group_suffix -> str - added:
variable FileContents - added:
variable Group - added:
variable Groups - added:
variable T
- added:
function generate_arg_check(name: str, typ: RType, emitter: Emitter, error_code: str, optional: bool=…) -> None - added:
function generate_bool_wrapper(cl: ClassIR, fn: FuncIR, emitter: Emitter) -> str - added:
function generate_dunder_wrapper(cl: ClassIR, fn: FuncIR, emitter: Emitter) -> str - added:
function generate_get_wrapper(cl: ClassIR, fn: FuncIR, emitter: Emitter) -> str - added:
function generate_hash_wrapper(cl: ClassIR, fn: FuncIR, emitter: Emitter) -> str - added:
function generate_richcompare_wrapper(cl: ClassIR, emitter: Emitter) -> Optional[str] - added:
function generate_wrapper_core(fn: FuncIR, emitter: Emitter, optional_args: Optional[List[RuntimeArg]]=…, arg_names: Optional[List[str]]=…, cleanups: Optional[List[str]]=…, traceback_code: Optional[str]=…) -> None - added:
function generate_wrapper_function(fn: FuncIR, emitter: Emitter, source_path: str, module_name: str) -> None - added:
function make_format_string(func_name: str, groups: List[List[RuntimeArg]]) -> str - added:
function wrapper_function_header(fn: FuncIR, names: NameGenerator) -> str - added:
variable RICHCOMPARE_OPS
- added:
class ClassIR - added:
class NonExtClassInfo - added:
constructor ClassIR(name: str, module_name: str, is_trait: bool=…, is_generated: bool=…, is_abstract: bool=…, is_ext_class: bool=…) -> None - added:
constructor NonExtClassInfo(dict: Value, bases: Value, anns: Value, metaclass: Value) -> None - added:
function all_concrete_classes(class_ir: ClassIR) -> Optional[List[ClassIR]] - added:
function deserialize_vtable(data: List[JsonDict], ctx: DeserMaps) -> VTableEntries - added:
function deserialize_vtable_entry(data: JsonDict, ctx: DeserMaps) -> VTableMethod - added:
function serialize_vtable(vtable: VTableEntries) -> List[JsonDict] - added:
function serialize_vtable_entry(entry: VTableMethod) -> JsonDict - added:
method ClassIR.attr_details(name: str) -> Tuple[RType, ClassIR] - added:
method ClassIR.attr_type(name: str) -> RType - added:
method ClassIR.concrete_subclasses() -> Optional[List[ClassIR]] - added:
method ClassIR.get_method(name: str) -> Optional[FuncIR] - added:
method ClassIR.get_method_and_class(name: str) -> Optional[Tuple[FuncIR, ClassIR]] - added:
method ClassIR.has_attr(name: str) -> bool - added:
method ClassIR.has_method(name: str) -> bool - added:
method ClassIR.is_method_final(name: str) -> bool - added:
method ClassIR.method_decl(name: str) -> FuncDecl - added:
method ClassIR.method_sig(name: str) -> FuncSignature - added:
method ClassIR.name_prefix(names: NameGenerator) -> str - added:
method ClassIR.real_base() -> Optional[ClassIR] - added:
method ClassIR.serialize() -> JsonDict - added:
method ClassIR.struct_name(names: NameGenerator) -> str - added:
method ClassIR.subclasses() -> Optional[Set[ClassIR]] - added:
method ClassIR.vtable_entry(name: str) -> int - added:
property ClassIR.fullname -> str - added:
static method ClassIR.deserialize(data: JsonDict, ctx: DeserMaps) -> ClassIR - added:
variable VTableEntries - added:
variable VTableMethod
- added:
class FuncDecl - added:
class FuncIR - added:
class FuncSignature - added:
class RuntimeArg - added:
constructor FuncDecl(name: str, class_name: Optional[str], module_name: str, sig: FuncSignature, kind: int=…, is_prop_setter: bool=…, is_prop_getter: bool=…) -> None - added:
constructor FuncIR(decl: FuncDecl, blocks: List[BasicBlock], env: Environment, line: int=…, traceback_name: Optional[str]=…) -> None - added:
constructor FuncSignature(args: Sequence[RuntimeArg], ret_type: RType) -> None - added:
constructor RuntimeArg(name: str, typ: RType, kind: int=…) -> None - added:
function format_blocks(blocks: List[BasicBlock], env: Environment) -> List[str] - added:
function format_func(fn: FuncIR) -> List[str] - added:
method FuncDecl.cname(names: NameGenerator) -> str - added:
method FuncDecl.serialize() -> JsonDict - added:
method FuncIR.cname(names: NameGenerator) -> str - added:
method FuncIR.serialize() -> JsonDict - added:
method FuncSignature.serialize() -> JsonDict - added:
method RuntimeArg.serialize() -> JsonDict - added:
property FuncDecl.fullname -> str - added:
property FuncDecl.shortname -> str - added:
property FuncIR.args -> Sequence[RuntimeArg] - added:
property FuncIR.class_name -> Optional[str] - added:
property FuncIR.fullname -> str - added:
property FuncIR.name -> str - added:
property FuncIR.ret_type -> RType - added:
property FuncIR.sig -> FuncSignature - added:
property RuntimeArg.optional -> bool - added:
static method FuncDecl.compute_shortname(class_name: Optional[str], name: str) -> str - added:
static method FuncDecl.deserialize(data: JsonDict, ctx: DeserMaps) -> FuncDecl - added:
static method FuncDecl.get_name_from_json(f: JsonDict) -> str - added:
static method FuncIR.deserialize(data: JsonDict, ctx: DeserMaps) -> FuncIR - added:
static method FuncSignature.deserialize(data: JsonDict, ctx: DeserMaps) -> FuncSignature - added:
static method RuntimeArg.deserialize(data: JsonDict, ctx: DeserMaps) -> RuntimeArg - added:
variable FUNC_CLASSMETHOD - added:
variable FUNC_NORMAL - added:
variable FUNC_STATICMETHOD - added:
variable INVALID_FUNC_DEF
- added:
class ModuleIR - added:
constructor ModuleIR(fullname: str, imports: List[str], functions: List[FuncIR], classes: List[ClassIR], final_names: List[Tuple[str, RType]]) -> None - added:
function deserialize_modules(data: Dict[str, JsonDict], ctx: DeserMaps) -> Dict[str, ModuleIR] - added:
function format_modules(modules: ModuleIRs) -> List[str] - added:
method ModuleIR.serialize() -> JsonDict - added:
static method ModuleIR.deserialize(data: JsonDict, ctx: DeserMaps) -> ModuleIR - added:
variable ModuleIRs
- added:
class Assign(Op) - added:
class AssignmentTarget(object) - added:
class AssignmentTargetAttr(AssignmentTarget) - added:
class AssignmentTargetIndex(AssignmentTarget) - added:
class AssignmentTargetRegister(AssignmentTarget) - added:
class AssignmentTargetTuple(AssignmentTarget) - added:
class BasicBlock - added:
class Box(RegisterOp) - added:
class Branch(ControlOp) - added:
class Call(RegisterOp) - added:
class CallC(RegisterOp) - added:
class Cast(RegisterOp) - added:
class ControlOp(Op) - added:
class DecRef(RegisterOp) - added:
class EmitterInterface - added:
class Environment - added:
class GetAttr(RegisterOp) - added:
class Goto(ControlOp) - added:
class IncRef(RegisterOp) - added:
class InitStatic(RegisterOp) - added:
class LoadErrorValue(RegisterOp) - added:
class LoadInt(RegisterOp) - added:
class LoadStatic(RegisterOp) - added:
class MethodCall(RegisterOp) - added:
class Op(Value) - added:
class OpVisitor(Generic[T]) - added:
class PrimitiveOp(RegisterOp) - added:
class RaiseStandardError(RegisterOp) - added:
class Register(Value) - added:
class RegisterOp(Op) - added:
class Return(ControlOp) - added:
class SetAttr(RegisterOp) - added:
class TupleGet(RegisterOp) - added:
class TupleSet(RegisterOp) - added:
class Unbox(RegisterOp) - added:
class Unreachable(ControlOp) - added:
class Value - added:
constructor Assign(dest: Register, src: Value, line: int=…) -> None - added:
constructor AssignmentTargetAttr(obj: Value, attr: str) -> None - added:
constructor AssignmentTargetIndex(base: Value, index: Value) -> None - added:
constructor AssignmentTargetRegister(register: Register) -> None - added:
constructor AssignmentTargetTuple(items: List[AssignmentTarget], star_idx: Optional[int]=…) -> None - added:
constructor BasicBlock(label: int=…) -> None - added:
constructor Box(src: Value, line: int=…) -> None - added:
constructor Branch(left: Value, true_label: BasicBlock, false_label: BasicBlock, op: int, line: int=…, *, rare: bool=…) -> None - added:
constructor Call(fn: FuncDecl, args: Sequence[Value], line: int) -> None - added:
constructor CallC(function_name: str, args: List[Value], ret_type: RType, line: int) -> None - added:
constructor Cast(src: Value, typ: RType, line: int) -> None - added:
constructor DecRef(src: Value, is_xdec: bool=…, line: int=…) -> None - added:
constructor Environment(name: Optional[str]=…) -> None - added:
constructor GetAttr(obj: Value, attr: str, line: int) -> None - added:
constructor Goto(label: BasicBlock, line: int=…) -> None - added:
constructor IncRef(src: Value, line: int=…) -> None - added:
constructor InitStatic(value: Value, identifier: str, module_name: Optional[str]=…, namespace: str=…, line: int=…) -> None - added:
constructor LoadErrorValue(rtype: RType, line: int=…, is_borrowed: bool=…, undefines: bool=…) -> None - added:
constructor LoadInt(value: int, line: int=…) -> None - added:
constructor LoadStatic(type: RType, identifier: str, module_name: Optional[str]=…, namespace: str=…, line: int=…, ann: object=…) -> None - added:
constructor MethodCall(obj: Value, method: str, args: List[Value], line: int=…) -> None - added:
constructor Op(line: int) -> None - added:
constructor PrimitiveOp(args: List[Value], desc: OpDescription, line: int) -> None - added:
constructor RaiseStandardError(class_name: str, value: Optional[Union[str, Value]], line: int) -> None - added:
constructor Register(type: RType, line: int=…, is_arg: bool=…, name: str=…) -> None - added:
constructor RegisterOp(line: int) -> None - added:
constructor Return(reg: Value, line: int=…) -> None - added:
constructor SetAttr(obj: Value, attr: str, src: Value, line: int) -> None - added:
constructor TupleGet(src: Value, index: int, line: int) -> None - added:
constructor TupleSet(items: List[Value], line: int) -> None - added:
constructor Unbox(src: Value, typ: RType, line: int) -> None - added:
constructor Unreachable(line: int=…) -> None - added:
constructor Value(line: int) -> None - added:
field Assign.error_kind - added:
field AssignmentTarget.type - added:
field Box.error_kind - added:
field Branch.BOOL_EXPR - added:
field Branch.IS_ERROR - added:
field Branch.error_kind - added:
field Branch.op_names - added:
field Call.error_kind - added:
field CallC.error_kind - added:
field Cast.error_kind - added:
field DecRef.error_kind - added:
field GetAttr.error_kind - added:
field Goto.error_kind - added:
field IncRef.error_kind - added:
field InitStatic.error_kind - added:
field LoadErrorValue.error_kind - added:
field LoadInt.error_kind - added:
field LoadStatic.error_kind - added:
field LoadStatic.is_borrowed - added:
field MethodCall.error_kind - added:
field RaiseStandardError.ASSERTION_ERROR - added:
field RaiseStandardError.RUNTIME_ERROR - added:
field RaiseStandardError.STOP_ITERATION - added:
field RaiseStandardError.UNBOUND_LOCAL_ERROR - added:
field RaiseStandardError.VALUE_ERROR - added:
field RaiseStandardError.error_kind - added:
field RegisterOp.error_kind - added:
field Return.error_kind - added:
field SetAttr.error_kind - added:
field TupleGet.error_kind - added:
field TupleSet.error_kind - added:
field Unbox.error_kind - added:
field Unreachable.error_kind - added:
field Value.is_borrowed - added:
field Value.line - added:
field Value.name - added:
field Value.type - added:
method Assign.accept(visitor: OpVisitor[T]) -> T - added:
method Assign.sources() -> List[Value] - added:
method Assign.stolen() -> List[Value] - added:
method Assign.to_str(env: Environment) -> str - added:
method AssignmentTarget.to_str(env: Environment) -> str - added:
method AssignmentTargetAttr.to_str(env: Environment) -> str - added:
method AssignmentTargetIndex.to_str(env: Environment) -> str - added:
method AssignmentTargetRegister.to_str(env: Environment) -> str - added:
method AssignmentTargetTuple.to_str(env: Environment) -> str - added:
method Box.accept(visitor: OpVisitor[T]) -> T - added:
method Box.sources() -> List[Value] - added:
method Box.stolen() -> List[Value] - added:
method Box.to_str(env: Environment) -> str - added:
method Branch.accept(visitor: OpVisitor[T]) -> T - added:
method Branch.invert() -> None - added:
method Branch.sources() -> List[Value] - added:
method Branch.to_str(env: Environment) -> str - added:
method Call.accept(visitor: OpVisitor[T]) -> T - added:
method Call.sources() -> List[Value] - added:
method Call.to_str(env: Environment) -> str - added:
method CallC.accept(visitor: OpVisitor[T]) -> T - added:
method CallC.sources() -> List[Value] - added:
method CallC.to_str(env: Environment) -> str - added:
method Cast.accept(visitor: OpVisitor[T]) -> T - added:
method Cast.sources() -> List[Value] - added:
method Cast.stolen() -> List[Value] - added:
method Cast.to_str(env: Environment) -> str - added:
method DecRef.accept(visitor: OpVisitor[T]) -> T - added:
method DecRef.sources() -> List[Value] - added:
method DecRef.to_str(env: Environment) -> str - added:
method EmitterInterface.c_error_value(rtype: RType) -> str - added:
method EmitterInterface.emit_declaration(line: str) -> None - added:
method EmitterInterface.emit_line(line: str) -> None - added:
method EmitterInterface.emit_lines(*lines: str) -> None - added:
method EmitterInterface.reg(name: Value) -> str - added:
method EmitterInterface.temp_name() -> str - added:
method Environment.add(reg: Value, name: str) -> None - added:
method Environment.add_local(symbol: SymbolNode, typ: RType, is_arg: bool=…) -> Register - added:
method Environment.add_local_reg(symbol: SymbolNode, typ: RType, is_arg: bool=…) -> AssignmentTargetRegister - added:
method Environment.add_op(reg: RegisterOp) -> None - added:
method Environment.add_target(symbol: SymbolNode, target: AssignmentTarget) -> AssignmentTarget - added:
method Environment.add_temp(typ: RType) -> Register - added:
method Environment.format(fmt: str, *args: Any) -> str - added:
method Environment.lookup(symbol: SymbolNode) -> AssignmentTarget - added:
method Environment.regs() -> Iterable[Value] - added:
method Environment.to_lines() -> List[str] - added:
method GetAttr.accept(visitor: OpVisitor[T]) -> T - added:
method GetAttr.sources() -> List[Value] - added:
method GetAttr.to_str(env: Environment) -> str - added:
method Goto.accept(visitor: OpVisitor[T]) -> T - added:
method Goto.sources() -> List[Value] - added:
method Goto.to_str(env: Environment) -> str - added:
method IncRef.accept(visitor: OpVisitor[T]) -> T - added:
method IncRef.sources() -> List[Value] - added:
method IncRef.to_str(env: Environment) -> str - added:
method InitStatic.accept(visitor: OpVisitor[T]) -> T - added:
method InitStatic.sources() -> List[Value] - added:
method InitStatic.to_str(env: Environment) -> str - added:
method LoadErrorValue.accept(visitor: OpVisitor[T]) -> T - added:
method LoadErrorValue.sources() -> List[Value] - added:
method LoadErrorValue.to_str(env: Environment) -> str - added:
method LoadInt.accept(visitor: OpVisitor[T]) -> T - added:
method LoadInt.sources() -> List[Value] - added:
method LoadInt.to_str(env: Environment) -> str - added:
method LoadStatic.accept(visitor: OpVisitor[T]) -> T - added:
method LoadStatic.sources() -> List[Value] - added:
method LoadStatic.to_str(env: Environment) -> str - added:
method MethodCall.accept(visitor: OpVisitor[T]) -> T - added:
method MethodCall.sources() -> List[Value] - added:
method MethodCall.to_str(env: Environment) -> str - added:
method Op.accept(visitor: OpVisitor[T]) -> T - added:
method Op.can_raise() -> bool - added:
method Op.sources() -> List[Value] - added:
method Op.stolen() -> List[Value] - added:
method Op.unique_sources() -> List[Value] - added:
method OpVisitor.visit_assign(op: Assign) -> T - added:
method OpVisitor.visit_box(op: Box) -> T - added:
method OpVisitor.visit_branch(op: Branch) -> T - added:
method OpVisitor.visit_call(op: Call) -> T - added:
method OpVisitor.visit_call_c(op: CallC) -> T - added:
method OpVisitor.visit_cast(op: Cast) -> T - added:
method OpVisitor.visit_dec_ref(op: DecRef) -> T - added:
method OpVisitor.visit_get_attr(op: GetAttr) -> T - added:
method OpVisitor.visit_goto(op: Goto) -> T - added:
method OpVisitor.visit_inc_ref(op: IncRef) -> T - added:
method OpVisitor.visit_init_static(op: InitStatic) -> T - added:
method OpVisitor.visit_load_error_value(op: LoadErrorValue) -> T - added:
method OpVisitor.visit_load_int(op: LoadInt) -> T - added:
method OpVisitor.visit_load_static(op: LoadStatic) -> T - added:
method OpVisitor.visit_method_call(op: MethodCall) -> T - added:
method OpVisitor.visit_primitive_op(op: PrimitiveOp) -> T - added:
method OpVisitor.visit_raise_standard_error(op: RaiseStandardError) -> T - added:
method OpVisitor.visit_return(op: Return) -> T - added:
method OpVisitor.visit_set_attr(op: SetAttr) -> T - added:
method OpVisitor.visit_tuple_get(op: TupleGet) -> T - added:
method OpVisitor.visit_tuple_set(op: TupleSet) -> T - added:
method OpVisitor.visit_unbox(op: Unbox) -> T - added:
method OpVisitor.visit_unreachable(op: Unreachable) -> T - added:
method PrimitiveOp.accept(visitor: OpVisitor[T]) -> T - added:
method PrimitiveOp.sources() -> List[Value] - added:
method PrimitiveOp.stolen() -> List[Value] - added:
method PrimitiveOp.to_str(env: Environment) -> str - added:
method RaiseStandardError.accept(visitor: OpVisitor[T]) -> T - added:
method RaiseStandardError.sources() -> List[Value] - added:
method RaiseStandardError.to_str(env: Environment) -> str - added:
method Register.to_str(env: Environment) -> str - added:
method RegisterOp.can_raise() -> bool - added:
method Return.accept(visitor: OpVisitor[T]) -> T - added:
method Return.sources() -> List[Value] - added:
method Return.stolen() -> List[Value] - added:
method Return.to_str(env: Environment) -> str - added:
method SetAttr.accept(visitor: OpVisitor[T]) -> T - added:
method SetAttr.sources() -> List[Value] - added:
method SetAttr.stolen() -> List[Value] - added:
method SetAttr.to_str(env: Environment) -> str - added:
method TupleGet.accept(visitor: OpVisitor[T]) -> T - added:
method TupleGet.sources() -> List[Value] - added:
method TupleGet.to_str(env: Environment) -> str - added:
method TupleSet.accept(visitor: OpVisitor[T]) -> T - added:
method TupleSet.sources() -> List[Value] - added:
method TupleSet.to_str(env: Environment) -> str - added:
method Unbox.accept(visitor: OpVisitor[T]) -> T - added:
method Unbox.sources() -> List[Value] - added:
method Unbox.to_str(env: Environment) -> str - added:
method Unreachable.accept(visitor: OpVisitor[T]) -> T - added:
method Unreachable.sources() -> List[Value] - added:
method Unreachable.to_str(env: Environment) -> str - added:
method Value.to_str(env: Environment) -> str - added:
property BasicBlock.terminated -> bool - added:
property Register.is_void -> bool - added:
property Value.is_void -> bool - added:
variable DeserMaps - added:
variable ERR_FALSE - added:
variable ERR_MAGIC - added:
variable ERR_NEVER - added:
variable EmitCallback - added:
variable LiteralsMap - added:
variable NAMESPACE_MODULE - added:
variable NAMESPACE_STATIC - added:
variable NAMESPACE_TYPE - added:
variable NO_TRACEBACK_LINE_NO - added:
variable OpDescription - added:
variable StealsDescription - added:
variable T
- added:
class RInstance(RType) - added:
class RPrimitive(RType) - added:
class RTuple(RType) - added:
class RType - added:
class RTypeVisitor(Generic[T]) - added:
class RUnion(RType) - added:
class RVoid(RType) - added:
class TupleNameVisitor(RTypeVisitor[str]) - added:
constructor RInstance(class_ir: ClassIR) -> None - added:
constructor RPrimitive(name: str, is_unboxed: bool, is_refcounted: bool, ctype: str=…) -> None - added:
constructor RTuple(types: List[RType]) -> None - added:
constructor RUnion(items: List[RType]) -> None - added:
field RInstance.is_unboxed - added:
field RPrimitive.primitive_map - added:
field RTuple.is_unboxed - added:
field RType.c_undefined - added:
field RType.is_refcounted - added:
field RType.is_unboxed - added:
field RType.name - added:
field RUnion.is_unboxed - added:
field RVoid.ctype - added:
field RVoid.is_unboxed - added:
field RVoid.name - added:
function deserialize_type(data: Union[JsonDict, str], ctx: DeserMaps) -> RType - added:
function is_bool_rprimitive(rtype: RType) -> bool - added:
function is_dict_rprimitive(rtype: RType) -> bool - added:
function is_float_rprimitive(rtype: RType) -> bool - added:
function is_int_rprimitive(rtype: RType) -> bool - added:
function is_list_rprimitive(rtype: RType) -> bool - added:
function is_none_rprimitive(rtype: RType) -> bool - added:
function is_object_rprimitive(rtype: RType) -> bool - added:
function is_optional_type(rtype: RType) -> bool - added:
function is_sequence_rprimitive(rtype: RType) -> bool - added:
function is_set_rprimitive(rtype: RType) -> bool - added:
function is_short_int_rprimitive(rtype: RType) -> bool - added:
function is_str_rprimitive(rtype: RType) -> bool - added:
function is_tuple_rprimitive(rtype: RType) -> bool - added:
function optional_value_type(rtype: RType) -> Optional[RType] - added:
method RInstance.accept(visitor: RTypeVisitor[T]) -> T - added:
method RInstance.attr_type(name: str) -> RType - added:
method RInstance.getter_index(name: str) -> int - added:
method RInstance.method_index(name: str) -> int - added:
method RInstance.serialize() -> str - added:
method RInstance.setter_index(name: str) -> int - added:
method RInstance.struct_name(names: NameGenerator) -> str - added:
method RPrimitive.accept(visitor: RTypeVisitor[T]) -> T - added:
method RPrimitive.serialize() -> str - added:
method RTuple.accept(visitor: RTypeVisitor[T]) -> T - added:
method RTuple.serialize() -> JsonDict - added:
method RType.accept(visitor: RTypeVisitor[T]) -> T - added:
method RType.serialize() -> Union[JsonDict, str] - added:
method RType.short_name() -> str - added:
method RTypeVisitor.visit_rinstance(typ: RInstance) -> T - added:
method RTypeVisitor.visit_rprimitive(typ: RPrimitive) -> T - added:
method RTypeVisitor.visit_rtuple(typ: RTuple) -> T - added:
method RTypeVisitor.visit_runion(typ: RUnion) -> T - added:
method RTypeVisitor.visit_rvoid(typ: RVoid) -> T - added:
method RUnion.accept(visitor: RTypeVisitor[T]) -> T - added:
method RUnion.serialize() -> JsonDict - added:
method RVoid.accept(visitor: RTypeVisitor[T]) -> T - added:
method RVoid.serialize() -> str - added:
method TupleNameVisitor.visit_rinstance(t: RInstance) -> str - added:
method TupleNameVisitor.visit_rprimitive(t: RPrimitive) -> str - added:
method TupleNameVisitor.visit_rtuple(t: RTuple) -> str - added:
method TupleNameVisitor.visit_runion(t: RUnion) -> str - added:
method TupleNameVisitor.visit_rvoid(t: RVoid) -> str - added:
static method RTuple.deserialize(data: JsonDict, ctx: DeserMaps) -> RTuple - added:
static method RUnion.deserialize(data: JsonDict, ctx: DeserMaps) -> RUnion - added:
variable T - added:
variable bool_rprimitive - added:
variable dict_next_rtuple_pair - added:
variable dict_next_rtuple_single - added:
variable dict_rprimitive - added:
variable exc_rtuple - added:
variable float_rprimitive - added:
variable int_rprimitive - added:
variable list_rprimitive - added:
variable none_rprimitive - added:
variable object_rprimitive - added:
variable set_rprimitive - added:
variable short_int_rprimitive - added:
variable str_rprimitive - added:
variable tuple_rprimitive - added:
variable void_rtype
- added:
class IRBuilder - added:
class IRVisitor(ExpressionVisitor[Value], StatementVisitor[None]) - added:
class UnsupportedException(Exception) - added:
constructor IRBuilder(current_module: str, types: Dict[Expression, Type], graph: Graph, errors: Errors, mapper: Mapper, pbv: PreBuildVisitor, visitor: IRVisitor, options: CompilerOptions) -> None - added:
function gen_arg_defaults(builder: IRBuilder) -> None - added:
method IRBuilder.accept(node: Expression) -> Value | (node: Statement) -> None - added:
method IRBuilder.activate_block(block: BasicBlock) -> None - added:
method IRBuilder.add(op: Op) -> Value - added:
method IRBuilder.add_bool_branch(value: Value, true: BasicBlock, false: BasicBlock) -> None - added:
method IRBuilder.add_implicit_return() -> None - added:
method IRBuilder.add_implicit_unreachable() -> None - added:
method IRBuilder.add_to_non_ext_dict(non_ext: NonExtClassInfo, key: str, val: Value, line: int) -> None - added:
method IRBuilder.add_var_to_env_class(var: SymbolNode, rtype: RType, base: Union[FuncInfo, ImplicitClass], reassign: bool=…) -> AssignmentTarget - added:
method IRBuilder.alloc_temp(type: RType) -> Register - added:
method IRBuilder.assign(target: Union[Register, AssignmentTarget], rvalue_reg: Value, line: int) -> None - added:
method IRBuilder.assign_if_null(target: AssignmentTargetRegister, get_val: Callable[[], Value], line: int) -> None - added:
method IRBuilder.binary_op(lreg: Value, rreg: Value, expr_op: str, line: int) -> Value - added:
method IRBuilder.call_refexpr_with_args(expr: CallExpr, callee: RefExpr, arg_values: List[Value]) -> Value - added:
method IRBuilder.catch_errors(line: int) -> Any - added:
method IRBuilder.coerce(src: Value, target_type: RType, line: int, force: bool=…) -> Value - added:
method IRBuilder.disallow_class_assignments(lvalues: List[Lvalue], line: int) -> None - added:
method IRBuilder.emit_load_final(final_var: Var, fullname: str, name: str, native: bool, typ: Type, line: int) -> Optional[Value] - added:
method IRBuilder.enter(fn_info: Union[FuncInfo, str]=…) -> None - added:
method IRBuilder.error(msg: str, line: int) -> None - added:
method IRBuilder.extract_int(e: Expression) -> Optional[int] - added:
method IRBuilder.flatten_classes(arg: Union[RefExpr, TupleExpr]) -> Optional[List[ClassIR]] - added:
method IRBuilder.gen_import(id: str, line: int) -> None - added:
method IRBuilder.gen_method_call(base: Value, name: str, arg_values: List[Value], result_type: Optional[RType], line: int, arg_kinds: Optional[List[int]]=…, arg_names: Optional[List[Optional[str]]]=…) -> Value - added:
method IRBuilder.get_assignment_target(lvalue: Lvalue, line: int=…) -> AssignmentTarget - added:
method IRBuilder.get_dict_base_type(expr: Expression) -> Instance - added:
method IRBuilder.get_dict_item_type(expr: Expression) -> RType - added:
method IRBuilder.get_dict_key_type(expr: Expression) -> RType - added:
method IRBuilder.get_dict_value_type(expr: Expression) -> RType - added:
method IRBuilder.get_final_ref(expr: MemberExpr) -> Optional[Tuple[str, Var, bool]] - added:
method IRBuilder.get_sequence_type(expr: Expression) -> RType - added:
method IRBuilder.goto(target: BasicBlock) -> None - added:
method IRBuilder.goto_and_activate(block: BasicBlock) -> None - added:
method IRBuilder.init_final_static(lvalue: Lvalue, rvalue_reg: Value, class_name: Optional[str]=…) -> None - added:
method IRBuilder.is_builtin_ref_expr(expr: RefExpr) -> bool - added:
method IRBuilder.is_module_member_expr(expr: MemberExpr) -> bool - added:
method IRBuilder.is_native_module(module: str) -> bool - added:
method IRBuilder.is_native_module_ref_expr(expr: RefExpr) -> bool - added:
method IRBuilder.is_native_ref_expr(expr: RefExpr) -> bool - added:
method IRBuilder.is_synthetic_type(typ: TypeInfo) -> bool - added:
method IRBuilder.leave() -> Tuple[List[BasicBlock], Environment, RType, FuncInfo] - added:
method IRBuilder.load_final_literal_value(val: Union[int, str, bytes, float, bool], line: int) -> Value - added:
method IRBuilder.load_final_static(fullname: str, typ: RType, line: int, error_name: Optional[str]=…) -> Value - added:
method IRBuilder.load_global(expr: NameExpr) -> Value - added:
method IRBuilder.load_global_str(name: str, line: int) -> Value - added:
method IRBuilder.load_globals_dict() -> Value - added:
method IRBuilder.load_module(name: str) -> Value - added:
method IRBuilder.load_module_attr_by_fullname(fullname: str, line: int) -> Value - added:
method IRBuilder.load_native_type_object(fullname: str) -> Value - added:
method IRBuilder.load_static_unicode(value: str) -> Value - added:
method IRBuilder.maybe_add_implicit_return() -> None - added:
method IRBuilder.maybe_spill(value: Value) -> Union[Value, AssignmentTarget] - added:
method IRBuilder.maybe_spill_assignable(value: Value) -> Union[Register, AssignmentTarget] - added:
method IRBuilder.node_type(node: Expression) -> RType - added:
method IRBuilder.non_function_scope() -> bool - added:
method IRBuilder.none_object() -> Value - added:
method IRBuilder.pop_loop_stack() -> None - added:
method IRBuilder.primitive_op(desc: OpDescription, args: List[Value], line: int) -> Value - added:
method IRBuilder.process_conditional(e: Expression, true: BasicBlock, false: BasicBlock) -> None - added:
method IRBuilder.process_iterator_tuple_assignment(target: AssignmentTargetTuple, rvalue_reg: Value, line: int) -> None - added:
method IRBuilder.process_iterator_tuple_assignment_helper(litem: AssignmentTarget, ritem: Value, line: int) -> None - added:
method IRBuilder.push_loop_stack(continue_block: BasicBlock, break_block: BasicBlock) -> None - added:
method IRBuilder.py_call(function: Value, arg_values: List[Value], line: int, arg_kinds: Optional[List[int]]=…, arg_names: Optional[Sequence[Optional[str]]]=…) -> Value - added:
method IRBuilder.py_get_attr(obj: Value, attr: str, line: int) -> Value - added:
method IRBuilder.read(target: Union[Value, AssignmentTarget], line: int=…) -> Value - added:
method IRBuilder.set_module(module_name: str, module_path: str) -> None - added:
method IRBuilder.shortcircuit_expr(expr: OpExpr) -> Value - added:
method IRBuilder.spill(value: Value) -> AssignmentTarget - added:
method IRBuilder.type_to_rtype(typ: Optional[Type]) -> RType - added:
method IRBuilder.unary_op(lreg: Value, expr_op: str, line: int) -> Value - added:
method IRBuilder.warning(msg: str, line: int) -> None - added:
property IRBuilder.environment -> Environment
- added:
function add_call_to_callable_class(builder: IRBuilder, blocks: List[BasicBlock], sig: FuncSignature, env: Environment, fn_info: FuncInfo) -> FuncIR - added:
function add_get_to_callable_class(builder: IRBuilder, fn_info: FuncInfo) -> None - added:
function instantiate_callable_class(builder: IRBuilder, fn_info: FuncInfo) -> Value - added:
function setup_callable_class(builder: IRBuilder) -> None
- added:
function add_non_ext_class_attr(builder: IRBuilder, non_ext: NonExtClassInfo, lvalue: NameExpr, stmt: AssignmentStmt, cdef: ClassDef, attr_to_cache: List[Lvalue]) -> None - added:
function allocate_class(builder: IRBuilder, cdef: ClassDef) -> Value - added:
function cache_class_attrs(builder: IRBuilder, attrs_to_cache: List[Lvalue], cdef: ClassDef) -> None - added:
function create_mypyc_attrs_tuple(builder: IRBuilder, ir: ClassIR, line: int) -> Value - added:
function create_ne_from_eq(builder: IRBuilder, cdef: ClassDef) -> None - added:
function dataclass_finalize(builder: IRBuilder, cdef: ClassDef, non_ext: NonExtClassInfo, type_obj: Value) -> None - added:
function dataclass_non_ext_info(builder: IRBuilder, cdef: ClassDef) -> Optional[NonExtClassInfo] - added:
function find_non_ext_metaclass(builder: IRBuilder, cdef: ClassDef, bases: Value) -> Value - added:
function finish_non_ext_dict(builder: IRBuilder, non_ext: NonExtClassInfo, line: int) -> None - added:
function gen_glue_ne_method(builder: IRBuilder, cls: ClassIR, line: int) -> FuncIR - added:
function generate_attr_defaults(builder: IRBuilder, cdef: ClassDef) -> None - added:
function load_decorated_class(builder: IRBuilder, cdef: ClassDef, type_obj: Value) -> Value - added:
function load_non_ext_class(builder: IRBuilder, ir: ClassIR, non_ext: NonExtClassInfo, line: int) -> Value - added:
function populate_non_ext_bases(builder: IRBuilder, cdef: ClassDef) -> Value - added:
function setup_non_ext_dict(builder: IRBuilder, cdef: ClassDef, metaclass: Value, bases: Value) -> Value - added:
function transform_class_def(builder: IRBuilder, cdef: ClassDef) -> None
- added:
class FuncInfo - added:
class GeneratorClass(ImplicitClass) - added:
class ImplicitClass - added:
constructor FuncInfo(fitem: FuncItem=…, name: str=…, class_name: Optional[str]=…, namespace: str=…, is_nested: bool=…, contains_nested: bool=…, is_decorated: bool=…, in_non_ext: bool=…) -> None - added:
constructor GeneratorClass(ir: ClassIR) -> None - added:
constructor ImplicitClass(ir: ClassIR) -> None - added:
method FuncInfo.namespaced_name() -> str - added:
property FuncInfo.callable_class -> ImplicitClass - added:
property FuncInfo.curr_env_reg -> Value - added:
property FuncInfo.env_class -> ClassIR - added:
property FuncInfo.generator_class -> GeneratorClass - added:
property FuncInfo.is_generator -> bool - added:
property GeneratorClass.next_label_reg -> Value - added:
property GeneratorClass.next_label_target -> AssignmentTarget - added:
property ImplicitClass.curr_env_reg -> Value - added:
property ImplicitClass.prev_env_reg -> Value - added:
property ImplicitClass.self_reg -> Value
- added:
function add_args_to_env(builder: IRBuilder, local: bool=…, base: Optional[Union[FuncInfo, ImplicitClass]]=…, reassign: bool=…) -> None - added:
function finalize_env_class(builder: IRBuilder) -> None - added:
function instantiate_env_class(builder: IRBuilder) -> Value - added:
function is_free_variable(builder: IRBuilder, symbol: SymbolNode) -> bool - added:
function load_env_registers(builder: IRBuilder) -> None - added:
function load_outer_env(builder: IRBuilder, base: Value, outer_env: Environment) -> Value - added:
function load_outer_envs(builder: IRBuilder, base: ImplicitClass) -> None - added:
function setup_env_class(builder: IRBuilder) -> ClassIR - added:
function setup_func_for_recursive_call(builder: IRBuilder, fdef: FuncDef, base: ImplicitClass) -> None
- added:
function transform_basic_comparison(builder: IRBuilder, op: str, left: Value, right: Value, line: int) -> Value - added:
function transform_bytes_expr(builder: IRBuilder, expr: BytesExpr) -> Value - added:
function transform_call_expr(builder: IRBuilder, expr: CallExpr) -> Value - added:
function transform_comparison_expr(builder: IRBuilder, e: ComparisonExpr) -> Value - added:
function transform_complex_expr(builder: IRBuilder, expr: ComplexExpr) -> Value - added:
function transform_conditional_expr(builder: IRBuilder, expr: ConditionalExpr) -> Value - added:
function transform_dict_expr(builder: IRBuilder, expr: DictExpr) -> Value - added:
function transform_dictionary_comprehension(builder: IRBuilder, o: DictionaryComprehension) -> Value - added:
function transform_ellipsis(builder: IRBuilder, o: EllipsisExpr) -> Value - added:
function transform_float_expr(builder: IRBuilder, expr: FloatExpr) -> Value - added:
function transform_generator_expr(builder: IRBuilder, o: GeneratorExpr) -> Value - added:
function transform_index_expr(builder: IRBuilder, expr: IndexExpr) -> Value - added:
function transform_int_expr(builder: IRBuilder, expr: IntExpr) -> Value - added:
function transform_list_comprehension(builder: IRBuilder, o: ListComprehension) -> Value - added:
function transform_list_expr(builder: IRBuilder, expr: ListExpr) -> Value - added:
function transform_member_expr(builder: IRBuilder, expr: MemberExpr) -> Value - added:
function transform_name_expr(builder: IRBuilder, expr: NameExpr) -> Value - added:
function transform_op_expr(builder: IRBuilder, expr: OpExpr) -> Value - added:
function transform_set_comprehension(builder: IRBuilder, o: SetComprehension) -> Value - added:
function transform_set_expr(builder: IRBuilder, expr: SetExpr) -> Value - added:
function transform_slice_expr(builder: IRBuilder, expr: SliceExpr) -> Value - added:
function transform_str_expr(builder: IRBuilder, expr: StrExpr) -> Value - added:
function transform_super_expr(builder: IRBuilder, o: SuperExpr) -> Value - added:
function transform_tuple_expr(builder: IRBuilder, expr: TupleExpr) -> Value - added:
function transform_unary_expr(builder: IRBuilder, expr: UnaryExpr) -> Value - added:
function translate_call(builder: IRBuilder, expr: CallExpr, callee: Expression) -> Value - added:
function translate_cast_expr(builder: IRBuilder, expr: CastExpr) -> Value - added:
function translate_method_call(builder: IRBuilder, expr: CallExpr, callee: MemberExpr) -> Value - added:
function translate_refexpr_call(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Value - added:
function translate_super_method_call(builder: IRBuilder, expr: CallExpr, callee: SuperExpr) -> Value
- added:
class ForDictionaryCommon(ForGenerator) - added:
class ForDictionaryItems(ForDictionaryCommon) - added:
class ForDictionaryKeys(ForDictionaryCommon) - added:
class ForDictionaryValues(ForDictionaryCommon) - added:
class ForEnumerate(ForGenerator) - added:
class ForGenerator - added:
class ForInfiniteCounter(ForGenerator) - added:
class ForIterable(ForGenerator) - added:
class ForRange(ForGenerator) - added:
class ForSequence(ForGenerator) - added:
class ForZip(ForGenerator) - added:
constructor ForGenerator(builder: IRBuilder, index: Lvalue, body_block: BasicBlock, loop_exit: BasicBlock, line: int, nested: bool) -> None - added:
field ForDictionaryCommon.dict_iter_op - added:
field ForDictionaryCommon.dict_next_op - added:
field ForDictionaryItems.dict_iter_op - added:
field ForDictionaryItems.dict_next_op - added:
field ForDictionaryKeys.dict_iter_op - added:
field ForDictionaryKeys.dict_next_op - added:
field ForDictionaryValues.dict_iter_op - added:
field ForDictionaryValues.dict_next_op - added:
function comprehension_helper(builder: IRBuilder, loop_params: List[Tuple[Lvalue, Expression, List[Expression]]], gen_inner_stmts: Callable[[], None], line: int) -> None - added:
function for_loop_helper(builder: IRBuilder, index: Lvalue, expr: Expression, body_insts: GenFunc, else_insts: Optional[GenFunc], line: int) -> None - added:
function make_for_loop_generator(builder: IRBuilder, index: Lvalue, expr: Expression, body_block: BasicBlock, loop_exit: BasicBlock, line: int, nested: bool=…) -> ForGenerator - added:
function translate_list_comprehension(builder: IRBuilder, gen: GeneratorExpr) -> Value - added:
function unsafe_index(builder: IRBuilder, target: Value, index: Value, line: int) -> Value - added:
method ForDictionaryCommon.gen_cleanup() -> None - added:
method ForDictionaryCommon.gen_condition() -> None - added:
method ForDictionaryCommon.gen_step() -> None - added:
method ForDictionaryCommon.init(expr_reg: Value, target_type: RType) -> None - added:
method ForDictionaryCommon.need_cleanup() -> bool - added:
method ForDictionaryItems.begin_body() -> None - added:
method ForDictionaryKeys.begin_body() -> None - added:
method ForDictionaryValues.begin_body() -> None - added:
method ForEnumerate.begin_body() -> None - added:
method ForEnumerate.gen_cleanup() -> None - added:
method ForEnumerate.gen_condition() -> None - added:
method ForEnumerate.gen_step() -> None - added:
method ForEnumerate.init(index1: Lvalue, index2: Lvalue, expr: Expression) -> None - added:
method ForEnumerate.need_cleanup() -> bool - added:
method ForGenerator.add_cleanup(exit_block: BasicBlock) -> None - added:
method ForGenerator.begin_body() -> None - added:
method ForGenerator.gen_cleanup() -> None - added:
method ForGenerator.gen_condition() -> None - added:
method ForGenerator.gen_step() -> None - added:
method ForGenerator.load_len(expr: Union[Value, AssignmentTarget]) -> Value - added:
method ForGenerator.need_cleanup() -> bool - added:
method ForInfiniteCounter.gen_step() -> None - added:
method ForInfiniteCounter.init() -> None - added:
method ForIterable.begin_body() -> None - added:
method ForIterable.gen_cleanup() -> None - added:
method ForIterable.gen_condition() -> None - added:
method ForIterable.gen_step() -> None - added:
method ForIterable.init(expr_reg: Value, target_type: RType) -> None - added:
method ForIterable.need_cleanup() -> bool - added:
method ForRange.gen_condition() -> None - added:
method ForRange.gen_step() -> None - added:
method ForRange.init(start_reg: Value, end_reg: Value, step: int) -> None - added:
method ForSequence.begin_body() -> None - added:
method ForSequence.gen_condition() -> None - added:
method ForSequence.gen_step() -> None - added:
method ForSequence.init(expr_reg: Value, target_type: RType, reverse: bool) -> None - added:
method ForZip.begin_body() -> None - added:
method ForZip.gen_cleanup() -> None - added:
method ForZip.gen_condition() -> None - added:
method ForZip.gen_step() -> None - added:
method ForZip.init(indexes: List[Lvalue], exprs: List[Expression]) -> None - added:
method ForZip.need_cleanup() -> bool - added:
variable GenFunc
- added:
function calculate_arg_defaults(builder: IRBuilder, fn_info: FuncInfo, env: Environment, func_reg: Optional[Value]) -> None - added:
function emit_yield(builder: IRBuilder, val: Value, line: int) -> Value - added:
function gen_func_ir(builder: IRBuilder, blocks: List[BasicBlock], sig: FuncSignature, env: Environment, fn_info: FuncInfo, cdef: Optional[ClassDef]) -> Tuple[FuncIR, Optional[Value]] - added:
function gen_func_item(builder: IRBuilder, fitem: FuncItem, name: str, sig: FuncSignature, cdef: Optional[ClassDef]=…) -> Tuple[FuncIR, Optional[Value]] - added:
function gen_func_ns(builder: IRBuilder) -> str - added:
function gen_glue(builder: IRBuilder, sig: FuncSignature, target: FuncIR, cls: ClassIR, base: ClassIR, fdef: FuncItem, *, do_py_ops: bool=…) -> FuncIR - added:
function gen_glue_method(builder: IRBuilder, sig: FuncSignature, target: FuncIR, cls: ClassIR, base: ClassIR, line: int, do_pycall: bool) -> FuncIR - added:
function gen_glue_property(builder: IRBuilder, sig: FuncSignature, target: FuncIR, cls: ClassIR, base: ClassIR, line: int, do_pygetattr: bool) -> FuncIR - added:
function get_func_target(builder: IRBuilder, fdef: FuncDef) -> AssignmentTarget - added:
function handle_ext_method(builder: IRBuilder, cdef: ClassDef, fdef: FuncDef) -> None - added:
function handle_non_ext_method(builder: IRBuilder, non_ext: NonExtClassInfo, cdef: ClassDef, fdef: FuncDef) -> None - added:
function handle_yield_from_and_await(builder: IRBuilder, o: Union[YieldFromExpr, AwaitExpr]) -> Value - added:
function is_decorated(builder: IRBuilder, fdef: FuncDef) -> bool - added:
function load_decorated_func(builder: IRBuilder, fdef: FuncDef, orig_func_reg: Value) -> Value - added:
function transform_await_expr(builder: IRBuilder, o: AwaitExpr) -> Value - added:
function transform_decorator(builder: IRBuilder, dec: Decorator) -> None - added:
function transform_func_def(builder: IRBuilder, fdef: FuncDef) -> None - added:
function transform_lambda_expr(builder: IRBuilder, expr: LambdaExpr) -> Value - added:
function transform_method(builder: IRBuilder, cdef: ClassDef, non_ext: Optional[NonExtClassInfo], fdef: FuncDef) -> None - added:
function transform_overloaded_func_def(builder: IRBuilder, o: OverloadedFuncDef) -> None - added:
function transform_yield_expr(builder: IRBuilder, expr: YieldExpr) -> Value - added:
function transform_yield_from_expr(builder: IRBuilder, o: YieldFromExpr) -> Value
- added:
function add_await_to_generator_class(builder: IRBuilder, fn_info: FuncInfo) -> None - added:
function add_close_to_generator_class(builder: IRBuilder, fn_info: FuncInfo) -> None - added:
function add_helper_to_generator_class(builder: IRBuilder, blocks: List[BasicBlock], sig: FuncSignature, env: Environment, fn_info: FuncInfo) -> FuncDecl - added:
function add_iter_to_generator_class(builder: IRBuilder, fn_info: FuncInfo) -> None - added:
function add_methods_to_generator_class(builder: IRBuilder, fn_info: FuncInfo, sig: FuncSignature, env: Environment, blocks: List[BasicBlock], is_coroutine: bool) -> None - added:
function add_next_to_generator_class(builder: IRBuilder, fn_info: FuncInfo, fn_decl: FuncDecl, sig: FuncSignature) -> None - added:
function add_raise_exception_blocks_to_generator_class(builder: IRBuilder, line: int) -> None - added:
function add_send_to_generator_class(builder: IRBuilder, fn_info: FuncInfo, fn_decl: FuncDecl, sig: FuncSignature) -> None - added:
function add_throw_to_generator_class(builder: IRBuilder, fn_info: FuncInfo, fn_decl: FuncDecl, sig: FuncSignature) -> None - added:
function create_switch_for_generator_class(builder: IRBuilder) -> None - added:
function gen_generator_func(builder: IRBuilder) -> None - added:
function instantiate_generator_class(builder: IRBuilder) -> Value - added:
function populate_switch_for_generator_class(builder: IRBuilder) -> None - added:
function setup_env_for_generator_class(builder: IRBuilder) -> None - added:
function setup_generator_class(builder: IRBuilder) -> ClassIR
- added:
class LowLevelIRBuilder - added:
constructor LowLevelIRBuilder(current_module: str, mapper: Mapper) -> None - added:
method LowLevelIRBuilder.activate_block(block: BasicBlock) -> None - added:
method LowLevelIRBuilder.add(op: Op) -> Value - added:
method LowLevelIRBuilder.add_bool_branch(value: Value, true: BasicBlock, false: BasicBlock) -> None - added:
method LowLevelIRBuilder.alloc_temp(type: RType) -> Register - added:
method LowLevelIRBuilder.binary_op(lreg: Value, rreg: Value, expr_op: str, line: int) -> Value - added:
method LowLevelIRBuilder.box(src: Value) -> Value - added:
method LowLevelIRBuilder.builtin_call(args: List[Value], fn_op: str, line: int) -> Value - added:
method LowLevelIRBuilder.call(decl: FuncDecl, args: Sequence[Value], arg_kinds: List[int], arg_names: Sequence[Optional[str]], line: int) -> Value - added:
method LowLevelIRBuilder.call_c(function_name: str, args: List[Value], line: int, result_type: Optional[RType]) -> Value - added:
method LowLevelIRBuilder.coerce(src: Value, target_type: RType, line: int, force: bool=…) -> Value - added:
method LowLevelIRBuilder.decompose_union_helper(obj: Value, rtype: RUnion, result_type: RType, process_item: Callable[[Value], Value], line: int) -> Value - added:
method LowLevelIRBuilder.gen_method_call(base: Value, name: str, arg_values: List[Value], result_type: Optional[RType], line: int, arg_kinds: Optional[List[int]]=…, arg_names: Optional[List[Optional[str]]]=…) -> Value - added:
method LowLevelIRBuilder.get_attr(obj: Value, attr: str, result_type: RType, line: int) -> Value - added:
method LowLevelIRBuilder.get_native_type(cls: ClassIR) -> Value - added:
method LowLevelIRBuilder.goto(target: BasicBlock) -> None - added:
method LowLevelIRBuilder.goto_and_activate(block: BasicBlock) -> None - added:
method LowLevelIRBuilder.isinstance_helper(obj: Value, class_irs: List[ClassIR], line: int) -> Value - added:
method LowLevelIRBuilder.isinstance_native(obj: Value, class_ir: ClassIR, line: int) -> Value - added:
method LowLevelIRBuilder.literal_static_name(value: Union[int, float, complex, str, bytes]) -> str - added:
method LowLevelIRBuilder.load_module(name: str) -> Value - added:
method LowLevelIRBuilder.load_native_type_object(fullname: str) -> Value - added:
method LowLevelIRBuilder.load_static_bytes(value: bytes) -> Value - added:
method LowLevelIRBuilder.load_static_complex(value: complex) -> Value - added:
method LowLevelIRBuilder.load_static_float(value: float) -> Value - added:
method LowLevelIRBuilder.load_static_int(value: int) -> Value - added:
method LowLevelIRBuilder.load_static_unicode(value: str) -> Value - added:
method LowLevelIRBuilder.make_dict(key_value_pairs: Sequence[DictEntry], line: int) -> Value - added:
method LowLevelIRBuilder.matching_call_c(candidates: List[CFunctionDescription], args: List[Value], line: int, result_type: Optional[RType]=…) -> Optional[Value] - added:
method LowLevelIRBuilder.matching_primitive_op(candidates: List[OpDescription], args: List[Value], line: int, result_type: Optional[RType]=…) -> Optional[Value] - added:
method LowLevelIRBuilder.native_args_to_positional(args: Sequence[Value], arg_kinds: List[int], arg_names: Sequence[Optional[str]], sig: FuncSignature, line: int) -> List[Value] - added:
method LowLevelIRBuilder.none() -> Value - added:
method LowLevelIRBuilder.none_object() -> Value - added:
method LowLevelIRBuilder.op_arg_type(desc: OpDescription, n: int) -> RType - added:
method LowLevelIRBuilder.pop_error_handler() -> Optional[BasicBlock] - added:
method LowLevelIRBuilder.primitive_op(desc: OpDescription, args: List[Value], line: int) -> Value - added:
method LowLevelIRBuilder.push_error_handler(handler: Optional[BasicBlock]) -> None - added:
method LowLevelIRBuilder.py_call(function: Value, arg_values: List[Value], line: int, arg_kinds: Optional[List[int]]=…, arg_names: Optional[Sequence[Optional[str]]]=…) -> Value - added:
method LowLevelIRBuilder.py_get_attr(obj: Value, attr: str, line: int) -> Value - added:
method LowLevelIRBuilder.py_method_call(obj: Value, method_name: str, arg_values: List[Value], line: int, arg_kinds: Optional[List[int]], arg_names: Optional[Sequence[Optional[str]]]) -> Value - added:
method LowLevelIRBuilder.shortcircuit_helper(op: str, expr_type: RType, left: Callable[[], Value], right: Callable[[], Value], line: int) -> Value - added:
method LowLevelIRBuilder.translate_eq_cmp(lreg: Value, rreg: Value, expr_op: str, line: int) -> Optional[Value] - added:
method LowLevelIRBuilder.translate_special_method_call(base_reg: Value, name: str, args: List[Value], result_type: Optional[RType], line: int) -> Optional[Value] - added:
method LowLevelIRBuilder.unary_op(lreg: Value, expr_op: str, line: int) -> Value - added:
method LowLevelIRBuilder.unbox_or_cast(src: Value, target_type: RType, line: int) -> Value - added:
method LowLevelIRBuilder.union_get_attr(obj: Value, rtype: RUnion, attr: str, result_type: RType, line: int) -> Value - added:
method LowLevelIRBuilder.union_method_call(base: Value, obj_type: RUnion, name: str, arg_values: List[Value], return_rtype: Optional[RType], line: int, arg_kinds: Optional[List[int]], arg_names: Optional[List[Optional[str]]]) -> Value - added:
variable DictEntry
- added:
function build_ir(modules: List[MypyFile], graph: Graph, types: Dict[Expression, Type], mapper: Mapper, options: CompilerOptions, errors: Errors) -> ModuleIRs - added:
function transform_mypy_file(builder: IRBuilder, mypyfile: MypyFile) -> None - added:
variable F - added:
variable strict_optional_dec
- added:
class Mapper - added:
constructor Mapper(group_map: Dict[str, Optional[str]]) -> None - added:
method Mapper.fdef_to_sig(fdef: FuncDef) -> FuncSignature - added:
method Mapper.get_arg_rtype(typ: Type, kind: int) -> RType - added:
method Mapper.literal_static_name(module: str, value: Union[int, float, complex, str, bytes]) -> str - added:
method Mapper.type_to_rtype(typ: Optional[Type]) -> RType
- added:
class BaseNonlocalControl(NonlocalControl) - added:
class CleanupNonlocalControl(NonlocalControl) - added:
class ExceptNonlocalControl(CleanupNonlocalControl) - added:
class FinallyNonlocalControl(CleanupNonlocalControl) - added:
class GeneratorNonlocalControl(BaseNonlocalControl) - added:
class LoopNonlocalControl(NonlocalControl) - added:
class NonlocalControl - added:
class TryFinallyNonlocalControl(NonlocalControl) - added:
constructor CleanupNonlocalControl(outer: NonlocalControl) -> None - added:
constructor ExceptNonlocalControl(outer: NonlocalControl, saved: Union[Value, AssignmentTarget]) -> None - added:
constructor FinallyNonlocalControl(outer: NonlocalControl, ret_reg: Optional[Value], saved: Value) -> None - added:
constructor LoopNonlocalControl(outer: NonlocalControl, continue_block: BasicBlock, break_block: BasicBlock) -> None - added:
constructor TryFinallyNonlocalControl(target: BasicBlock) -> None - added:
method BaseNonlocalControl.gen_break(builder: IRBuilder, line: int) -> None - added:
method BaseNonlocalControl.gen_continue(builder: IRBuilder, line: int) -> None - added:
method BaseNonlocalControl.gen_return(builder: IRBuilder, value: Value, line: int) -> None - added:
method CleanupNonlocalControl.gen_break(builder: IRBuilder, line: int) -> None - added:
method CleanupNonlocalControl.gen_cleanup(builder: IRBuilder, line: int) -> None - added:
method CleanupNonlocalControl.gen_continue(builder: IRBuilder, line: int) -> None - added:
method CleanupNonlocalControl.gen_return(builder: IRBuilder, value: Value, line: int) -> None - added:
method ExceptNonlocalControl.gen_cleanup(builder: IRBuilder, line: int) -> None - added:
method FinallyNonlocalControl.gen_cleanup(builder: IRBuilder, line: int) -> None - added:
method GeneratorNonlocalControl.gen_return(builder: IRBuilder, value: Value, line: int) -> None - added:
method LoopNonlocalControl.gen_break(builder: IRBuilder, line: int) -> None - added:
method LoopNonlocalControl.gen_continue(builder: IRBuilder, line: int) -> None - added:
method LoopNonlocalControl.gen_return(builder: IRBuilder, value: Value, line: int) -> None - added:
method NonlocalControl.gen_break(builder: IRBuilder, line: int) -> None - added:
method NonlocalControl.gen_continue(builder: IRBuilder, line: int) -> None - added:
method NonlocalControl.gen_return(builder: IRBuilder, value: Value, line: int) -> None - added:
method TryFinallyNonlocalControl.gen_break(builder: IRBuilder, line: int) -> None - added:
method TryFinallyNonlocalControl.gen_continue(builder: IRBuilder, line: int) -> None - added:
method TryFinallyNonlocalControl.gen_return(builder: IRBuilder, value: Value, line: int) -> None
- added:
class PreBuildVisitor(TraverserVisitor) - added:
constructor PreBuildVisitor() -> None - added:
method PreBuildVisitor.add_free_variable(symbol: SymbolNode) -> None - added:
method PreBuildVisitor.is_parent(fitem: FuncItem, child: FuncItem) -> bool - added:
method PreBuildVisitor.visit_decorator(dec: Decorator) -> None - added:
method PreBuildVisitor.visit_func(func: FuncItem) -> None - added:
method PreBuildVisitor.visit_func_def(fdef: FuncItem) -> None - added:
method PreBuildVisitor.visit_lambda_expr(expr: LambdaExpr) -> None - added:
method PreBuildVisitor.visit_name_expr(expr: NameExpr) -> None - added:
method PreBuildVisitor.visit_symbol_node(symbol: SymbolNode) -> None - added:
method PreBuildVisitor.visit_var(var: Var) -> None
- added:
function build_type_map(mapper: Mapper, modules: List[MypyFile], graph: Graph, types: Dict[Expression, Type], options: CompilerOptions, errors: Errors) -> None - added:
function can_subclass_builtin(builtin_base: str) -> bool - added:
function get_module_func_defs(module: MypyFile) -> Iterable[FuncDef] - added:
function is_from_module(node: SymbolNode, module: MypyFile) -> bool - added:
function is_valid_multipart_property_def(prop: OverloadedFuncDef) -> bool - added:
function load_type_map(mapper: Mapper, modules: List[MypyFile], deser_ctx: DeserMaps) -> None - added:
function prepare_class_def(path: str, module_name: str, cdef: ClassDef, errors: Errors, mapper: Mapper) -> None - added:
function prepare_func_def(module_name: str, class_name: Optional[str], fdef: FuncDef, mapper: Mapper) -> FuncDecl - added:
function prepare_method_def(ir: ClassIR, module_name: str, cdef: ClassDef, mapper: Mapper, node: Union[FuncDef, Decorator]) -> None - added:
function prepare_non_ext_class_def(path: str, module_name: str, cdef: ClassDef, errors: Errors, mapper: Mapper) -> None
- added:
function any_all_helper(builder: IRBuilder, gen: GeneratorExpr, initial_value_op: OpDescription, modify: Callable[[Value], Value], new_value_op: OpDescription) -> Value - added:
function dict_methods_fast_path(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
function specialize_function(name: str, typ: Optional[RType]=…) -> Callable[[Specializer], Specializer] - added:
function translate_all_call(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
function translate_any_call(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
function translate_dataclasses_field_call(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
function translate_globals(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
function translate_isinstance(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
function translate_len(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
function translate_next_call(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
function translate_safe_generator_call(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Optional[Value] - added:
variable Specializer - added:
variable specializers
- added:
function get_sys_exc_info(builder: IRBuilder) -> List[Value] - added:
function transform_assert_stmt(builder: IRBuilder, a: AssertStmt) -> None - added:
function transform_assignment_stmt(builder: IRBuilder, stmt: AssignmentStmt) -> None - added:
function transform_block(builder: IRBuilder, block: Block) -> None - added:
function transform_break_stmt(builder: IRBuilder, node: BreakStmt) -> None - added:
function transform_continue_stmt(builder: IRBuilder, node: ContinueStmt) -> None - added:
function transform_del_item(builder: IRBuilder, target: AssignmentTarget, line: int) -> None - added:
function transform_del_stmt(builder: IRBuilder, o: DelStmt) -> None - added:
function transform_expression_stmt(builder: IRBuilder, stmt: ExpressionStmt) -> None - added:
function transform_for_stmt(builder: IRBuilder, s: ForStmt) -> None - added:
function transform_if_stmt(builder: IRBuilder, stmt: IfStmt) -> None - added:
function transform_import(builder: IRBuilder, node: Import) -> None - added:
function transform_import_all(builder: IRBuilder, node: ImportAll) -> None - added:
function transform_import_from(builder: IRBuilder, node: ImportFrom) -> None - added:
function transform_operator_assignment_stmt(builder: IRBuilder, stmt: OperatorAssignmentStmt) -> None - added:
function transform_raise_stmt(builder: IRBuilder, s: RaiseStmt) -> None - added:
function transform_return_stmt(builder: IRBuilder, stmt: ReturnStmt) -> None - added:
function transform_try_except(builder: IRBuilder, body: GenFunc, handlers: Sequence[Tuple[Optional[Expression], Optional[Expression], GenFunc]], else_body: Optional[GenFunc], line: int) -> None - added:
function transform_try_except_stmt(builder: IRBuilder, t: TryStmt) -> None - added:
function transform_try_finally_stmt(builder: IRBuilder, try_body: GenFunc, finally_body: GenFunc) -> None - added:
function transform_try_stmt(builder: IRBuilder, t: TryStmt) -> None - added:
function transform_while_stmt(builder: IRBuilder, s: WhileStmt) -> None - added:
function transform_with(builder: IRBuilder, expr: Expression, target: Optional[Lvalue], body: GenFunc, line: int) -> None - added:
function transform_with_stmt(builder: IRBuilder, o: WithStmt) -> None - added:
function try_finally_body(builder: IRBuilder, finally_block: BasicBlock, finally_body: GenFunc, ret_reg: Optional[Value], old_exc: Value) -> Tuple[BasicBlock, FinallyNonlocalControl] - added:
function try_finally_entry_blocks(builder: IRBuilder, err_handler: BasicBlock, return_entry: BasicBlock, main_entry: BasicBlock, finally_block: BasicBlock, ret_reg: Optional[Register]) -> Value - added:
function try_finally_resolve_control(builder: IRBuilder, cleanup_block: BasicBlock, finally_control: FinallyNonlocalControl, old_exc: Value, ret_reg: Optional[Value]) -> BasicBlock - added:
function try_finally_try(builder: IRBuilder, err_handler: BasicBlock, return_entry: BasicBlock, main_entry: BasicBlock, try_body: GenFunc) -> Optional[Register] - added:
variable GenFunc
- added:
function add_self_to_env(environment: Environment, cls: ClassIR) -> AssignmentTargetRegister - added:
function concrete_arg_kind(kind: int) -> int - added:
function get_func_def(op: Union[FuncDef, Decorator, OverloadedFuncDef]) -> FuncDef - added:
function get_mypyc_attr_call(d: Expression) -> Optional[CallExpr] - added:
function get_mypyc_attr_literal(e: Expression) -> Any - added:
function get_mypyc_attrs(stmt: Union[ClassDef, Decorator]) -> Dict[str, Any] - added:
function is_constant(e: Expression) -> bool - added:
function is_dataclass(cdef: ClassDef) -> bool - added:
function is_dataclass_decorator(d: Expression) -> bool - added:
function is_extension_class(cdef: ClassDef) -> bool - added:
function is_trait(cdef: ClassDef) -> bool - added:
function is_trait_decorator(d: Expression) -> bool
- added:
class IRBuilderVisitor(IRVisitor) - added:
field IRBuilderVisitor.builder - added:
method IRBuilderVisitor.bail(msg: str, line: int) -> NoReturn - added:
method IRBuilderVisitor.visit__promote_expr(o: PromoteExpr) -> Value - added:
method IRBuilderVisitor.visit_assert_stmt(stmt: AssertStmt) -> None - added:
method IRBuilderVisitor.visit_assignment_expr(o: AssignmentExpr) -> Value - added:
method IRBuilderVisitor.visit_assignment_stmt(stmt: AssignmentStmt) -> None - added:
method IRBuilderVisitor.visit_await_expr(o: AwaitExpr) -> Value - added:
method IRBuilderVisitor.visit_backquote_expr(o: BackquoteExpr) -> Value - added:
method IRBuilderVisitor.visit_block(block: Block) -> None - added:
method IRBuilderVisitor.visit_break_stmt(stmt: BreakStmt) -> None - added:
method IRBuilderVisitor.visit_bytes_expr(expr: BytesExpr) -> Value - added:
method IRBuilderVisitor.visit_call_expr(expr: CallExpr) -> Value - added:
method IRBuilderVisitor.visit_cast_expr(o: CastExpr) -> Value - added:
method IRBuilderVisitor.visit_class_def(cdef: ClassDef) -> None - added:
method IRBuilderVisitor.visit_comparison_expr(expr: ComparisonExpr) -> Value - added:
method IRBuilderVisitor.visit_complex_expr(expr: ComplexExpr) -> Value - added:
method IRBuilderVisitor.visit_conditional_expr(expr: ConditionalExpr) -> Value - added:
method IRBuilderVisitor.visit_continue_stmt(stmt: ContinueStmt) -> None - added:
method IRBuilderVisitor.visit_decorator(dec: Decorator) -> None - added:
method IRBuilderVisitor.visit_del_stmt(stmt: DelStmt) -> None - added:
method IRBuilderVisitor.visit_dict_expr(expr: DictExpr) -> Value - added:
method IRBuilderVisitor.visit_dictionary_comprehension(expr: DictionaryComprehension) -> Value - added:
method IRBuilderVisitor.visit_ellipsis(expr: EllipsisExpr) -> Value - added:
method IRBuilderVisitor.visit_enum_call_expr(o: EnumCallExpr) -> Value - added:
method IRBuilderVisitor.visit_exec_stmt(o: ExecStmt) -> None - added:
method IRBuilderVisitor.visit_expression_stmt(stmt: ExpressionStmt) -> None - added:
method IRBuilderVisitor.visit_float_expr(expr: FloatExpr) -> Value - added:
method IRBuilderVisitor.visit_for_stmt(stmt: ForStmt) -> None - added:
method IRBuilderVisitor.visit_func_def(fdef: FuncDef) -> None - added:
method IRBuilderVisitor.visit_generator_expr(expr: GeneratorExpr) -> Value - added:
method IRBuilderVisitor.visit_global_decl(stmt: GlobalDecl) -> None - added:
method IRBuilderVisitor.visit_if_stmt(stmt: IfStmt) -> None - added:
method IRBuilderVisitor.visit_import(node: Import) -> None - added:
method IRBuilderVisitor.visit_import_all(node: ImportAll) -> None - added:
method IRBuilderVisitor.visit_import_from(node: ImportFrom) -> None - added:
method IRBuilderVisitor.visit_index_expr(expr: IndexExpr) -> Value - added:
method IRBuilderVisitor.visit_int_expr(expr: IntExpr) -> Value - added:
method IRBuilderVisitor.visit_lambda_expr(expr: LambdaExpr) -> Value - added:
method IRBuilderVisitor.visit_list_comprehension(expr: ListComprehension) -> Value - added:
method IRBuilderVisitor.visit_list_expr(expr: ListExpr) -> Value - added:
method IRBuilderVisitor.visit_member_expr(expr: MemberExpr) -> Value - added:
method IRBuilderVisitor.visit_mypy_file(mypyfile: MypyFile) -> None - added:
method IRBuilderVisitor.visit_name_expr(expr: NameExpr) -> Value - added:
method IRBuilderVisitor.visit_namedtuple_expr(o: NamedTupleExpr) -> Value - added:
method IRBuilderVisitor.visit_newtype_expr(o: NewTypeExpr) -> Value - added:
method IRBuilderVisitor.visit_nonlocal_decl(stmt: NonlocalDecl) -> None - added:
method IRBuilderVisitor.visit_op_expr(expr: OpExpr) -> Value - added:
method IRBuilderVisitor.visit_operator_assignment_stmt(stmt: OperatorAssignmentStmt) -> None - added:
method IRBuilderVisitor.visit_overloaded_func_def(o: OverloadedFuncDef) -> None - added:
method IRBuilderVisitor.visit_pass_stmt(stmt: PassStmt) -> None - added:
method IRBuilderVisitor.visit_print_stmt(o: PrintStmt) -> None - added:
method IRBuilderVisitor.visit_raise_stmt(stmt: RaiseStmt) -> None - added:
method IRBuilderVisitor.visit_return_stmt(stmt: ReturnStmt) -> None - added:
method IRBuilderVisitor.visit_reveal_expr(o: RevealExpr) -> Value - added:
method IRBuilderVisitor.visit_set_comprehension(expr: SetComprehension) -> Value - added:
method IRBuilderVisitor.visit_set_expr(expr: SetExpr) -> Value - added:
method IRBuilderVisitor.visit_slice_expr(expr: SliceExpr) -> Value - added:
method IRBuilderVisitor.visit_star_expr(o: StarExpr) -> Value - added:
method IRBuilderVisitor.visit_str_expr(expr: StrExpr) -> Value - added:
method IRBuilderVisitor.visit_super_expr(expr: SuperExpr) -> Value - added:
method IRBuilderVisitor.visit_temp_node(o: TempNode) -> Value - added:
method IRBuilderVisitor.visit_try_stmt(stmt: TryStmt) -> None - added:
method IRBuilderVisitor.visit_tuple_expr(expr: TupleExpr) -> Value - added:
method IRBuilderVisitor.visit_type_alias_expr(o: TypeAliasExpr) -> Value - added:
method IRBuilderVisitor.visit_type_application(o: TypeApplication) -> Value - added:
method IRBuilderVisitor.visit_type_var_expr(o: TypeVarExpr) -> Value - added:
method IRBuilderVisitor.visit_typeddict_expr(o: TypedDictExpr) -> Value - added:
method IRBuilderVisitor.visit_unary_expr(expr: UnaryExpr) -> Value - added:
method IRBuilderVisitor.visit_unicode_expr(o: UnicodeExpr) -> Value - added:
method IRBuilderVisitor.visit_var(o: Var) -> None - added:
method IRBuilderVisitor.visit_while_stmt(stmt: WhileStmt) -> None - added:
method IRBuilderVisitor.visit_with_stmt(stmt: WithStmt) -> None - added:
method IRBuilderVisitor.visit_yield_expr(expr: YieldExpr) -> Value - added:
method IRBuilderVisitor.visit_yield_from_expr(o: YieldFromExpr) -> Value
- added:
function compute_vtable(cls: ClassIR) -> None - added:
function specialize_parent_vtable(cls: ClassIR, parent: ClassIR) -> VTableEntries
- added:
function emit_len(emitter: EmitterInterface, args: List[str], dest: str) -> None - added:
function emit_new_dict(emitter: EmitterInterface, args: List[str], dest: str) -> None - added:
variable dict_check_size_op - added:
variable dict_get_item_op - added:
variable dict_item_iter_op - added:
variable dict_items_op - added:
variable dict_key_iter_op - added:
variable dict_keys_op - added:
variable dict_next_item_op - added:
variable dict_next_key_op - added:
variable dict_next_value_op - added:
variable dict_set_item_op - added:
variable dict_update_in_display_op - added:
variable dict_update_op - added:
variable dict_value_iter_op - added:
variable dict_values_op - added:
variable new_dict_op
- added:
variable assert_err_occured_op - added:
variable error_catch_op - added:
variable exc_matches_op - added:
variable get_exc_info_op - added:
variable get_exc_value_op - added:
variable keep_propagating_op - added:
variable no_err_occurred_op - added:
variable raise_exception_op - added:
variable raise_exception_with_tb_op - added:
variable reraise_exception_op - added:
variable restore_exc_info_op - added:
variable set_stop_iteration_value
- added:
variable iter_op - added:
variable next_op - added:
variable next_raw_op - added:
variable py_call_op - added:
variable py_call_with_kwargs_op - added:
variable py_delattr_op - added:
variable py_getattr_op - added:
variable py_hasattr_op - added:
variable py_method_call_op - added:
variable py_setattr_op
- added:
function int_binary_op(op: str, c_func_name: str, result_type: RType=…, error_kind: int=…) -> None - added:
function int_compare_op(op: str, c_func_name: str) -> None - added:
function int_unary_op(op: str, c_func_name: str) -> OpDescription - added:
variable int_neg_op - added:
variable unsafe_short_add
- added:
function emit_len(emitter: EmitterInterface, args: List[str], dest: str) -> None - added:
function emit_new(emitter: EmitterInterface, args: List[str], dest: str) -> None - added:
variable list_append_op - added:
variable list_extend_op - added:
variable list_get_item_op - added:
variable list_get_item_unsafe_op - added:
variable list_len_op - added:
variable list_pop - added:
variable list_pop_last - added:
variable list_set_item_op - added:
variable new_list_op - added:
variable to_list
- added:
variable bool_op - added:
variable check_stop_op - added:
variable coro_op - added:
variable dataclass_sleight_of_hand - added:
variable ellipsis_op - added:
variable false_op - added:
variable fast_isinstance_op - added:
variable get_module_dict_op - added:
variable import_op - added:
variable method_new_op - added:
variable new_slice_op - added:
variable none_object_op - added:
variable none_op - added:
variable not_implemented_op - added:
variable py_calc_meta_op - added:
variable pytype_from_template_op - added:
variable send_op - added:
variable true_op - added:
variable type_is_op - added:
variable type_object_op - added:
variable type_op - added:
variable yield_from_except_op - added:
variable yield_from_rtuple
- added:
function binary_op(op: str, arg_types: List[RType], result_type: RType, error_kind: int, emit: EmitCallback, format_str: Optional[str]=…, steals: StealsDescription=…, is_borrowed: bool=…, priority: int=…) -> None - added:
function c_method_op(name: str, arg_types: List[RType], result_type: Optional[RType], c_function_name: str, error_kind: int, priority: int=…) -> None - added:
function call_and_fail_emit(func: str) -> EmitCallback - added:
function call_emit(func: str) -> EmitCallback - added:
function call_negative_bool_emit(func: str) -> EmitCallback - added:
function call_negative_magic_emit(func: str) -> EmitCallback - added:
function call_void_emit(func: str) -> EmitCallback - added:
function custom_op(arg_types: List[RType], result_type: RType, error_kind: int, emit: EmitCallback, name: Optional[str]=…, format_str: Optional[str]=…, steals: StealsDescription=…, is_borrowed: bool=…, is_var_arg: bool=…) -> OpDescription - added:
function func_op(name: str, arg_types: List[RType], result_type: RType, error_kind: int, emit: EmitCallback, format_str: Optional[str]=…, steals: StealsDescription=…, is_borrowed: bool=…, priority: int=…) -> OpDescription - added:
function method_op(name: str, arg_types: List[RType], result_type: Optional[RType], error_kind: int, emit: EmitCallback, steals: StealsDescription=…, is_borrowed: bool=…, priority: int=…) -> OpDescription - added:
function name_emit(name: str, target_type: Optional[str]=…) -> EmitCallback - added:
function name_ref_op(name: str, result_type: RType, error_kind: int, emit: EmitCallback, is_borrowed: bool=…) -> OpDescription - added:
function negative_int_emit(template: str) -> EmitCallback - added:
function simple_emit(template: str) -> EmitCallback - added:
function unary_op(op: str, arg_type: RType, result_type: RType, error_kind: int, emit: EmitCallback, format_str: Optional[str]=…, steals: StealsDescription=…, is_borrowed: bool=…, priority: int=…) -> OpDescription - added:
variable CFunctionDescription - added:
variable binary_ops - added:
variable c_method_call_ops - added:
variable func_ops - added:
variable method_ops - added:
variable name_ref_ops - added:
variable unary_ops
- added:
function emit_len(emitter: EmitterInterface, args: List[str], dest: str) -> None - added:
variable new_set_op - added:
variable set_add_op - added:
variable set_update_op
- added:
function emit_str_compare(comparison: str) -> Callable[[EmitterInterface, List[str], str], None] - added:
variable str_split_emits - added:
variable str_split_types
- added:
function emit_len(emitter: EmitterInterface, args: List[str], dest: str) -> None - added:
variable list_tuple_op - added:
variable new_tuple_op - added:
variable tuple_get_item_op - added:
variable tuple_len_op
- added:
function add_handler_block(ir: FuncIR) -> BasicBlock - added:
function insert_exception_handling(ir: FuncIR) -> None - added:
function split_blocks_at_errors(blocks: List[BasicBlock], default_error_handler: BasicBlock, func_name: Optional[str]) -> List[BasicBlock]
- added:
function add_block(decincs: DecIncs, cache: BlockCache, blocks: List[BasicBlock], label: BasicBlock) -> BasicBlock - added:
function after_branch_decrefs(label: BasicBlock, pre_live: AnalysisDict[Value], source_defined: Set[Value], source_borrowed: Set[Value], source_live_regs: Set[Value], env: Environment, omitted: Iterable[Value]=…) -> Tuple[Tuple[Value, bool], ...] - added:
function after_branch_increfs(label: BasicBlock, pre_live: AnalysisDict[Value], pre_borrow: AnalysisDict[Value], source_borrowed: Set[Value], env: Environment) -> Tuple[Value, ...] - added:
function insert_branch_inc_and_decrefs(block: BasicBlock, cache: BlockCache, blocks: List[BasicBlock], pre_live: AnalysisDict[Value], pre_borrow: AnalysisDict[Value], post_borrow: AnalysisDict[Value], post_must_defined: AnalysisDict[Value], env: Environment) -> None - added:
function insert_ref_count_opcodes(ir: FuncIR) -> None - added:
function is_maybe_undefined(post_must_defined: Set[Value], src: Value) -> bool - added:
function maybe_append_dec_ref(ops: List[Op], dest: Value, defined: AnalysisDict[Value], key: Tuple[BasicBlock, int]) -> None - added:
function maybe_append_inc_ref(ops: List[Op], dest: Value) -> None - added:
function transform_block(block: BasicBlock, pre_live: AnalysisDict[Value], post_live: AnalysisDict[Value], pre_borrow: AnalysisDict[Value], post_must_defined: AnalysisDict[Value], env: Environment) -> None - added:
variable BlockCache - added:
variable DecIncs
- added:
function insert_uninit_checks(ir: FuncIR) -> None - added:
function split_blocks_at_uninits(env: Environment, blocks: List[BasicBlock], pre_must_defined: AnalysisDict[Value]) -> List[BasicBlock]