summaryrefslogtreecommitdiffstats
path: root/unoidl
Commit message (Collapse)AuthorAgeFilesLines
* Allow starts-/endsWith* to also return the rest of the matched stringStephan Bergmann2013-10-153-9/+4
| | | | | | | | | | | | | | ...as there are many cases where the code later wants to obtain this part, and esp. for the string literal variants it is awkward to calculate the length of the literal again if this is coded with a following copy() call. Adapt some code to use this new feature. (Strictly speaking, the @since tags for the---backwards-compatibly---modified functions are no longer accurate of course. Also, clean up some sal_Bool and SAL_THROWS(()) that are unnecesssary cargo-cult here, and where the clean-up should have no practical compatibility consequences.) Change-Id: I43e5c578c8c4b44cb47fd08f170b5c69322ad641
* Silence some false Covertiy scan warnings about uninitialized membersStephan Bergmann2013-10-102-6/+17
| | | | Change-Id: I5e1d870a60f4c0d4b805c615d0e3c958e856bf8c
* Make changes of interface method parameter names a hard failureStephan Bergmann2013-10-101-1/+2
| | | | | | | ...instead of a warning, now that all the deliberate changes have been addressed. Change-Id: I6075a36a560bd68826c6840992eefb8f51b939ba
* keep C++03 compilers happyStephan Bergmann2013-09-201-2/+2
| | | | Change-Id: I62af395105f51e802b874424b993dcf7e687a78b
* Reject "too similar" service constructorsStephan Bergmann2013-09-203-18/+112
| | | | Change-Id: Ie81e9994084b5a2f44a436c764318ea6e5049faf
* Certain UNOIDL typedefs are forbidden for historic reasonsStephan Bergmann2013-09-201-1/+16
| | | | Change-Id: I0fb4ca4e529f5f35e3619bab5e89348dd9c67faf
* Directly build UNOIDL .rdb files from .idl filesStephan Bergmann2013-09-191-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ...via unoidl-write and the new source-format registry provicers, instead of using idlc to produce .urd files, regmerge to merge them into legacy .rdb files, and unoidl-write to translate those to new UNOIDL .rdb files. gb_UnoApi and gb_InternalUnoApi ctors take an additional argument now that is the path (below $(SRCDIR)) of the source-format registry from which to obtain UNOIDL entity definitions. It can either be an .idl file (in which case no *_add_idlfiles calls should be used and the resulting .rdb will contain all the entities from that one .idl file; used in some tests to conveniently define all test-specific entities in a single file) or a directory denoting the root of an .idl file tree (in which case *_add_idlfiles calls specify the entites to include in the resulting .idl file). (In the first case, the generated .rdb file needs to depend on that single .idl file, so the gb_UnoApiTarget ctor contains a dependency on that additional argument, which happens, as a side effect, to trigger rebuilds in the second, tree-based case when addition/removal of .idl files in the tree causes updates of directory time-stamps.) UnoApiPartTarget and all the dependency-tracking logic based on .urd files in solenv/gbuild/UnoApiTarget.mk is gone. Generation of an .rdb file now depends on its source registry (see previous paragraph) and all the .idl files specified with *_add_idlfiles (in the second, tree-based case above). A consequence of that is that gb_UnoApi_add_idlfile, -_nohdl, and -_noheader all do the same now. I left them in for now anyway, maybe they become relevant again when the use of cppumaker is changed to read directly from a source-format registry instead of going via a .rdb registry. The legacy tools idlc, regcompare, regmerge, and regview are still contained in the URE or SDK for now. cb344cd59e1ddb7c6db66dbd9263b4755969d4ba "Revert 'Looks like idlc resolved typedefs inside sequence<...>'" is re-reverted as now "the current offapi.rdb is generated via unoidl-write instead of idlc." Change-Id: I3d9d92f17326bc9f49dd934c85aab6a17951d06d
* Update unoidl/READMEStephan Bergmann2013-09-191-18/+35
| | | | Change-Id: Ib4cc138ab4c6de0d3d3a8ad55e40ba9ca30c15ae
* Fix indentationStephan Bergmann2013-09-191-39/+38
| | | | Change-Id: I7814547ef29ec728a5a815196427b661bf285256
* -Werror,-Wunused-parameterStephan Bergmann2013-09-191-0/+1
| | | | Change-Id: I331d769132d3b18c870c70c7abcbd9539135af55
* Prevent conflicts on case-preserving file systemsStephan Bergmann2013-09-191-6/+67
| | | | Change-Id: Ia40f0ce43086fd73cba60011001640a945fb3e26
* Handle special case -(2^63) correctlyStephan Bergmann2013-09-191-8/+12
| | | | Change-Id: Ia3d8931341b2d47ef76265d94410d83f51a068c0
* typoStephan Bergmann2013-09-191-1/+1
| | | | Change-Id: I79660ddd3ec9f78452fa484b33a9720cbf8ddc80
* New unoidl-check tool to replace regcompareStephan Bergmann2013-09-183-0/+945
| | | | | | | | | | | | | | | | ...for checking compatibility with the reference rdbs. unoidl-check is no longer based on the legacy registry format, but can process all the various new UNOIDL registry formats. regcompare is still included in the SDK for now. (gb_UnoApi[Target]_set_reference_rdbfile now takes a non-empty sequence of rdb files, any necessary dependencies of the final rdf file preceding it just like it is required on the unoidl-check command line. Also, executing the unoidl-check now properly depends on those rdb files.) TODO: unoidl-check is too conservative for now and flags some changes as incompatible that are not. Change-Id: I92e4c69403c5e3fcb31707c98c65a2f509592dd4
* Unpublished optional bases of published interfaces complicate thingsStephan Bergmann2013-09-181-9/+40
| | | | Change-Id: I206b623fcc3c9e04fc5336cb3704315c44fb83b8
* Some fixes of the generated .idl outputStephan Bergmann2013-09-181-15/+19
| | | | Change-Id: I2d71e148f302ebfbf8d0fbfc74a7fb523b7bfcd4
* -WshadowStephan Bergmann2013-09-181-2/+2
| | | | Change-Id: I8299079b46be4ccb7070f5497d089166a953c939
* Executable_unoidl-read needed only for DESKTOP platformsTor Lillqvist2013-09-181-1/+2
| | | | Change-Id: Id1edf4fcebfe0d839162adb442695e9ce39e3f75
* Missing includeStephan Bergmann2013-09-171-0/+1
| | | | Change-Id: I93d35ca7b784fc6d1b228347053ef0f76904f039
* Clean up includesStephan Bergmann2013-09-171-7/+2
| | | | Change-Id: I784ba245526f6fbf933ee485df1604e82980d931
* && vs. & typosStephan Bergmann2013-09-171-9/+9
| | | | Change-Id: I7475114158d64b8dbe64cd9d1de3415454c762f4
* New unoidl-read tool to translate registries into readable .idl filesStephan Bergmann2013-09-173-0/+1135
| | | | Change-Id: Ibd6ce23d2698280105469fb75c4afa225dc237ee
* Fix usage messageStephan Bergmann2013-09-171-9/+9
| | | | Change-Id: I7d8b196d047b1e0075acdbf380a9b3ed750a7b90
* Fix build with Bison 3Khaled Hosny2013-09-171-1/+1
| | | | | | | | | The Bison 3 generated sources do not seem to define YYID, so our YYLLOC_DEFAULT definition was broken. No idea what any of this means, but sberg said I can safely remove the YYID usage, so if it kills your pet, you know whom to blame. Change-Id: I464564be941e0a49da264057923bf8e8e82d5ffd
* -Werror=shadowJulien Nabet2013-09-171-3/+3
| | | | Change-Id: Ia344d5a68118ba9896672ebbf4cccaf0511f8186
* WIP: additional unoidl::Provider that directly reads a single .idl fileStephan Bergmann2013-09-174-0/+191
| | | | Change-Id: Iab795a34a657cb36ced24a1a05f6c21a6c1637aa
* Rename SourceProvider -> SourceTreeProviderStephan Bergmann2013-09-174-13/+15
| | | | Change-Id: Ic864f9c6f3dbbe9f75bdae76818c00f62825182d
* Move full file parsing logic to sourceprovider-parser.yStephan Bergmann2013-09-174-103/+107
| | | | | | ...in preparation of SourceFile- vs. -TreeProvider. Change-Id: I4c8f37ade1ba26cb7b38f63211711613d1b98a73
* Detect reuse of module names for other entitiesStephan Bergmann2013-09-172-5/+39
| | | | Change-Id: Ifc8d95b4b15a7dd91195e6f727fdb7fa2a267be9
* Clean up the unoidl Providers (no need to have them exported)Stephan Bergmann2013-09-167-70/+189
| | | | Change-Id: I96b99e96b44f12b7ad7f376e4b3a68d7e9531643
* Replace reg2unoidl with unoidl-writeStephan Bergmann2013-09-165-150/+315
| | | | | | | ...that can also generate an .rdb containing a specific set of entities, intended to replace idlc (when reading directly from .idl source registries). Change-Id: I630ce4640828979d7952dc24dbbef80a42a8140a
* Hook SourceProvider into unoidl::loadProviderStephan Bergmann2013-09-161-0/+12
| | | | Change-Id: I0a499fd98a1008ced0efdeec3b10bff30df57c0e
* WaE: C4805: '!=' : unsafe mix of type 'bool' and type 'sal_Bool' in operationTor Lillqvist2013-09-121-3/+3
| | | | Change-Id: I3fd7508a3b9c362661ad1bfa66901be9f938b8e6
* Fix C++11'ismStephan Bergmann2013-09-121-2/+2
| | | | Change-Id: Ia2ecbbc9262b4e2b794914030f88e1c9d792cb5e
* WIP: additional unoidl::Provider that directly reads from .idl filesStephan Bergmann2013-09-126-0/+4487
| | | | Change-Id: I30fa6400724f4ca6f0e1986c741500f05710b840
* fdo#65589: Treat legacy types.rdb w/o /UCR key as emptyStephan Bergmann2013-07-091-12/+20
| | | | | | ...as they are encountered in the wild. Change-Id: Iae46d3b4b4aca18a09680caabc0e343f8a534989
* fdo#60724 change spelling error REMOVEABLE -> REMOVABLE IIThomas Arnhold2013-05-291-1/+1
| | | | | Change-Id: I0057b9174af6a83f3fde0e27c3a91a4aeca95873 Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
* Support for annotations in the new UNOIDL formatStephan Bergmann2013-05-164-263/+651
| | | | | | | | | | ...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
* Minor improvements to UNOIDL binary formatStephan Bergmann2013-05-083-4/+19
| | | | Change-Id: Ia215b34842ce85bfbd1ad90a286abcbae0884bd5
* unoidl/README improvementsStephan Bergmann2013-05-081-8/+39
| | | | Change-Id: I5123d984f8f9bf49f5d1ad8e8decebfaaa6e7769
* unoidl/READMEStephan Bergmann2013-05-082-173/+192
| | | | Change-Id: Ied31816571842118eb00de96df82ecb06465a65d
* Copy/paste errorStephan Bergmann2013-04-241-4/+4
| | | | Change-Id: I0c6e0ecc5c9e6289a2afe733d4752351416900a8
* gbuild: drop uses of removed packagesDavid Tardon2013-04-241-2/+0
| | | | | | | Change-Id: I400fad08c0ae7b6b34bad63693f54856867e4dac Reviewed-on: https://gerrit.libreoffice.org/3502 Reviewed-by: David Tardon <dtardon@redhat.com> Tested-by: David Tardon <dtardon@redhat.com>
* execute move of global headersBjoern Michaelsen2013-04-237-820/+0
| | | | | | | see https://gerrit.libreoffice.org/#/c/3367/ and Change-Id: I00c96fa77d04b33a6f8c8cd3490dfcd9bdc9e84a for details Change-Id: I199a75bc4042af20817265d5ef85b1134a96ff5a
* Revert "Revert "WIP: Experimental new binary type.rdb format""Stephan Bergmann2013-04-222-1/+6
| | | | | | | | | | | | | | | This reverts commit 67e69a55820f50973ca0de75ccab2bb07d0bada8, applying a band- aid fix to cli_ure/source/climaker for now. Conflicts: stoc/inc/bootstrapservices.hxx stoc/source/tdmanager/lrucache.hxx stoc/source/tdmanager/tdmgr.cxx stoc/source/tdmanager/tdmgr_common.hxx stoc/source/tdmanager/tdmgr_tdenumeration.cxx stoc/source/tdmanager/tdmgr_tdenumeration.hxx Change-Id: Iae669985d0194f06fa349a4a39f0ebd230bc5d28
* [API CHANGE] WIP: Experimental new binary type.rdb formatStephan Bergmann2013-04-092-91/+158
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make cppumaker work on top of unoidl/ instead of registry/, as a first step to change all the various codemakers. * API CHANGE: cppumaker no longer supports the -B switch, as that is meaningless with the new format. When reading from an old-format .rdb file, /UCR is hard-coded as the prefix now. * TODO: The new format does not yet support deprecation annotations, so the generated .hdl/.hpp files lack any SAL_DEPRECATED_INTERNALs for now. * codemaker/typemanager.hxx is extended with access to unoidl/ functionality, so the various codemakers can use registry/ and unoidl/ in parallel for now. The access to registry/ functionality will be removed. (Added small throwaway helper functions u2b/b2u to easily map between OString and OUString at the remaining seams for now.) * Includes a selective revert of ba044b1e9613ed30906a9a540b7da8392923e4e3 "remove needless forward rtl::OUString declarations" in those parts of codemaker, unodevtools, unoidl that were covered by this local work-in-progress patch; I would otherwise have hard a hard time re-applying it. * The generated .hdl/.hpp files are mostly unchanged, except for a few minor things: ** Any SAL_DEPRECATED_INTERNALs are missing (see above). ** In comprehensive getCppuType definitions, some members were erroneously classified as TypeCalss_UNKNOWN. ** In comprehensive getCppuType definitions, some unnecessary calls like ::cppu::UnoType< ::sal_Int32 >::get(); can be removed. ** For typedef sequence<X>, the .hdl file need not include X.hdl, but only needs to forward-declare it. ** Unnecessary includes for optional bases of interfaces can be removed. ** Some numbering of local variable names (sMethodName1, ...) has changed. Change-Id: Icad98f248ac15177337f1b4ab709a755a8af6238
* remove needless forward rtl::OUString declarationsLuboš Luňák2013-04-072-2/+0
| | | | Change-Id: I97d91a758dd82d64768d75c1d2ddd279de5f6034
* mass removal of rtl:: prefixes for O(U)String*Luboš Luňák2013-04-075-97/+97
| | | | | | | | Modules sal, salhelper, cppu, cppuhelper, codemaker (selectively) and odk have kept them, in order not to break external API (the automatic using declaration is LO-internal). Change-Id: I588fc9e0c45b914f824f91c0376980621d730f09
* Off-by-one errorStephan Bergmann2013-04-021-1/+1
| | | | Change-Id: I2abd81782baf421ff4e70b158709dbe6da5e14e3
* types.rdb format flags default service ctors as RT_MODE_TWOWAYStephan Bergmann2013-04-021-1/+1
| | | | Change-Id: I94bc12af1dde2139b86c8d6522b61d874933ed6d