class ComplexEntry(TIEntry): (source)
Known subclasses: tivars.types.complex.TIComplex
, tivars.types.complex.TIComplexRadical
Constructor: ComplexEntry(init, for_flash, name, version, ...)
Base class for complex numeric types
This class handles floating-point types as well as the exact formats for the TI-83PCE and other newer models.
The format for these types varies and is handled by real_subtype_id
and imag_subtype_id
.
Two RealEntry
types are used to form a single ComplexEntry
corresponding to a complex number.
These types need not be the same, and will have subtype IDs not directly corresponding to their native type IDs.
The canonical type of the entire entry is determined by the imaginary part. The entry is coerced automatically if the imaginary part is updated.
Method | __complex__ |
Undocumented |
Method | __format__ |
Formats this entry for string representations |
Method | __init__ |
Creates an empty entry with specified meta and data values |
Method | calc |
The data section of the entry |
Method | clear |
Clears this entry's data |
Method | coerce |
Coerces this entry to a subclass if possible using the entry's type ID |
Method | complex |
No summary |
Method | components |
No summary |
Method | get |
Determines the minimum OS that supports this entry's data |
Method | get |
Determines the version byte corresponding to given data for this entry type |
Method | imag |
The imaginary part of the complex number |
Method | imag |
Whether the entry is used during graphing |
Method | imag |
The sign bit for the complex part |
Method | imag |
The subtype ID of the complex part |
Method | load |
Loads this complex number from a complex, upcasting as necessary |
Method | load |
Loads this entry from a string representation |
Method | real |
The real part of the complex number |
Method | real |
Whether the entry is used during graphing |
Method | real |
The sign bit for the real part |
Method | real |
The subtype ID of the real part |
Method | supported |
Determines whether a given model can support this entry |
Class Variable | extensions |
The file extension used for this entry per-model |
Class Variable | is |
Whether this numeric type is exact |
Class Variable | min |
The minimum length of this entry's data |
Class Variable | versions |
The possible versions of this entry |
Property | imag |
The subclass of RealEntry corresponding to this entry's imag_subtype_id . |
Property | real |
The subclass of RealEntry corresponding to this entry's real_subtype_id . |
Inherited from TIEntry
:
Class |
|
Raw bytes container for TIEntry |
Class Method | get |
Converts bytes -> TIEntry |
Class Method | get |
Gets the subclass corresponding to a type ID if one is registered |
Class Method | open |
Creates a new entry from a file given a filename |
Class Method | register |
Registers a subtype with this class for coercion |
Class Method | set |
Converts TIEntry -> bytes |
Static Method | next |
Helper function to determine the length of the next entry in a bytestream |
Method | __bool__ |
No summary |
Method | __bytes__ |
No summary |
Method | __copy__ |
No summary |
Method | __eq__ |
Determines if two entries are the same type and have the same bytes |
Method | __iter__ |
No summary |
Method | __len__ |
No summary |
Method | __str__ |
No summary |
Method | archive |
Archives this entry (if supported) |
Method | archived |
Whether the entry is archived |
Method | bytes |
The bytes contained in this entry, without any var file header or metadata. |
Method | data |
The entry's user data |
Method | dict |
No summary |
Method | export |
Exports this entry to a TIVar with a specified name, header, and target model |
Method | load |
Loads a byte string or bytestream into this entry |
Method | load |
Loads the data of this entry from a bytestream |
Method | load |
Loads this entry from a JSON dictionary representation |
Method | load |
Loads this entry from a file given a file pointer and offset |
Method | meta |
The length of the meta section of the entry |
Method | name |
The name of the entry |
Method | save |
Saves this entry as a var file in the current directory given a filename and optional header and targeted model |
Method | string |
No summary |
Method | type |
The type ID of the entry |
Method | unarchive |
Unarchives this entry (if supported) |
Method | version |
The version number of the entry |
Class Variable | base |
Undocumented |
Class Variable | flash |
Undocumented |
Class Variable | flash |
Whether this entry only supports flash chips |
Class Variable | leading |
Bytes that always begin this entry's data |
Class Variable | leading |
Byte that always begins the name of this entry |
Instance Variable | raw |
Undocumented |
Property | calc |
The length of the data section of the entry |
Property | flash |
The flash bytes of this entry if they exist |
Property | is |
Whether this entry's data is empty |
Property | meta |
The meta section of this entry |
Method | __init |
Undocumented |
Constant | _T |
Undocumented |
Class Variable | _type |
Undocumented |
Class Variable | _type |
Undocumented |
Inherited from Dock
(via TIEntry
):
Method | load |
Loads data into an instance by delegating to Loader methods based on the input's type |
Class Variable | loaders |
Undocumented |
bool
= True, name: str
= 'A', version: int
= None, archived: bool
= None, data: bytes
= None):
(source)
¶
tivars.var.TIEntry.__init__
Creates an empty entry with specified meta and data values
The entry version and archived flag are invalid if for_flash == False.
Parameters | |
init | Values to initialize the entry's data (defaults to None) |
forbool | Whether the entry supports flash chips (defaults to True) |
name:str | The name of the entry (defaults to a valid default name) |
version:int | The entry's version (defaults to None) |
archived:bool | Whether the entry is archived (defaults to entry's default state on-calc) |
data:bytes | The entry's data (defaults to empty) |
tivars.var.TIEntry.calc_data
The data section of the entry
The real and imaginary parts of the complex number are stored adjacently in TIReal
format.
tivars.var.TIEntry.coerce
Coerces this entry to a subclass if possible using the entry's type ID
Valid types must be registered to be considered for coercion.
tivars.var.TIEntry.get_min_os
Determines the minimum OS that supports this entry's data
Parameters | |
data:bytes | The data to find the minimum support for (defaults to this entry's data) |
Returns | |
OsVersion | The minimum OsVersion this entry supports |
tivars.var.TIEntry.get_version
Determines the version byte corresponding to given data for this entry type
Entries which could contain non-backwards compatible data are assigned a version byte. If an entry's version exceeds the "version" of a calculator, transfer to the calculator will fail.
Parameters | |
data:bytes | The data to find the version of (defaults to this entry's data) |
Returns | |
int | The version byte for data |
Loads this complex number from a complex, upcasting as necessary
Parameters | |
comp:complex | The complex number to load |
tivars.var.TIEntry.load_string
Loads this entry from a string representation
Parameters | |
string:str | The string to load |
tivars.types.complex.TIComplexFraction
, tivars.types.complex.TIComplexPi
, tivars.types.complex.TIComplexRadical
Whether this numeric type is exact
tivars.var.TIEntry.min_data_length
The minimum length of this entry's data
If an entry's data is fixed in size, this value is necessarily the length of the data