class documentation

class PlaceholderType(ProperType): (source)

View In Hierarchy

Temporary, yet-unknown type during semantic analysis. This is needed when there's a reference to a type before the real symbol table entry of the target type is available (specifically, we use a temporary PlaceholderNode symbol node). Consider this example: class str(Sequence[str]): ... We use a PlaceholderType for the 'str' in 'Sequence[str]' since we can't create a TypeInfo for 'str' until all base classes have been resolved. We'll soon perform another analysis iteration which replaces the base class with a complete type without any placeholders. After semantic analysis, no placeholder types must exist.

Method __eq__ Undocumented
Method __hash__ Undocumented
Method __init__ Undocumented
Method accept Undocumented
Method serialize Undocumented
Class Variable __slots__ Undocumented
Instance Variable args Undocumented
Instance Variable fullname Undocumented

Inherited from Type (via ProperType):

Class Method deserialize Undocumented
Method __repr__ Undocumented
Method can_be_false.setter Undocumented
Method can_be_false_default Undocumented
Method can_be_true.setter Undocumented
Method can_be_true_default Undocumented
Method is_singleton_type Undocumented
Property can_be_false Undocumented
Property can_be_true Undocumented
Instance Variable _can_be_false Undocumented
Instance Variable _can_be_true Undocumented

Inherited from Context (via ProperType, Type):

Method set_line If target is a node, pull line (and column) information into this node. If column is specified, this will override any column information coming from a node.
Instance Variable column Undocumented
Instance Variable end_column Undocumented
Instance Variable end_line Undocumented
Instance Variable line Undocumented
def __eq__(self, other: object) -> bool: (source)

Undocumented

def __hash__(self) -> int: (source)

Undocumented

def __init__(self, fullname: str|None, args: list[Type], line: int): (source)

Undocumented

def accept(self, visitor: TypeVisitor[T]) -> T: (source)

Undocumented

def serialize(self) -> str: (source)

Undocumented

__slots__: tuple[str, ...] = (source)

Undocumented

Undocumented

fullname = (source)

Undocumented