![]() Will be managed by myself / anyone else maintaining this module. These extension variables (Unless someone wants to support these particular variables) Monkey (Or Monkey based languages) add(s) support for these extensions. #TYPETOOL_SIMULATE_PROPER_BOUNDS_ROLLOVER = TrueĪs specified in the 'NOTES' section, these will be managed as #TYPETOOL_SIMULATE_SIGNED_TYPES_AS_UNSIGNED = False Normally these would be defined as "primitive types", however, the addition of 'String' makes this term inaccurate. * This module defines 'core-types' as the base types within Monkey. They're only really there as a last resort.įunctionality for those commands can be configured with the preprocessor (Be wary of other modules using these commands while configuring them). * Only use the "bounds" commands if you absolutely need them. If a version of Monkey comes along with template/generic functions (Or other functionality), feel free to use those at your own risk. This can also be done with generic/template classes for the sake of code reuse. ![]() Then encapsulate those versions with a check for the proper type-extensions. On the other hand, if you wish to go the route of supporting these types as alternate overloads, implement multiple versions of the function, ![]() If you're expecting conflicts to be resolved without the proper extensions enabled, you're adopting this improperly. Use 'Long' or stick to the usual 'Int' (And maybe 'UInt' and/or 'ULong', but those can be problematic at times). If you're going to have a single version of a function, Go right ahead, but stay away from overloading with these types. If you're able to off-load functions to a generic class, Of course, this is the most ideal situation, not the most realistic one. * If you were to adopt this module, the best course of action tends to be implementing functions via generics / template classes. * Integer types should be assumed to not have the effects of what they're trying to represent.įor example: The 'Octet' alias does not necessarily apply 'ApplyOctetBounds' to everything, it's meant to be used for potential memory optimization. (Unless further data is stored within these integers collision information for example) Using the 'Unsigned_Short' type is usually ideal (Or one of its aliases, such as 'UShort'). That being said, in situations where no optimization is done with regard to bit shifting, these situations are far more feasible.Īlso realize that if a version of Monkey adds support for arrays of what are currently non-standard integers, compatibility may be an issue.Īs a bit of a relevant side note (With regard to 'mojo'): In situations where you're using a container for frames of an 'Image' ("Tile-maps" for example), * Current (And potentially future) uses of 'Int' arrays should probably stay as such. ![]() In the event of naming differences, this module will resolve such issues as needed. * These types are meant to future-proof code which could run more optimally in the event Monkey adopts other types.Īssuming the names are the same as this module, the usual implementations here (Aliases) will be removed or commented out. * Use this module at your own risk, types should not be expected to beīinary-compatible with what are normally realistic expectations. These types are expected to boil down to a 'core-type'. * Overloads should not expect differences between aliases. * This module was developed with the knowledge these typesĭo not have integrity, and are aliases under normal situations (With default Monkey at least). * ATTENTION: Please read the 'README' file before adopting this module yourself. However, you should generally expect automatic conversion (No matter the implementation). The types in this module are not usually unique, and you should onlyĮxpect exact compatibility between obviously compatible aliases.įor example, you should not expect a distinction between integer types (Without proper preprocessor-flag checks). * The following module is used for future-proofing/potentially optimizing programs.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |