Fold InternalUnoApi_embindtest into UnoApi_udkapi
80d3f33876 "Library_embindtest should use
comprehensive InternalUnoApi_embindtest" was an attempt at making type
information about that library available at runtime. Which worked for cases
where code directly called one of the types' cppu_detail_getUnoType function.
But it would still fail for cases where code indirectly wants to obtain one of
the types' information by type name---which is what upcoming code will do that
changes the Embind'ing of UNO sequences.
So InternalUnoApi_embindtest would need to become a UnoApi_embindtest whose
instdir/program/types/embindtest.rdb would be available at runtime. But I'm too
dumb to convince gbuild to create that new UnoApi_embindtest. So instead just
tack the embindtest UNOIDL entities onto the existing UnoApi_udkapi for the
EMSCRIPTEN-ENABLE_DBGUTIL case. (Which requires that the single embindtest.idl
is split into individual per-entity files, sigh.)
Change-Id: Ie189b17213ac5b2de7a61ac5f97a143fa097337f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164057
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
This commit is contained in:
@@ -520,6 +520,16 @@ $(eval $(call gb_UnoApi_add_idlfiles,udkapi,com/sun/star/util,\
|
||||
XVeto \
|
||||
))
|
||||
|
||||
ifeq ($(OS)-$(ENABLE_DBGUTIL),EMSCRIPTEN-TRUE)
|
||||
$(eval $(call gb_UnoApi_add_idlfiles,udkapi,org/libreoffice/embindtest, \
|
||||
Struct \
|
||||
XTest \
|
||||
))
|
||||
$(eval $(call gb_UnoApi_add_idlfiles_nohdl,udkapi,org/libreoffice/embindtest, \
|
||||
Test \
|
||||
))
|
||||
endif
|
||||
|
||||
$(eval $(call gb_UnoApi_set_reference_rdbfile,udkapi,$(SRCDIR)/udkapi/type_reference/udkapi.idl))
|
||||
|
||||
# vim: set noet sw=4 ts=4:
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
|
||||
/*
|
||||
* 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/.
|
||||
*/
|
||||
|
||||
module org { module libreoffice { module embindtest {
|
||||
|
||||
struct Struct {
|
||||
long m1;
|
||||
double m2;
|
||||
string m3;
|
||||
};
|
||||
|
||||
}; }; };
|
||||
|
||||
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
|
||||
@@ -0,0 +1,16 @@
|
||||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
|
||||
/*
|
||||
* 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/.
|
||||
*/
|
||||
|
||||
module org { module libreoffice { module embindtest {
|
||||
|
||||
singleton Test: XTest;
|
||||
|
||||
}; }; };
|
||||
|
||||
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
|
||||
@@ -0,0 +1,71 @@
|
||||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
|
||||
/*
|
||||
* 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/.
|
||||
*/
|
||||
|
||||
module org { module libreoffice { module embindtest {
|
||||
|
||||
interface XTest {
|
||||
boolean getBoolean();
|
||||
boolean isBoolean([in] boolean value);
|
||||
byte getByte();
|
||||
boolean isByte([in] byte value);
|
||||
short getShort();
|
||||
boolean isShort([in] short value);
|
||||
unsigned short getUnsignedShort();
|
||||
boolean isUnsignedShort([in] unsigned short value);
|
||||
long getLong();
|
||||
boolean isLong([in] long value);
|
||||
unsigned long getUnsignedLong();
|
||||
boolean isUnsignedLong([in] unsigned long value);
|
||||
hyper getHyper();
|
||||
boolean isHyper([in] hyper value);
|
||||
unsigned hyper getUnsignedHyper();
|
||||
boolean isUnsignedHyper([in] unsigned hyper value);
|
||||
float getFloat();
|
||||
boolean isFloat([in] float value);
|
||||
double getDouble();
|
||||
boolean isDouble([in] double value);
|
||||
char getChar();
|
||||
boolean isChar([in] char value);
|
||||
string getString();
|
||||
boolean isString([in] string value);
|
||||
Struct getStruct();
|
||||
boolean isStruct([in] Struct value);
|
||||
sequence<boolean> getSequenceBoolean();
|
||||
boolean isSequenceBoolean([in] sequence<boolean> value);
|
||||
sequence<byte> getSequenceByte();
|
||||
boolean isSequenceByte([in] sequence<byte> value);
|
||||
sequence<short> getSequenceShort();
|
||||
boolean isSequenceShort([in] sequence<short> value);
|
||||
sequence<unsigned short> getSequenceUnsignedShort();
|
||||
boolean isSequenceUnsignedShort([in] sequence<unsigned short> value);
|
||||
sequence<long> getSequenceLong();
|
||||
boolean isSequenceLong([in] sequence<long> value);
|
||||
sequence<unsigned long> getSequenceUnsignedLong();
|
||||
boolean isSequenceUnsignedLong([in] sequence<unsigned long> value);
|
||||
sequence<hyper> getSequenceHyper();
|
||||
boolean isSequenceHyper([in] sequence<hyper> value);
|
||||
sequence<unsigned hyper> getSequenceUnsignedHyper();
|
||||
boolean isSequenceUnsignedHyper([in] sequence<unsigned hyper> value);
|
||||
sequence<float> getSequenceFloat();
|
||||
boolean isSequenceFloat([in] sequence<float> value);
|
||||
sequence<double> getSequenceDouble();
|
||||
boolean isSequenceDouble([in] sequence<double> value);
|
||||
sequence<char> getSequenceChar();
|
||||
boolean isSequenceChar([in] sequence<char> value);
|
||||
sequence<string> getSequenceString();
|
||||
boolean isSequenceString([in] sequence<string> value);
|
||||
sequence<sequence<string> > getSequenceSequenceString();
|
||||
boolean isSequenceSequenceString([in] sequence<sequence<string> > value);
|
||||
sequence<Struct> getSequenceStruct();
|
||||
boolean isSequenceStruct([in] sequence<Struct> value);
|
||||
};
|
||||
|
||||
}; }; };
|
||||
|
||||
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
|
||||
Reference in New Issue
Block a user