summaryrefslogtreecommitdiff
path: root/unoidl/source/unoidlprovider.cxx
AgeCommit message (Collapse)Author
2024-04-26loplugin:ostr in codemaker,unoidlNoel Grandin
Change-Id: I75f5531023f31da029491ce4a078005eebbfe59e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166738 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2022-05-18clang-tidy modernize-pass-by-value in unoidlNoel Grandin
Change-Id: Ibeb6aa656d6ed8b8ba78e800c9e28ba63ec0ec40 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134521 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-17use reserve before filling some vectorsNoel Grandin
Change-Id: Ib2ae513de46b2a0c16101747540ba09a7cdfb018 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134481 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-22address review comments on "use more string in unoidl.."Noel Grandin
on commit 2d9291b9433c9645b0870525211f74bfb1151555 Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Thu Apr 21 12:53:15 2022 +0200 use more string_view in unoidl,codemaker Primarily reverting the findEntity call-chain to use OUString instead of std::u16string_view. Change-Id: Ib01b9473c859bba3791563df753823bbf0a87ce0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133302 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-21use more string_view in unoidl,codemakerNoel Grandin
Change-Id: Ibc0624a662c98ef1308a3bb0c7c082935a89a25c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133252 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-10use more string_viewNoel Grandin
found by tweaking the loplugin:stringview and making it whitelist getLength Change-Id: Ic15d3703d1fb07658e99e1db1c89e2fa5bc70c19 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132771 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-11loplugin:moveparam in unoidlNoel Grandin
Change-Id: Id3069cad0b118b5593bb7a0faa9d7e33e5bef168 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123353 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-02throw() -> noexcept, part 2/3: Automatic loplugin:noexcept rewriteStephan Bergmann
Change-Id: I076f16d0536b534abf0ced4d76051eadb4c0e033 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114949 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-11-30loplugin:stringviewparam include comparisons with string literalsNoel
Change-Id: I8ba1214500dddaf413c506a4b82f43d63cda804b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106559 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-11-12New loplugin:stringviewparamStephan Bergmann
...to "Find functions that take rtl::O[U]String parameters that can be generalized to take std::[u16]string_view instead." (Which in turn can avoid costly O[U]String constructions, see e.g. loplugin:stringview and subView.) Some of those functions' call sites, passing plain char string literals, needed to be adapted when converting them. Change-Id: I644ab546d7a0ce9e470ab9b3196e3e60d1e812bc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105622 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-15Revert "loplugin:constfields in unoidl"Noel Grandin
This reverts commit c04a8576f07cb837439959b8bdbb8b620684d508. Change-Id: Iefede980495d9d59ab3fa26e1ccfa85a58a5c206 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90520 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-31clang-tidy modernize-concat-nested-namespaceNoel Grandin
Change-Id: Iab35a8b85b3ba1df791c774f40b037f9420a071a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86708 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-06small optimisationsNoel Grandin
In UNOMemoryStream (a) let the vector use it's natural grow strategy, so we avoid extending the vector by only the small amount we need now. (b) don't throw the vector storage away on truncate, we might need it soon In unoidl/ reserve some vector capacities. Change-Id: I6668a679e689d46d311a9e11eb3d0bc3395f3b6e Reviewed-on: https://gerrit.libreoffice.org/75136 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-09-26loplugin:constfields in unoidlNoel Grandin
Change-Id: I8d13626322e419d5d21a8e364de446bb6804ffa6 Reviewed-on: https://gerrit.libreoffice.org/60982 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-09-17New loplugin:externalStephan Bergmann
...warning about (for now only) functions and variables with external linkage that likely don't need it. The problems with moving entities into unnamed namespacs and breaking ADL (as alluded to in comments in compilerplugins/clang/external.cxx) are illustrated by the fact that while struct S1 { int f() { return 0; } }; int f(S1 s) { return s.f(); } namespace N { struct S2: S1 { int f() { return 1; } }; int f(S2 s) { return s.f(); } } int main() { return f(N::S2()); } returns 1, both moving just the struct S2 into an nunnamed namespace, struct S1 { int f() { return 0; } }; int f(S1 s) { return s.f(); } namespace N { namespace { struct S2: S1 { int f() { return 1; } }; } int f(S2 s) { return s.f(); } } int main() { return f(N::S2()); } as well as moving just the function f overload into an unnamed namespace, struct S1 { int f() { return 0; } }; int f(S1 s) { return s.f(); } namespace N { struct S2: S1 { int f() { return 1; } }; namespace { int f(S2 s) { return s.f(); } } } int main() { return f(N::S2()); } would each change the program to return 0 instead. Change-Id: I4d09f7ac5e8f9bcd6e6bde4712608444b642265c Reviewed-on: https://gerrit.libreoffice.org/60539 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-10-23loplugin:includeform: unoidlStephan Bergmann
Change-Id: Ie5414c607ed9dcf8ebd3a37d150aa138dac3ad09
2017-10-23Fix typosAndrea Gelmini
Change-Id: Ia30f466d08a9366b527225bbc0965f85881c7431 Reviewed-on: https://gerrit.libreoffice.org/43714 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-02-10test coverity sanitizing in-source modellingCaolán McNamara
Change-Id: I31b1f021c414b26372c07a28c235bedb3e5a2b32
2016-09-13loplugin:override: No more need for the "MSVC dtor override" workaroundStephan Bergmann
The issue of 362d4f0cd4e50111edfae9d30c90602c37ed65a2 "Explicitly mark overriding destructors as 'virtual'" appears to no longer be a problem with MSVC 2013. (The little change in the rewriting code of compilerplugins/clang/override.cxx was necessary to prevent an endless loop when adding "override" to OOO_DLLPUBLIC_CHARTTOOLS virtual ~CloseableLifeTimeManager(); in chart2/source/inc/LifeTime.hxx, getting stuck in the leading OOO_DLLPUBLIC_CHARTTOOLS macro. Can't remember what that isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.) Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
2016-07-27loplugin:countusersofdefaultparams in tools..xmlsecurityNoel Grandin
find methods with default params with only zero or one call site Change-Id: Ie5b30f60e9fe00ba1acf0dfc79b005ded46f05a0 Reviewed-on: https://gerrit.libreoffice.org/27512 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-07loplugin:passstuffbyref also for {css::uno,rtl}::ReferenceStephan Bergmann
Change-Id: Iac3011e99956d1ebb288184fd93555973c76ccdc
2015-12-14Use emplace_backStephan Bergmann
Change-Id: I006e3c8f411b480917d9cfb9c4f3d082b79c833d
2015-11-10loplugin:nullptr (automatic rewrite)Stephan Bergmann
Change-Id: I7c8f90ae3cb496def3bee9a8a84974dd63478af3
2015-10-12Replace "SAL_OVERRIDE" with "override" in LIBO_INTERNAL_ONLY codeStephan Bergmann
Change-Id: I2ea407acd763ef2d7dae2d3b8f32525523ac8274
2015-03-09V801: Decreased performanceCaolán McNamara
Change-Id: Id8cd45d2844c121f63684734ab3546c24a1aab32
2014-11-19Check entity and type name syntaxStephan Bergmann
(For types, only checks their syntax, but not whether they semantically fit in a certain situation, e.g., "boolean" cannot be used as a base interface.) Change-Id: I12f617e74ca13ce2afcec8f611bfdb4912c62960
2014-11-19Check for recursive mapsStephan Bergmann
Change-Id: I50227c41c5b4c5c410939ddfa078b996b5804965
2014-11-18Avoid overflowStephan Bergmann
Change-Id: Ia80682aeb87225b9bde7398186e121b1d3bdc2ad
2014-11-18Check that UNOIDL enum has membersStephan Bergmann
Change-Id: I5b362ad374dad5fd4a79b8a7706defb749e25eb3
2014-11-18Avoid overflowStephan Bergmann
Change-Id: I4afe86dc29788a7b2d2d9c438f182726f80b1cbd
2014-04-29coverity#1210179 Uninitialized pointer fieldCaolán McNamara
Change-Id: I09534eab67c0ae38cd6965c3b63227d92b72c646
2014-03-26First batch of adding SAL_OVERRRIDE to overriding function declarationsStephan Bergmann
...mostly done with a rewriting Clang plugin, with just some manual tweaking necessary to fix poor macro usage. Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a
2013-09-16Clean up the unoidl Providers (no need to have them exported)Stephan Bergmann
Change-Id: I96b99e96b44f12b7ad7f376e4b3a68d7e9531643
2013-05-16Support for annotations in the new UNOIDL formatStephan Bergmann
...used for now to transport @deprecated information. Also, improve Idx-String (formerly Idx-Name, but also used for UTF-8 annotations now) format, using the 0x80000000 for the indirection rather than the base case. (And the README erroneously used "Offset of" Idx-String all over the place.) Change-Id: I7003b1558ab536a11a9af308f9b16a7ef8840792
2013-05-08Minor improvements to UNOIDL binary formatStephan Bergmann
Change-Id: Ia215b34842ce85bfbd1ad90a286abcbae0884bd5
2013-05-08unoidl/READMEStephan Bergmann
Change-Id: Ied31816571842118eb00de96df82ecb06465a65d
2013-03-01WIP: Experimental new binary type.rdb formatStephan Bergmann
Add LegacyProvider to read the old format (requires a provider Manager, to resolve singletons' bases, to decide whether they are interface- or service- based). Replace registry-based reg2bin with provider-based reg2unoidl. Change-Id: I5865e62308cc2d9c5439211ac803d84e93aab656
2013-02-25WIP: Experimental new binary type.rdb formatStephan Bergmann
Move unoidl functionality into a module of its own, as a prerequisite to use it in codemaker etc. (This is intended to ultimately remove modules store and registry, modulo backwards compatibility constraints.) Change-Id: If5274cbd3a595951e6cf7a9664bc542f01833f38