forked from LibreOffice/core
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Delete the "Any-to-Any" template specializations for LIBO_INTERNAL_ONLY
i.e., css::uno::Any function template specializations Any::has<Any>() const Any::get(Any const &) const operator >>=(Any const &, Any &) operator <<=(Any &, Any const &) that don't make much sense (the first is always true, the rest can be replaced with operator =, which additionally supports move semantics). For 3rd-party compatibility, do this only for LIBO_INTERNAL_ONLY, however. However, some generic template code did benefit from operator >>= working also for Any, so make up for that with a new (LIBO_INTERNAL_ONLY, given that operator >>= still covers if fine for !LIBO_INTERNAL_ONLY) fromAny, complementing the existing toAny. Change-Id: I8b1b5f803f0b909808159916366d53c948206a88 Reviewed-on: https://gerrit.libreoffice.org/30022 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
- Loading branch information
1 parent
05d175a
commit bd614b9
Showing
15 changed files
with
166 additions
and
93 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- | ||
# | ||
# This file is part of the LibreOffice project. | ||
# | ||
# This Source Code Form is subject to the terms of the Mozilla Public | ||
# License, v. 2.0. If a copy of the MPL was not distributed with this | ||
# file, You can obtain one at http://mozilla.org/MPL/2.0/. | ||
# | ||
|
||
$(eval $(call gb_CppunitTest_CppunitTest,cppu_any-external)) | ||
|
||
$(eval $(call gb_CppunitTest_add_exception_objects,cppu_any-external, \ | ||
cppu/qa/any-external \ | ||
)) | ||
|
||
$(eval $(call gb_CppunitTest_set_external_code,cppu_any-external)) | ||
|
||
$(eval $(call gb_CppunitTest_use_libraries,cppu_any-external, \ | ||
cppu \ | ||
sal \ | ||
$(gb_UWINAPI) \ | ||
)) | ||
|
||
$(eval $(call gb_CppunitTest_use_udk_api,cppu_any-external)) | ||
|
||
# vim: set noet sw=4 ts=4: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ | ||
/* | ||
* This file is part of the LibreOffice project. | ||
* | ||
* This Source Code Form is subject to the terms of the Mozilla Public | ||
* License, v. 2.0. If a copy of the MPL was not distributed with this | ||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. | ||
*/ | ||
|
||
#include <sal/config.h> | ||
|
||
#include <cppunit/TestAssert.h> | ||
#include <cppunit/TestFixture.h> | ||
#include <cppunit/extensions/HelperMacros.h> | ||
#include <cppunit/plugin/TestPlugIn.h> | ||
|
||
#include <com/sun/star/uno/Any.hxx> | ||
#include <sal/types.h> | ||
|
||
namespace { | ||
|
||
class Test: public CppUnit::TestFixture { | ||
private: | ||
CPPUNIT_TEST_SUITE(Test); | ||
CPPUNIT_TEST(testGet); | ||
CPPUNIT_TEST(testHas); | ||
CPPUNIT_TEST(testExtract); | ||
CPPUNIT_TEST(testInsert); | ||
CPPUNIT_TEST_SUITE_END(); | ||
|
||
void testGet() { | ||
css::uno::Any a(false); | ||
CPPUNIT_ASSERT_EQUAL(a, a.get<css::uno::Any>()); | ||
CPPUNIT_ASSERT_EQUAL(false, a.get<bool>()); | ||
} | ||
|
||
void testHas() { | ||
css::uno::Any a(false); | ||
CPPUNIT_ASSERT_EQUAL(true, a.has<css::uno::Any>()); | ||
CPPUNIT_ASSERT_EQUAL(true, a.has<bool>()); | ||
} | ||
|
||
void testExtract() { | ||
css::uno::Any a1(false); | ||
css::uno::Any a2; | ||
CPPUNIT_ASSERT(a1 >>= a2); | ||
CPPUNIT_ASSERT_EQUAL(a1, a2); | ||
} | ||
|
||
void testInsert() { | ||
css::uno::Any a; | ||
a <<= css::uno::Any(false); | ||
CPPUNIT_ASSERT_EQUAL(css::uno::Any(false), a); | ||
} | ||
}; | ||
|
||
CPPUNIT_TEST_SUITE_REGISTRATION(Test); | ||
|
||
} | ||
|
||
CPPUNIT_PLUGIN_IMPLEMENT(); | ||
|
||
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.