Aaron Seigo
fbde93c64f
give package a cache for found items; make the dptr implicitly shared
this drops a 100k loop of copies from ~2700ms to ~37ms and a 100k loop of copy-n-find from ~3900ms to ~40ms. the cache addition is predicated on the idea that lookups of the same files will be frequent enough to warrant the small amount of extra memory usage for the cache. if that does not hold in practice (though it appears to) then this will not be a gain and in fact be a small net loss for memory footprint the dptr change is predicated on the assumption that copies of Package will be frequent, and so must be low cost. this is known to be true. even if it wasn't, there is no down-side to this change. the upside are significant time and memory savings.
libplasma This directory contains the classes making up libplasma, which provides the core framework used by Plasma applications, such as the Plasma desktop shell and its components. This includes applet and extension definitions and loading, common GUI elements, data and service interaction, search system, etc. Domain specific sets of functionality, e.g. for network awareness or sensors, are not found here but as DataEngine, Service, Applet, Package, Wallpaper, ContainmentActions, Containment and other plugins. Commit Guidelines: * If your patch is not an obvious or trivial bug fix, have it peer reviewed by another Plasma developer; http://reviewboard.kde.org is your friend :) * All code MUST follow the kdelibs coding style, as found at: http://techbase.kde.org/Policies/Kdelibs_Coding_Style * All new public API MUST have apidox written before committing and must go through an API review with another Plasma developer. We have to maintain binary compatibility, remember! Unit tests are next to godliness. (Though as you can see, right now libplasma is hellbound.) Please refer to the Plasma website (http://plasma.kde.org) and Plasma wiki (http://techbase.kde.org/Projects/Plasma) for API documentation and design documents regarding this library.
Description
Languages
C++
63.9%
QML
29.4%
CMake
3.3%
Shell
1.3%
Python
1%
Other
1%