hi, Stephan,
Thank you very much for your explain! And I got it then. :)
hi, Kay,
As the task whether is a useful todo is somewhat controversial, I am not sure
we are going to do it or not.
http://wiki.services.openoffice.org/wiki/Uno/Todo/Clear_Separation_of_C_and_Cpp_and_Core_Components
If it is not useful to do at present, I think I'd better find another task of
the project to do.
Do you have any suggestion about this? Or what can do I for the project?
Thank you very much for all of your support!
Best regards,
Cynthia ^_^
2007-12-11
Stephan Bergmann wrote;
>Cynthia Qu wrote:
>> hi,Stephan,
>>
>> Happy holiday season! And thank you very much for your reply! :-)
>>
>> Stephan Bergmann wrote;
>>> First and foremost (even though you probably will not like to hear
>>> that), I personally think the "Clear Separation of C and Cpp and Core
>>> Components" thing is nothing we should waste our time with. (I know,
>>> Kay Ramme thinks differently, hence he put that on the todo list.) Too
>>> much potential to break existing client code, with only very little
>>> (IMO) to gain.
>> Yes? I thought anything put on "to do list" is need to do. But I am not sure
>> if it is assigned to me or not. And I am confussed about I need to keep on
>> doing it or not. :(
>
>I cannot really give you advice on this. As I said, whether or not this
> is a useful todo is somewhat controversial. (Sorry, I could have
>raised my concerns earlier in this thread; if I remember correctly I did
>bring this up in discussion with Xiuzhi a while ago, though.)
>
>>>> 3.I don't understand what has done in the fuction "_defaultConstructUnion"
>>>> :
>>>> ****************
>>>> inline void _defaultConstructUnion(
>>>> void * pMem,
>>>> typelib_TypeDescription * pTypeDescr )
>>>> SAL_THROW( () )
>>>> {
>>>> ::uno_type_constructData(
>>>> (char *)pMem + ((typelib_UnionTypeDescription
>>>> *)pTypeDescr)->nValueOffset,
>>>> ((typelib_UnionTypeDescription *)pTypeDescr)->pDefaultTypeRef );
>>>> *(sal_Int64 *)pMem = ((typelib_UnionTypeDescription
>>>> *)pTypeDescr)->nDefaultDiscriminant;
>>>> }
>>>> *******************
>>> At some places in the UNO code, there is provision for a union (aka sum)
>>> data type construct, which obviously was planned for at the beginning of
>>> UNO, but never implemented completely nor removed completely.
>> I am sorry, I am not sure what you mean about "aka sum". Is it "also known
>> as sum"? Why can't I find out "sum" key word in "cppu" module? Am I
>> misunderstand?
>
>Sorry, that probably confused more than it clarified: In some circles,
>"union" data types are called "sum" data types (google for "algebraic
>type systems" for further details).
>
>>>> 4.Can I just move out the code "class Enterable" in
>>>> cppu/inc/cppu/Enterable.hxx and put it into a file in
>>>> cppuhelper/inc/Enterable.hxx (new created in this folder), but keep the
>>>> other "extern "C" inline" stuff without moving?
>>> No. At compile time, client code expects #include "cppu/Enterable.hxx"
>>> to define class cppu::Enterable. We have a policy in place to not break
>>> (legal) client code, neither at compile time nor at runtime.
>> I am sorry. What does the "client code" refer to ? And as the "extern "C" "
>> stuffs are compiled with C compiler(I thought), then it should offer C APIs,
>> why is it dependent on C++ at runtime ? How to know the "policy" you refered
>> above, could you give me some reference or explain? And do you know how to
>> make dependency against C++ is only at compile time to use the C++ compiler,
>> but nothing at runtime?
>
>"Client code" is any code external to the URE that uses the URE.
>
>I am not sure we have our compatibility policy written down somewhere
>explicitly, but the idea is simple: Do not change the URE's published
>interface in any way that makes existing, legal (i.e., only relying on
>the published interface) code fail, either at compile or a runtime.
>
>> Awaiting for your earliest reply!
>> May you and your family have a bright Christmas!
>
>Have a nice time, too.
>-Stephan
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
----------------
Welcome to China!
Beijing Redflag CH2000 Software Co., Ltd. China
http://www.redflag2000.com.cn/english/index.htm
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]