Kolozsvári, Dániel, Pataki, Norbert (2023) A static analysis approach for modern iterator development Annales Mathematicae et Informaticae. 59. pp. 37-53. ISSN 1787-6117 (Online)
pdf
AMI_59_from37to53.pdf Download (467kB) [error in script] |
Absztrakt (kivonat)
Programming languages evolve in the long term, new standards are specified in which new constructs appear, old elements may become deprecated. Standard library of programming languages also changes time by time. The standard of the C++ programming language defines the elements of the C++ Standard Template Library (STL) that provides containers, algorithms, and iterators. According to the STL’s generic programming approach, these sets can be extended in a convenient way. The std::iterator class template had been in the C++ since beginning and has been deprecated in the C++17 standard. This class template’s purpose was to specify the traits of an iterator. Typically, it was a base class of many standard and non-standard iterator class to provide the necessary traits. However, the usage of iterator is straightforward and fits into the object-oriented programming paradigm. Many non-standard containers offer custom iterators because of the STL compatibility. Using this base class does not cause any weird effect, therefore usage of iterator can be found in code legacy. In this paper, we present a static analysis approach to assist the development of iterator classes in a modern way in which the iterator class template is not taken advantage of. We utilize the Clang compiler infrastructure to look for how the deprecated iterator classes can be found in legacy code and present an approach how to modernize them.
Mű típusa: | Folyóiratcikk - Journal article |
---|---|
Szerző: | Szerző neve Email MTMT azonosító ORCID azonosító Közreműködés Kolozsvári, Dániel NEM RÉSZLETEZETT NEM RÉSZLETEZETT NEM RÉSZLETEZETT Szerző Pataki, Norbert NEM RÉSZLETEZETT NEM RÉSZLETEZETT NEM RÉSZLETEZETT Szerző |
Kapcsolódó URL-ek: | |
Kulcsszavak: | C++, static analysis, iterator, Clang |
Nyelv: | angol |
Kötetszám: | 59. |
DOI azonosító: | 10.33039/ami.2023.08.006 |
ISSN: | 1787-6117 (Online) |
Felhasználó: | Tibor Gál |
Dátum: | 11 Aug 2023 05:59 |
Utolsó módosítás: | 15 Dec 2023 07:58 |
URI: | http://publikacio.uni-eszterhazy.hu/id/eprint/7703 |
Tétel nézet |